CTF之隐写

0x01 PNG图片

PNG文件结构分析

https://my.oschina.net/ososchina/blog/801358

(1)用16进制编辑工具更改图片的高度,会只显示图片的一部分,下面的部分就被隐藏了,是个藏东西的好办法

找表示宽度和高度的位置的话,可以先看看图片的属性,得到宽高值,转成16进制,搜索16进制值就找到了

注:png图片的保存恢复效果比较好,jpg貌似有点问题

题目链接:http://pan.baidu.com/s/1qY8sxZI 密码:5xam

图片尺寸为500x420(宽x高)

00 00 00 0D 说明IHDR头块长为13

49 48 44 52 IHDR标识

00 00 01 F4 图像的宽,500像素

00 00 01 A4 图像的高,420像素

最后四位CB D6  DF  8 A为CRC校验

将图片的高改为500像素就拿到flag了

(2)初次遇见条形码。。。。



各种工具找,最后看了writeup才知道这马身上有条形码。。。。。

还是用画图工具拼接出来的完整条形码去扫描的,不会ps愁死人。。。。。

在线扫描https://online-barcode-reader.inliteresearch.com/

(3)烦人de皮卡丘

题目链接:http://pan.baidu.com/s/1i5IG3JZ 密码:lymw

不管是用binwalk还是stegsolve左右点都没有结果,在大佬这找到了答案http://blog.csdn.net/fuzz_nancheng/article/details/53384353?locationNum=4&fps=1

原理我也不懂啊。。。。。又找到相关文章http://www.tuicool.com/articles/qINzyum,有待理解。。。。

(3)双图

题目链接:http://pan.baidu.com/s/1pLiCMdd 密码:590r

拿过来图片先用binwalk分析一波,发现有两张图片,用winhex抠出来之后发现和第一张一样,第一张命名1.png,第二张2.png,用linux的compare命令比较一下,

compare 1.png 2.png diff.png,发现diff.png下面有红线,

用stegslove打开2.png选择image combiner

选择1.png这时候会做一个xor运算,保存图片为solved.bmp

winhex打开solved.bmp
,发现除了00就只有这里有东西了

记下地址之后把2.png用ps打开另存为2.bmp,再用winhex打开2.bmp找到刚刚记下的地址把16进制数据复制出来,写个脚本把其中的二进制数扣出来,00为0,01为1然后再把二进制转换成ascii码得到flag

(4)再遇双图

题目链接:http://pan.baidu.com/s/1qYtzZIG 密码:31bg

这次很直接,解压出来就是双图,用stegslove的image combiner

保存反色,再用stegslove对二维码变化一下,得到三张二维码,扫描结果是DES  6XaMMbM7
  和一长串字符,des加密,秘钥是6XaMMbM7,解密吧得到flag

(5)py的交易

题目链接:http://pan.baidu.com/s/1c2KmV1A 密码:2m3f

binwalk跑了一下除了很多的zlib什么也没发现,winhex打开看到了几个连续的pypypy。。。。。在一串常规的字符中看到了fireworks。。。



发现图层1被隐藏了,打开后发现了二维码

扫描得到一串16进制

03f30d0a3b8bed56630000000000。。。。。用winhex保存一下看到了CTF字样,

还有pyt。。file一下发现python 2.7 byte-compiled,应该是pyc了,用uncompyle解一下发现flag里有个变量key,那key就是py了。强行符合题目要求。。。

(6)盲水印攻击

这里是利用脚本及说明  https://github.com/chishaxie/BlindWaterMark

当用compare两张png之后发现不再是上面双图情况下的一条红线,而是很多条,就可以考虑一下是不是盲水印攻击了


(7)IDAT数据块隐藏

前面说过png的IHDR属性,在png中,大致分为四个大的数据块,IHDR数据块,PLTE数据块(调色板),IDAT数据块,IEND数据块(结尾标志),IDAT数据块在一个png图像中是可以存在多个的,但是好像正常情况下binwalk检测和插入了IDAT数据块后检测的结果是不一样的,,可以这样来辨IDAT是否有问题

比如这是正常的png图片,分析的结果是

这个图片也是有多个IDAT的块的,而在添加了一个IDAT块之后检测结果是这样


并且FFDA位置是第二个IDAT的起始位置。当把第一个IDAT块扣掉之后原图就会显露出来,

IDAT包含了四部分,第一部分是数据块长度(4位16进制),第二部分是IDAT标识符(4位16进制),第三部分是数据块,第四部分是CRC校验码(4位16进制)

00 00 FF A5(数据块长度为FFA5)

49 44 41 54 (IDAT标识符)

接下来是数据块,在FFA5长度的数据块之后是4位16进制的CRC校验码

并且合并过的IDAT的png图片用fireworks打开会提示格式错误,查看不了,ps就没有这个功能。。。。

0x02jpg图片

(1)图种

题目链接:http://pan.baidu.com/s/1c2L8euk 密码:4h6k

binwalk跑一下发现是两张图片

第二张图片的偏移量是158792,用winhex将第二张图片提取出来保存为jpg格式就是flag了

或者用foremost提取 foremost -v -i 2.jpg -o /root/aa     aa为空目录

(2)画图

题目链接:http://pan.baidu.com/s/1o7ZkGC6 密码:rmro


这里没有flag,用winhex打开发现图片后面有很多的数据


复制下来保存为txt文件用notepad++转换一下编码

这就是坐标了,这样来画图吧 转换成gnuplot能识别的格式


扫码得到flag

(3)妹子的默默

题目链接:http://pan.baidu.com/s/1c1YjjDA 密码:id5a

binwalk跑一下发现rar文件,但是加密了。。。。找了很久密码,看了大佬的writeup才知道密码是图片上的“喜欢我吗.”注意:密码是汉字不是拼音,解压出来是这个

第一个莫斯电码解码,得到一个网址,根据下面 的提示是AES加密,解密得到momoj2j.png访问http://c.bugku.com/momoj2j.png得到二维码

(4)F5隐写

链接:http://pan.baidu.com/s/1cnMYzs 密码:v0er

cd F5-steganography

java Extract 123456.jpg -p 123456

后会生成output.txt文件,里面就有flag了

0x03bmp格式图片隐写

题目链接:http://pan.baidu.com/s/1jIp82NG 密码:ikov

下载下来之后发现后缀是png,然而winhex打开发现并不是png头文件

file一下是bmp文件,用wbs43open来解密吧http://pan.baidu.com/s/1slc2YHR,


密码值为空


解出来用notepad打开就看到flag了

0x04流量分析

题目链接:http://pan.baidu.com/s/1mi3aWwK 密码:4fd9

(1)下载了一个pcapng的文件,用wireshark打开,过滤条件是http协议,发现了一句话的痕迹

在开始的时候发现

有flag.tar.gz

接下来的http里应该就有这个数据了,在最后一个包里发现

解一下压缩吧

其他

(1)遇到了一个exe文件,用notepad++打开发现是一串base64,直接把代码复制到在线base64转图片得到flag


题目链接:http://pan.baidu.com/s/1kUCWiNX 密码:xlui

在线转换  http://imgbase64.duoshitong.com/

(2)遇到一个宽带信息泄露的bin文件用routerpassview查看搜索username找到用户名就是flag

题目链接:http://pan.baidu.com/s/1pLbQzTT 密码:g1i9

(3)linux基本问题

题目链接:http://pan.baidu.com/s/1dFIivh3 密码:olcx

用notepad++打开发现flag.txt,用binwalk提取得到flag.txt

(4)onlyonefile

题目链接:http://pan.baidu.com/s/1geO9DHT 密码:nia7

下载之后先用binwalk跑了一下发现很多zip包,果断分解,发现文件夹里都是布置格式的文件但名字是有规律的,并且还有一个0.zip解压出来也没发现什么,用winhex打开第一个文件看到了PNG,猜想是png图片,但是结尾没有IEND,不完整,打开最后一个文件发现了IEND,题目又叫onefile,应该是图片分解了,于是linnux下cat outfile/* >1.png合成了png图片,但是依旧没有flag,binwalk发现图片后面好多zlib文件,找了很久,再用winhex查看发现了头文件不远处的Adobe Fireworks CS5,下载下来看起来和ps差不多。。。。。。打开图片后原来是两个图层,把第一张图片拉开再翻转一下二维码颜色得到flag了。

(5)再遇Adobe Fireworks CS5

题目链接:http://pan.baidu.com/s/1c3vzum 密码:n26x   题目名为IHDR

这次比较干脆,直接给了一个png文件,winhex打开一切正常,binwalk跑一下还是满大街的zlib包,也发现了Adobe Fireworks CS5字样,于是用Adobe Fireworks CS5打开,发现格式错误。。。。。回去看了看png文件格式,没毛病,那就只有crc没有检测是否正确了,给个crc抄袭的计算代码。链接:http://pan.baidu.com/s/1dFcQTu5 密码:ytxd  里面的数据替换为相应的HIDR Chunk,就得到正确的crc了,再次用Adobe Fireworks CS5打开flag就直接出来了

(6)这个应该属于杂项

题目链接:http://pan.baidu.com/s/1jIwZIFc 密码:bk62

file一下发现是data文件(跟没发现一样),扔到winhex里发现是这样

FF D8不就是jpg头文件,FF D9不就是jpg尾文件标志吗,原来是把16进制逆过来了 ,写个脚本再还原回来就好了 

f=open("1.reverseme","rb")

g=open("1.jpg","wb")

f.write(g.read()[::-1])

f.close()

g.close()


用ps旋转一下就好了

(7)加密的文档

题目链接:http://pan.baidu.com/s/1misRWU0 密码:b19t

下载得到一个zip压缩包,确实加密了。。。。可是题目没有给密码提示啊,伪加密?试试看,眼瞎的我没有看到在底部50 4B ,这个地方改成了09 00

还是找到writeup才回来找,不过看到了大神用010Editor,又get到一个新工具,并且看到未加密是这里是0,加密这里标志位就不是0了

别忘了第二行还有标志位。。。。

好了,改成0,成功解压出一个docx文档,

刚开始还以为是把flag字体和背景颜色设置一样了,结果没有。。。把图片拷出来也没找到。。。。又回来看大神的writeup,解压之后的docx文档还是藏着压缩包。。。。改成zip格式解压出来找到两张图片

吐了一升血。。。。。

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
  • 序言:七十年代末,一起剥皮案震惊了整个滨河市,随后出现的几起案子,更是在滨河造成了极大的恐慌,老刑警刘岩,带你破解...
    沈念sama阅读 158,560评论 4 361
  • 序言:滨河连续发生了三起死亡事件,死亡现场离奇诡异,居然都是意外死亡,警方通过查阅死者的电脑和手机,发现死者居然都...
    沈念sama阅读 67,104评论 1 291
  • 文/潘晓璐 我一进店门,熙熙楼的掌柜王于贵愁眉苦脸地迎上来,“玉大人,你说我怎么就摊上这事。” “怎么了?”我有些...
    开封第一讲书人阅读 108,297评论 0 243
  • 文/不坏的土叔 我叫张陵,是天一观的道长。 经常有香客问我,道长,这世上最难降的妖魔是什么? 我笑而不...
    开封第一讲书人阅读 43,869评论 0 204
  • 正文 为了忘掉前任,我火速办了婚礼,结果婚礼上,老公的妹妹穿的比我还像新娘。我一直安慰自己,他们只是感情好,可当我...
    茶点故事阅读 52,275评论 3 287
  • 文/花漫 我一把揭开白布。 她就那样静静地躺着,像睡着了一般。 火红的嫁衣衬着肌肤如雪。 梳的纹丝不乱的头发上,一...
    开封第一讲书人阅读 40,563评论 1 216
  • 那天,我揣着相机与录音,去河边找鬼。 笑死,一个胖子当着我的面吹牛,可吹牛的内容都是我干的。 我是一名探鬼主播,决...
    沈念sama阅读 31,833评论 2 312
  • 文/苍兰香墨 我猛地睁开眼,长吁一口气:“原来是场噩梦啊……” “哼!你这毒妇竟也来了?” 一声冷哼从身侧响起,我...
    开封第一讲书人阅读 30,543评论 0 197
  • 序言:老挝万荣一对情侣失踪,失踪者是张志新(化名)和其女友刘颖,没想到半个月后,有当地人在树林里发现了一具尸体,经...
    沈念sama阅读 34,245评论 1 241
  • 正文 独居荒郊野岭守林人离奇死亡,尸身上长有42处带血的脓包…… 初始之章·张勋 以下内容为张勋视角 年9月15日...
    茶点故事阅读 30,512评论 2 244
  • 正文 我和宋清朗相恋三年,在试婚纱的时候发现自己被绿了。 大学时的朋友给我发了我未婚夫和他白月光在一起吃饭的照片。...
    茶点故事阅读 32,011评论 1 258
  • 序言:一个原本活蹦乱跳的男人离奇死亡,死状恐怖,灵堂内的尸体忽然破棺而出,到底是诈尸还是另有隐情,我是刑警宁泽,带...
    沈念sama阅读 28,359评论 2 253
  • 正文 年R本政府宣布,位于F岛的核电站,受9级特大地震影响,放射性物质发生泄漏。R本人自食恶果不足惜,却给世界环境...
    茶点故事阅读 33,006评论 3 235
  • 文/蒙蒙 一、第九天 我趴在偏房一处隐蔽的房顶上张望。 院中可真热闹,春花似锦、人声如沸。这庄子的主人今日做“春日...
    开封第一讲书人阅读 26,062评论 0 8
  • 文/苍兰香墨 我抬头看了看天上的太阳。三九已至,却和暖如春,着一层夹袄步出监牢的瞬间,已是汗流浃背。 一阵脚步声响...
    开封第一讲书人阅读 26,825评论 0 194
  • 我被黑心中介骗来泰国打工, 没想到刚下飞机就差点儿被人妖公主榨干…… 1. 我叫王不留,地道东北人。 一个月前我还...
    沈念sama阅读 35,590评论 2 273
  • 正文 我出身青楼,却偏偏与公主长得像,于是被迫代替她去往敌国和亲。 传闻我的和亲对象是个残疾皇子,可洞房花烛夜当晚...
    茶点故事阅读 35,501评论 2 268

推荐阅读更多精彩内容

  • 1、历史 1)卡尔达诺栅格码:Spam Mimic使用了栅格密码。 纸币水印 隐形墨水 缩影术的间谍相机 2)一个...
    小小怪吃吃吃阅读 13,244评论 0 8
  • 这是一些学习资源,里面有Android的,iOS的,PHP的,大数据的,Java的,web前端的,C++,Pyth...
    青青青青阅读 3,241评论 2 24
  • 这是一些学习资源,里面有Android的,iOS的,PHP的,大数据的,Java的,web前端的,C++,Pyth...
    草蜢的逆袭阅读 4,969评论 1 50
  • 周末看了一部电影,《大空头》。这部电影最近获得了88届奥斯卡最佳改编剧本奖。 电影讲述了在次贷危机来临时,一批局外...
    徐清阅读 1,478评论 0 0
  • 前两天改掉睡前看手机的习惯,开始执行“21天早睡计划”,手机设置23点半自动关机,关机后一定不能再去开机。哪怕睡不...
    生生云阅读 295评论 0 0