1.编码
解码工具
http://www.mxcz.net/tools/Hex.aspx
字符集
UTF-8、UTF-7、GB2312、GBK等
16进制码
以 \x 开头
ASCII
0-9 : 45-57
A-Z :65-90
a-z :97-122
URL编码(百分号编码):
是统一资源定位(URL)编码方式。URL地址(常说网址)规定了常用的数字,字母可以直接使用,另一批作为特殊用户字符也可以直接用(/,:@等),剩下的其他所有字符必须通过%xx编码处理。
base家族编码
base16 / base32 / base58 / base64 / base91 / base92 / base100
|
1.变异base
密文全是大写(小写),逐位换小写(大写)字母测试,发现仍然有乱码,应该是某个位置的密文字符被大小写替换了
2.base64:
- 由(A-Z,a-z“”=,0-9,+,/) 64个可见字符构成,"="符号用作后缀填充,tips:一般情况下密文尾部都会有两个等号。
- 编码原理:Base64把3个8位字节转化为4个6位字节,之后在6位的前面补两个0,形成8位一个字节的形式,再对应十进制,再查表
## 例子
源文本: T h e
对应ASCII码:84 1104 101
8位binary:01010100 01101000 01100101
6位binary:010101 000110 100001 100101
高位补0:00010101 00000110 00100001 00100101
对应十进制:21 6 33 37
查表:V G h l
|
3.Base32
编码是由字母A-Z、数字2-7共32个字符构成,“=”符号用作后缀填充。
4.Base16
编码是由字母A-F、数字0-9共16个可打印字符对任意字节数据进行编码,tips:不会出现“=”
5.Base58
是用于比特币中使用的一种独特的编码方式,主要用于产生比特币的地址
相比于Base64不使用数字 “0” ,字母大写 “O”,字母大写 “I”(小写i),字母大写 “L”(小写 "l"),以及 “+”、 “/” 符号。
6.Base62
编码,相比Base64去掉了 “+”、“/” 。
7.Base91
密文由0-9、a-z、A-Z、!、#、$、%、&、()、*、+、.、/、:、;、>、<、=、?、@、[]、^、_、'、{、|、}、~组成
8.Base92
比Base91多一个中文~。
9.Base100
特点就是一堆Emoji表情
对称密码
1.DES
看上去像一段加密值,用hash—identifier看是什么加密,在用John破解
2.DES-CBC
CBC模式下需要key和IV值,在线解密网址CyberChef
3.DES-OFB
希尔密码
运用基本矩阵原理的替换密码,将英文字母转换成二十六进制数字
九宫格密码
手机上收到的消息,一串数字
Rot13密码(synt{xx-xx-xx})
偏移的位数是13,就是Rot13加密
夏多密码
培根密码(替换密码)
看字符串中有没重复的字符是多少的倍数
当铺密码
是利用中文和数字进行转换的密码,算法是当前汉字的笔画出头数量就是这个汉字代表的数字
摩尔斯电码(Morse Code)
主要由以下5种代码组成:
(1)点( . )
(2)划( - )
(3)每个字符简单的停顿(通常用空格表示停顿)
(4)每个词之间中等的停顿(通常用 / 划分)
(5)以及句子之间长的停顿
|
Brainfuck编码
由:>、<、+、-、.、,、[、]组成
Unicode编码
以 \u、\u+、&#x、&# 开头
HTML编码
HTML编码中不能使用<、>符号因为浏览器会误认为他们标签
&#
MD5
固定32位,填充用1
Rabbit加密
Rabbit加密是什么 Rabbit 是一种高速流密码,于 2003 年在 FSE 研讨会上首次提出。 Rabbit 使用一个 128 位密钥和一个 64 位初始化向量。 该加密算法的核心组件是一个位流生成器,该流生成器每次迭代都会加密 128 个消息位。
Quoted-printale
可译为“可打印字符引用编码”、“使用可打印字符的编码”,我们收邮件,查看信件原始信息,经常会看到这种类型的编码!
shellcode
shellcode是一段用于利用软件漏洞而执行的代码,shellcode为16进制的机器码,因为经常让攻击者获得shell而得名,shellcode常使用机器语言编写。课在暂存器eip溢出后,塞入一段可以让CPU执行的shellcode机器码,让电脑可以执行攻击者的任意指令。
XXencode编码
XXencode将输入文本以每三个字节为单位,如果最后剩下的资料少于三个字节,不够的部分用0补齐,这三个字节共有24个Bit,以6bit为单位分为4个组,每个组以十进制来表示所出现的数值只会落在0到63之间。以所对应值的位置字符代替。它所选择的可打印字符一共64个字符。跟base64打印字符相比,就是XXencode多一个 “ - ”,少一个 “ / ”
UUencode编码(都是不常见字符)
UUencode是一种二进制到文字的编码,最早在unix邮件系统中使用,全称:Unix-to-Unix encoding,UUencode将输入文本以每三个字节为单位进行编码,如果最后剩下的资料少于三个字节,不够的部分用0补齐,三个字节共有24个bit,以6-bit为单位分为4个组,每个组以十进制来表示所出现的字节的数值。这个数值只会在0-63之间,然后将每个数加上32,所产生的结果刚好落在ASCII字符集中已打印字符(32-空白 ,95-底线)的分为之间
tips:XXencode编码和UUencode编码的区别在于XXencode编码不会有特殊字符。
aaencode编码
可以将JS代码转换成常用的网络表情,也就是我们说的颜文字js加密
JSfuck
JSfuck只使用6种字符[]!()+来书写任何JavaScript代码
jother
jother只使用8种字符[]!()+{},与JSfuck相比,多了{}。
Brainfuck
Brainfuck使用8种字符<>+-.,[]组合来完成
Ook
全是使用Ook为前缀的代码组合
敲击码
敲击码(Tap code)是一种以非常简单的方式对文本信息进行编码的方法,敲击码是基于5×5方格波利比奥斯方阵来实现,k字母被整合到c中
用点和间隔来表示
社会主义核心价值观
特征:字符全都是社会主义核心价值观。
与佛论禅
与熊论道
盲文
2.文件
在虚拟机中用file+文件名
在010、winhex等软件中通过添加、删除对文件头进行修改
用foremost、binwalk、dd等对文件进行分离
在Linux下用cat +合并文件名 > 输出文件
同时要检验MD5的值是否正确:md5sum + 文件名
3.隐写
将flag藏在文件中,放010等直接搜
silenteye:一般将文字或者文件隐藏到图片中
图片信息,在属性中(有时信息不全),在线搜exif(全)
-
GIF
- 不同帧信息隐藏
- 颜色通道隐藏
-
图片修复
- 脚本爆破高宽
- 图片头:010、winhex
- 图片尾:010、winhex
- CRC校验码修复:Tweakpng
-
LSB隐写
stegsolve(一帧一帧看)、zsteg(梭哈)
MP3tag:查看音频是否藏封面
Audacity:看频谱图等
DeepSound:查看是否有隐藏文件,一般需要密码
Qsstv:慢扫描电视
4.压缩包
-
伪加密
- zip无加密:都是00 00
- zip假加密:数据区是00 00,目录区是09 00
- zip真加密:数据区是09 00,目录区是09 00
-
暴力破解
-
ARCHPR
- 暴力破解
- 掩码攻击
- 明文攻击
- CRC值:压缩后的与压缩包中的一致
- 压缩算法一致
-
ziperello:解压压缩包中的加密文件
-
RAR文件格式错误
-
修复压缩包
-
zip修复
工具下载:http://forspeed.onlinedown.net/down/95222_20170619151215.zip
5.流量分析(wireshark)
paca数据包
1.从上到下读数据包
2.查找功能搜索关键字:
- 直接利用Ctrl + F 弹出的搜索框进行查询
- 依次进行分组列表
- 分组详情
- 分组字节流进行查询
6.取证
7.日志分析
系统日志分析
手段:爆破
window:搜索关键字(connect、accept、successful)

Linux:对比账户域和计算机,不同为入侵者登录

服务器日志分析
1.爆破:关键字:admin、login、logout
2.注入:关键字:and
3.未给任何提示:a、看日志分析攻击者的攻击思路、找从哪儿打进去的漏洞
b、快捷(看运气):一句话木马
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· TypeScript + Deepseek 打造卜卦网站:技术与玄学的结合
· Manus的开源复刻OpenManus初探
· AI 智能体引爆开源社区「GitHub 热点速览」
· 三行代码完成国际化适配,妙~啊~
· .NET Core 中如何实现缓存的预热?