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

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

题目来源: 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程序里就可以啦!

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

发表评论