菜鸡开始学习逆向工程,首先是最简单的题目

华盟原创文章投稿奖励计划

文章来源:华盟论坛

文章链接:

https://bbs.77169.net/forum.php?mod=viewthread&tid=375397

题目来源: DUTCTF
题目描述:菜鸡开始学习逆向工程,首先是最简单的题目
下载来源:

https://pan.baidu.com/s/1BaCIOGzWolar7lL5ZmtOBg

1、下载flag.exe程序并打开分析输出的有用信息,可以看见有中文输出。


菜鸡开始学习逆向工程,首先是最简单的题目


2、使用逆向工具IDA将其打开。

菜鸡开始学习逆向工程,首先是最简单的题目


3、使用快捷键:shift f12,可以打开string窗口,一键找出所有的字符串(定位中文)。

菜鸡开始学习逆向工程,首先是最简单的题目


4、双击flag get字符串进入IDA View-A图标架构,这里可以查看程序的逻辑树形图,把程序的结构更人性化地显示出来,方便我们的分析。

菜鸡开始学习逆向工程,首先是最简单的题目


5、定位其中地址00413E60后使用快捷键:CTRL X引用交叉列表。

菜鸡开始学习逆向工程,首先是最简单的题目


6、使用快捷键:F5进入伪代码后分析代码。

菜鸡开始学习逆向工程,首先是最简单的题目


分析:代码看不懂找百度:
strcmp函数是string compare(字符串比较)的缩写,用于比较两个字符串并根据比较结果返回整数。基本形式为strcmp(str1,str2),若str1=str2,则返回零;若str1<str2,则返回负数;若str1>str2,则返回正数。

_mm_load_si128:加载128位值 
_mm_store_si128:存储128位值

了解strcmp函数后v5和v9需要比较v9是随意输入的值v5是系统的值,分析后v5又是函数xmmword_413E34赋值的,所以找到函数xmmword_413E34的值就可以了。

菜鸡开始学习逆向工程,首先是最简单的题目

7、双击函数xmmword_413E34,可以发现其值后转成字符串。

菜鸡开始学习逆向工程,首先是最简单的题目


8、把flag的值输入flag.exe程序里就可以啦!

本文原创,作者:张,其版权均为华盟网所有。如需转载,请注明出处:https://www.77169.net/html/251391.html

发表回复