附件是一个pdf文件,打开时报错,格式错误:不是一个PDF文件或该文件已损坏。
1.对比文件,发现是ROT13
用notepad++打开该文件,文件头为%CQS-1.5,打开一个正常pdf文件,文件头为%PDF-1.7。
这两个形式完全一样,数字可以理解为版本号。那就思路来了,估计是进行了位移?尝试后发现:
是对整个PDF文件进行了ROT13。
ROT13(回转13位,rotateby13places,有时中间加了个减号称作ROT-13)是一种简易的置换暗码。----《互动百科》
简单的说就是通过将输入的原字符串ASCII+13/或者ASCC-13:
原字符串:
ABCDEFGHIJKLM NOPQRSTUVWXYZ abcdefghijklm nopqrstuvwxyz
65 78 97 110
转换成:
NOPQRSTUVWXYZ ABCDEFGHIJKLM nopqrstuvwxyz abcdefghijklm
78 65 110 97
例如:输入 HELLO 会变成:URYYB
例如:输入 hello 会变成:uryyb
2.rot13解密
cat banana-princess.pdf | tr 'A-Za-z' 'N-ZA-Mn-za-m' > new.pdf
3.现在可以正常打开文件了,如下,发现flag被遮盖了。
4.将文件进行pdftohtml,可以看到原始未遮盖图片,flag为BITSCTF{save_the_kid}。
参考:
https://blog.csdn.net/dchua123/article/details/105185194
https://blog.csdn.net/qq_17046291/article/details/80306580