中软吉大•问鼎杯决赛逆向类(一)

Reading time ~1 minute

这题我拿到手的就这个程序,想来逆向的题,也不需要什么题目描述了。

作为逆向的题目,第一反应当然是打开反汇编器,但是这题是个GUI程序,面对如此大一个程序,傻傻的理解所有代码显然是不划算的,那么我们要找些捷径来解决问题。

首先,我们运行这个程序,运行界面很明确就一个输入框和确定按钮,我们随便输入一点东西并点击确定,会弹出一个提示窗。那么,我们就从这个提示窗下手,因为在这个提示窗的之前就应该是判断密码是否正确的地方。

想要找到这个提示窗,我们通常是给MessageBox函数下断点或者对提示窗中现在内容下内存断点。在这里,我们采取后一种办法,首先在源程序中查找字符串"Try again!",找到这个字符串之后,再我们下断点之前,我们发现,在这个字符串的后面,紧跟着一句The key is :….CraCKS0EAsY!,这么看来,我们应该是已经找到了我们需要的东西,连断点都不用了。

我们在输入框中输入"CraCKS0EAsY!"(PS:注意中间是个数字0,而不是字母O,我刚开始就被这个给坑了,果然还是复制粘贴好!),点击确定,程序如我们所愿,弹出成功的提示窗,此题便得以解决。

这题的难道着实很低,只是刚看的时候显得有点吓人而已。


由于有人说答案错了,于是乎又跑去看了下程序,通过下内存断点,发现了在程序相对地址0x510的地方有点击事件的处理函数,函数内就是将输入框字符取出,并与"CraCKS0EAsY!"这个字符串做了个__mbscmp,根据比较结果分别弹出不同的内容。

然后消息分发函数应该是在程序相对地址0x157B5处,对编号0xC的消息调用了上面的处理函数。

crackme.exe.zip

挂载网络文件夹后网络故障时文件操作命令卡死

挂载 NFS 或者 Samba 的时候,经常会由于网络故障导致挂载好的链接断掉。此时如果尝试进行 ls、cd、df 等各种命令,只要与此目录沾上边,就会卡住。如果使用了类似 oh-my-zsh 这种配置的,只要在网络目录中,弹出命令提示符前就会直接卡住。这个时候第一反应就是...… Continue reading

路由折腾记 第四弹

Published on September 02, 2017