L-ctf是由xdsec办的ctf比赛,由学生出题
不得不说,dalao们是在是太强了Orz
又受到了深深的碾压。。。太懒了。国庆的比赛现在才来写
简单说下简单的android题
那题android题是很简单的混淆处理,对字符串进行变换,可在调试中直接看到变换后的值。
然后变换后的字符串做秘钥,对输入信息AES加密,与固定的byte[]比较,得出flag。
这里就说下让我学得比较多的一题吧~(因为别的题都没做出,有空要刷出来!!!)
这题名叫神奇的压缩文件,一个428k的压缩文件,解压出来只有一个19字节的txt文件。
此时,我就是尼克扬问号???
说实话,要不是题目提示(ntfs文件流),我tmd就卡在这一步了,再Orz下dalao们的知识面
简单来说,ntfs数据流就是可以在宿主文件背后关联数据流文件,这个宿主文件可以是各种普通文件。而winrar这个压缩程序还能压缩ntfs数据流。
因为网上介绍的文章已经很多,我就不赘述了。
[NTFS文件流的特性以及实现原理讨论]: http://www.cnblogs.com/nevergone/archive/2013/04/08/3009173.html
解压出来的txt内容是”Flag.zip behind me.”
在cmd可以用winrar访问misc150.txt:Flag.zip
打开Flag.zip
然后我第一想法就是先解压出来啦!
然而,直接解压会提示文件名、目录名或卷标语法不正确。
蛋痛……这应该是因为那个冒号的原因,于是我转为自解压格式,把文件名中的冒号去掉了,这才成功。
如你所见,压缩包中有Steins;Gate.zip
和Christina.jpg
两个文件,其中那个zip里是这样的
然后droste.zip里面包含着droste.zip和dorste.jpg,里面的droste.zip里又包含着droste.zip和dorste.jpg,里里面的droste.zip又又包含……………………无穷无尽!
google了下droste,意思就是图中图又包含图的内容那种,类似下面这图
所以……这个压缩包无穷无尽咯……
后来我网上搜到了droste.zip的原版压缩包,这个压缩包可以一直解压直到你的硬盘被占满!(害怕.jpg)
把这个压缩包下下来了,我二进制对比了下比赛中得到的droste.zip,发现一毛一样!
所以flag不在这咯,然后去看看Christina.jpg吧……
接着,我用了stegdetect、ps、google搜图、百度搜图……
毫无收获,甚至我还特意去了解了下命运石之门的剧情!(holy shit!)
还试了下什么鬼世界线变动率那个数……全部gg
啊喂!傻逼吗!后来看了writeup才知道怎么做
提示里明明都写明了flag不在压缩包里!
大家注意到一开始Flag.zip旁边xdsec的注释了吗?
hello和XDSEC中间有蜜汁的三行……
这三行……是很迷的tab和空格的组合
然后把tab变1,空格变0,得到01序列……
数了数,有98个,7个一组,正好分成14组……
转换成ascii码……(因为ascii码第一位都是0)
得到flag……
lctf{6d3677dd}
嗯……内心很凌乱……dalao们比我叼,脑洞还比我大……
还有另一种方法是通过Ultra edit等软件,查看包数据也能发现问题。在这一部分有规律的 0x09 , 0x20 ,将其提取出来,替换一下也能得到flag……
dalao……你们屌……
不过这样一来真的能学到很多,长很多见识!真是很棒的!
另外,我想去刷下命运石之门了2333333