Lesson 1
编码、字符¶
综合编码工具:CyberChef
base系列¶
base16¶
使用所有数字和大写字母A-F
base32¶
只使用数字2-7和所有大写字母,末尾补位的'=':0~6个
base58¶
没有0,O,小写L,大写i,+和/,不使用‘=’补位
BASE 62¶
使用所有字母和数字
BASE 64¶
使用所有字母和数字,及’+‘和’/‘,末尾会使用最多两个‘=’进行补位
BASE 85¶
使用所有字母和数字,以及 !#$%&()*+-;<=>?@^_`{|}~
BASE 100¶
全都是emoji
base64隐写¶
大段base64编码,解码后是与解题无关的段落,这时就要考虑base64隐写了。
原理如下:
解密代码网上很容易找到,这里就不说了。
brainfuck¶
一种计算机语言,只有八种符号,<>+-.,[]
Ook¶
全篇都是Ook
敲击码¶
密文的特征为1-5的两位一组的数字,编码的范围是A-Z字母字符集,字母不区分大小写。
中文电码¶
四位数一组编码
利用键盘¶
比如:
EWAZX RTY TGB IJN IO KL
在键盘上的形状是CTF
asdghjkl asdfghjk sdfghjkl asdfhjkl
对应键盘一行缺失的字母是flag
其他各种奇形怪状的¶
与佛论禅,新佛曰,核心价值观编码
offic文件如word¶
最简单的情况:只是把文字颜色改成了白色
或者是空格和tab的交替使用,这种情况下有的通过查找替换成1和0就能解决,有的则是snow隐写
如果什么都没有:查看是否显示隐藏文字
有字但是无关(不止在doc文件,任何文字都有可能):考虑零宽字符隐写。
pdf¶
文字藏在图片下,编辑移开图片。
PS打开看有没有多图层
文件结构¶
有时直接解压文件可能会有奇效。
用010editor打开查看
1 2 3 4 5 6 |
|
看有无多余信息,通常在末尾,可以搜索文本flag或者其他常见关键词。用binwalk分离文件,也可以手动。有时文件头可能会被修改,比如小写改大写等。
ZIP¶
伪加密¶
全局方式位标记 偶数无加密,奇数有加密。比如09 00有加密,00 00或14 00无加密。
压缩源文件数据区¶
50 4B 03 04:头文件标记
0A 00:解压文件所需 pkware 版本
00 00:全局方式位标记(通过此处判断有无加密),文件头标记后 2bytes 。
压缩源文件目录区¶
50 4B 01 02:目录中文件文件头标记
3F 00:压缩使用的 pkware 版本
0A 00:解压文件所需 pkware 版本
00 00:全局方式位标记(有无加密,伪加密的关键) 目录文件文件头标记后 4bytes 。
不知道密码的压缩包¶
用ARCHPR可以暴力破解,还有CRC爆破和已知明文爆破。
图片¶
图片后面藏东西比较多,先010editor打开看有没有,JPG比较常见的图片题改宽高,把flag藏在直接打开可见范围外。可以盲猜改回去也可以CRC爆破。
LSB隐写:修改RGB颜色分量的最低二进制位也就是最低有效位(LSB),而人类的眼睛不会注意到这前后的变化,每个像数可以携带3比特的信息。
常用工具:stegsolve
这个工具也能用来看GIF,不过我比较喜欢直接用PS打开时间轴看每帧图片。
GIF分帧提取出png图片后也可能存在LSB隐写。
二维码¶
常见的二维码是QR码,题里有切成碎块,缺失定位点,图片反相等简单加工,善用PS即可。
还有很多其他类型,手机扫码无法识别的二维码,比如:
Aztec码
Data Matrix
汉信码
还有其他的,遇到了自己探索。
音频¶
摩斯电码¶
自己听有点精神折磨,可以AU打开看频谱图,或者找在线识别的网站,有的准确率还可以。
DTMF电话音¶
听起来就像拨号,网上有识别工具。 00或14 00无加密。