分析

打开题目给的第一个地址,找不到什么东西。有用的都在第二个超链接里。打开是一个GitHub的目录。

Repeating History (Research) 的解题方法

然后你发现文件夹层层叠叠,文件浩如烟海,你不知道从何找起。至于为什么文件那么多,显然这个是整个WeChall的工程目录,所以你觉得与这个题目相关的flag应该藏在哪里?当然是本题的目录下。看看URL?

Repeating History (Research) 的解题方法

注意这个单词,subversive,题目中也提到了。

于是就应该知道去哪里找了吧。进入到本题的目录下,很清爽。文件夹只有两个,下面的文件数也不多,可以慢慢找。

Repeating History (Research) 的解题方法

很容易看到的是part one的flag

Repeating History (Research) 的解题方法

然后可以找到另一个比较隐秘的flag

Repeating History (Research) 的解题方法

这是一个md5,所以可以拿去解码一下:https://www.dcode.fr/hash-function

Repeating History (Research) 的解题方法

结果是wrong。这个不是程序报错…这说明这串md5就是wrong哈希过来的。什么意思?找错了呗。当然,我们也应该试一下InDaxInwrong这样对不对。不过应该就是错的。

下面就需要想想题目是什么意思了。Repeating History历史重演?作者的意思可能是以前solution是以明文形式存在.php文件里面的,这是一个极其致命 (subversive) 的漏洞,后来作者意识到了这一点,就把solution哈希了。

所以历史 (History) 里面应该能找到原来明文形式的solution。

Repeating History (Research) 的解题方法

发现History只有3个版本,非常好办。要么都看看,要么就看看comment。发现最新的版本就是修复Repeating History这道题目的(刚刚所说的明文存solution的问题),所以我们可以选择上一个版本查看。

Repeating History (Research) 的解题方法

flag的第二部分就能找到了。

Repeating History (Research) 的解题方法

解决

最后提交InDaxInNothingHereMoveAlong即可解决问题。


转载:[WeChall] Repeating History (Research) – Chiang E's Blog