第七章 让女神看到我的努力

通过十六进制编辑器打开下载好的图片,果不其然,在0x13C59地址处发现专属于ZIP压缩包文件的文件头标识504B03。

尾部标识正好在文件的最末尾处。

知道了图片内压缩包的起始和结束位置,秦淮直接通过十六进制编辑器自带的文件切割小工具,进行文件分割。

这是一个名为的压缩包,鼠标双击打开,预览界面显示有两个文件。

一个是python代码文件,还有一个文本文件。

在两个文件名的前面,有*号进行修饰着,说明这个压缩包还进行了密码加密。

即使之前秦淮从来没有参加过类似CTF的竞赛,但他也知道,如果这个压缩包的密码是需要通过跑字典的方式进行暴力拆解的话,就显得很不着调。

因为既然是注重知识技能的竞赛,就不太会通过字典的丰富量来考察。

针对ZIP压缩包,如果不是暴力破解的话,那就存在着一个能过绕过需要输入密码才能解压的方法。

回顾压缩包的基本原理,秦淮想到了。

ZIP文件是否加密是由压缩源文件数据区和压缩源文件目录区上的全局方式位标记决定的。

如果压缩源文件数据区的全局方式位标记为00 00 ,压缩源文件目录区为 00 00,表示为无加密。

如果目录区为09 00,则为伪加密。

当然,如果数据区和目录区都为09 00,那就是真的加密了,只能通过暴力破解的方式进行了。

想到了这个点,秦淮立即使用十六进制编辑器查看这个文件。

果然,自己的想法没错,正是伪加密。

通过人为修改压缩包的加密标志位,来达到加密的迷惑效果。

如果没有稍微了解的人,可能就真的绞尽脑汁去猜测密码了。

......

接下来应该就是最后一步了。

压缩文件提取出来的两个文件,一个是记录了加密程序的python脚本,另一个就是python脚本运行完成之后产生的加密密文。

点开加密密文,一组带小数的数字。

很显然,这最后考核的是代码的功底和逆向思维,给出加密程序如何逆推解密程序。

可是秦淮最骄傲的就是一手熟练的代码技能,这对他来说,单纯的代码对他来说,没有难度。

难点在于如何理解给出的这段代码。

随着秦淮的目光在代码上扫过,加密的方式一目了然。

代码不长,一共也就40行左右,一个main函数和一个自定义的加密函数Fun。

无非就是将这道题的答案用过加密程序,进行十六进制编码,再转化成十进制。

然后得到的一串十进制中,每两位数为一组,调用自定义的Fun函数进行运算,最后将每组运算结果拼接在一起,就得到了密文。

在他看来,整理的加密过程很简单,难点在于对于Fun函数的理解了。

如果没有一定经验的小白看来,肯定是一脸的懵逼。

那什么,函数里又是取余,又是判断的,还有取反,循环体里面还要进行幂运算!

这算法看起来就费劲,还怎么个逆向写解法,脑子根本就不够用!

但又因为上面代码行数不多的原因,会产生一种我一定能解出来的错觉,直接就钻进了死胡同里。

而秦淮就不一样了,凭借秦淮多年的工作经验,直接就判定了这是几乎是不可逆的算法。

即使可逆,在有限的时间内,根本解决不了,除非是数学天才。

所以,只有一种方法,就是建立字典!

就像解密md5密文一样,直接查询加密值组成的字典,强行对比原文。

好在题目中只是两位数的加密,所以只需要建立00-99这100个通过Fun函数产生的加密值的字典即可。

然后再一一到压缩文件解压出来的密文文本中进行比对,就可以得到Fun函数加密前的十进制数。

最后再将十进制转化成十六进制进行解码,直接输出即可。

理清楚解密思路,直接复制原有的Fun函数代码,解密程序上根本不需要多大的改动,无非是附加上一些关于小数位上的条件判断等。

随着笔记本电脑键盘上的一阵敲击,两分钟的时间,代码就完成了。

甚至还比原来的加密代码量还少了几行。

呼出命令控制台,运行代码,输出:CTF{I0U4HhUylTSCJOF4tRRlKWh5m5GZDT38}

运行期间没有任何的报错!秦淮有这个自信!

再次回到考核界面,将得到的答案输入文本框内,点击提交!

“恭喜,回答正确!积分+300!”

......

“你们俩可以啊,咱们宿舍也算是出来两个牛人了。”杨开突然兴奋的说道。

指着积分排行榜上的排名说道:“你们看,咱们现在700积分了,距离考核开始也才过了40分钟左右。

咱们007号小组还保持在第三呢!”

700积分,谁也做出了一题吗?

秦淮也点开了排行榜,001号小组目前排名第一,1100积分;005号小组排名第二,800积分。

排行榜下面还有个人的做题情况,不过是只能看到本组成员的罢了。

秦淮自己的600积分赫然就在上面,还有100积分则是程默贡献的。

程默做出来的是web类型的第三题,也是唯一一道100积分的题目。

看了程默一眼,他正默默的在电脑上通过搜索引擎查找着什么,仔细一看,是关于解题线索。

秦淮忍不住对他说道:“程默,可以啊。”

程默转过头来看了一眼秦淮,说道:“差得远了。”

然后继续盯着自己的笔记本。

额......好吧,继续做题!

秦淮看着正满头大汗盯着题目的李明德,开头道:“舍长,要我帮忙吗?”

另秦淮意外地是,李明德竟然直接拒绝了,说道:“不,这道题我一定要自己做出来,我要让女神看到我的努力!”

秦淮:“.......”

一旁正在刷着积分排行榜进行研究的杨开,听到李明德的话后,也是一脸无语。

最后,秦淮接手了之前分配给杨开的那三道题目,一道200积分,两道100积分。

杨开是彻底的放弃了,按照他的话说,反正都是做不出来,何必浪费脑细胞。

上一章目录+书架下一章