今天做一道逆向题,开心,见证了自己汇编的用途。
首先看它是否加壳?
1.加壳检测

是vc编程的,没有加壳,可以愉快地分析了。
2.分析程序,找到flag。
首先运行一下子程序,emmmmmmmm,是的,有提示。

那就可以通过Ollydbg打开查找关键点动态调试,或许能找到flag。
使用Ollydbg分析。该怎么做呢?
首先可以搜索程序中关键字找到关键的调试点哦,可以选择交互点关键字【输入flag吧】。
(1).点击右键,【查找】-【所有参考文本字串】,在新界面中光标移至第一行,点击右键,【查找文本】,输入【输入flag吧】后执行。

(2).顺利找到了,双击可到对应位置,确保程序也运行至此行。

(3).逐行运行,到输入点随便输入数据。我输入12345

(4).激动人心的时刻到来了,在核心的比较代码中,我输入值放置EAX中,程序原本值即flag放置ECX中。啊啊啊啊啊

我也通过调试这段比较代码懂得了字符串结束符0X00的力量,并再次肯定了自己汇编的底子。emmmmm,以后应该可以完全依靠逆向来作为每周的提交报告了,咩哈哈哈哈哈哈哈哈