用户
搜索

该用户从未签到

i春秋-呆萌菜鸟

末心网安 海格

Rank: 1

3

主题

3

帖子

45

魔法币
收听
0
粉丝
0
注册时间
2021-6-9
发表于 2021-9-16 17:43:20 01172
题目:reverse1
平台:buuctf
题目提示信息:reverse1 注意:得到的 flag 请包上 flag{} 提交
01.png
解题思路
题目拿到手,先把文件解压出来。
02.png

拖到Exeinfo PE中,查看发现编译器信息是x64环境,与上一道题不同的是,我们的编译器不一样了,我们一样拖到IDA64中。
03.png
进入IDA后,我们不讲武德的使用Shift+F12。
注意!我们看到第四行的内容了吗?内容是this is the right flag!

我们双击它!我们从字符串窗口跳转到了IDA View-A
04.png
05.png
选中双击
06.png
直接F5看伪代码(又不讲武德了)
07.png
我们将代码肢解,看到了下面这串语句:
09.png

也就是我们的ASCII为111的值被替换成了48,查ASCII表可知,111为o,48则为0
10.png
这里不难看出来,是&Str1收取了flag的值。
11.png
紧接着我们看出,我们只有Str1等于Str2的时候,flag才会提示正确。那么我们双击Str2查看一下Str2的值吧。
12.png
发现,Str2的值为{hello_world},我们接着把o替换成0,最后加上flag,就成功取得我们今天的flag了。
flag{hell0_w0rld}
题感
这道题是一道比较简单的revers题目,我们所需要的东西有下:
1.    IDA工具使用经验
2.    逆向思路
3.    C语言基础
4.    ASCII编码表
5.    能认识一些汇编语言
写到后面
大家可以关注一下我们的公众号,如果觉得这个文章有用的话,可以推荐给你的朋友或者转发到朋友圈分享一下。你的分享、你的点赞、你的每一次浏览,都将是我持续更新的动力。非常感谢看到文章的每一个人!

另外,CTF团队也在持续招人,如果有意向的可以与我联系,公众号内直接通过菜单获取信息即可!

微信公众号:末心网安 | Q群973504130 | 淘宝店铺:末心网络|TinSec(听安)
发新帖
您需要登录后才可以回帖 登录 | 立即注册