读书人

在大连市做按天技术论坛 GuessMe4

发布时间: 2012-08-25 10:06:20 作者: rapoo

在大连做按天技术论坛 GuessMe4

一开始依旧是一个压缩包,提示密码为一个文件后缀,尝试rar,竟然对了

在大连市做按天技术论坛 GuessMe4

解压之后是一个com.exe,这是一个使用copy指令,合并的四个文件。copy指令的合并方法这样使用


txt内容如下



分析这个密码,根据文章提示应该是字典密码,出题者提示字典就是这篇文章

大概说一下我的思路

密码为12位, 对应文章中的汉字可能是,2个3个4个6个,应该是一条有意义的句子

因为文章很短,使用6位来表示一个汉字显然太多,暂时排除掉。

4位的话是这样 7111 8403 9616

3位是这样 711 184 039 616

2位是这样 71 11 84 03 96 16

一个汉字可以由,段落,行号,行位置,确定(暂时排除斜着的变态情况),副标题不进入行号,

由于最多有6个汉字,应该不会包含标点,所以标点不算做一个字符

2位的组合可以生成如下组合

第一位行号,第二位行位置(因为有0的存在,行和行位置从0开始)

即,广,依,网,五,台

第一位行位置,第二位行号(数字也算一个字符计算)

台,广,号,有,由,台

第一位段号,第二位段位置

这个先暂时排除,因为自然段中存在字符大多为几十个,密文全部集中在前十个的概率很小。

同样其他段号的假设也排除。


=============这里偷一下懒,因为出题者提示密文是4个汉字,所以这一层极其有可能==================

三位情况是这样,因为文章有12段,所以只可能是第一位表示段号

这里又分两种情况,第二位为行号(有些自然段根本没这么多行)直接排除

尝试后两位为第几个字,却又发现比如第一段根本没有84个字,似乎也不可行。

那第一位必然是行号,不过第二组数据第一行又没有84个字符。

在这里陷入了僵局。

经过思索觉得既然密文是4个有意义的汉字,有可能是一个成语,比如“满城风雨”,之类的

又或者是包含“密码” ,“密文”之类关键字的词语

找出文章所有“密”字,并对照也没有什么发现,又陷入了茫然无措的境地,忍不住看了题解发现密文竟然是“密借破通”这种东西,

711 代表第7行第是11个字。
184 代表第18行第4个字
039 代表第3行第9个字
616 代表第6行第16个字

完全没有意义嘛,

与我一开始的设想密文有意义,背道而驰,能破出来才怪。

最后吧一段福尔摩斯解密的过程发过来


8373偏移处的数据是这样(偏移都能打错)

在大连市做按天技术论坛 GuessMe4

这里知道了密码开始位置,不知道密码长度,试一下就可以了,ISCC2010上也有一道类似题。

最后猜测出密码为"ULT"

解压出内容如下

在大连市做按天技术论坛 GuessMe4

查看其头文件是一个残缺的GIF文件头,修改成如下之后打开会出现一张动态GIF图

在大连市做按天技术论坛 GuessMe4

显示密码是“sseug”这里很容易吧两个s看成一个s,非常蛋疼,不过我也觉得这是出的比较好的地方之一。

二进制数据往下找,会发现一个rar文件头,使用rar解压并输入密码,会出现如下内容

在大连市做按天技术论坛 GuessMe4

以二进制方式查看,发现其中有MessageBox,感觉作者的一贯思路,肯定是一个com文件和一个rar文件的合并,果其不然,

修改后缀为com,弹出密码为'key'

解压出最后的 “终点站”,文件头为ELF,是linux下的一种可执行文件,抱着尝试的心态修改后缀com,出现如下效果

在大连市做按天技术论坛 GuessMe4

第一反应是反编译,结果没有找到关键。饭点临近又饿得头晕眼花,无耻地看了答案,得知密码为“EESU”,

ELF是linux下的一种可执行文件格式。

输入“EESU”获得通关信息。

在大连市做按天技术论坛 GuessMe4


这里比较神奇的是linux windows下都都可以运行的可执行文件,和最后一关的反编译,先留两个坑。


读书人网 >其他相关

热点推荐