学逆向论坛

找回密码
立即注册

只需一步,快速开始

发新帖

717

积分

2

好友

29

主题
发表于 2020-11-26 22:48:27 | 查看: 4730| 回复: 0
逆向分析HelloWorld程序
实验目的:修改如下图窗口中的文字“Hello World!”为“Hello Reversing”和“Hello Reversing World!!!”

逆向分析HelloWorld程序

逆向分析HelloWorld程序
一;直接修改字符串缓冲区
       打开界面,我们发现窗口中弹出字符串“Hello World”我们知道弹框通常使用的API是MessageBox。那我们找到字符串“Hello World”位置可以等同于找API函数MessageBox位置。当然也是可以根据字符串来寻找
       右击 ---》查找 ---》所有单靠文本字串

逆向分析HelloWorld程序

逆向分析HelloWorld程序
       查找到对应字符串

逆向分析HelloWorld程序

逆向分析HelloWorld程序
       双击字符串,切换到如下图界面,查找到字符串存放虚拟地址

逆向分析HelloWorld程序

逆向分析HelloWorld程序
       在内存中找到该虚拟地址位置。

逆向分析HelloWorld程序

逆向分析HelloWorld程序
       修改内存字符串

逆向分析HelloWorld程序

逆向分析HelloWorld程序

逆向分析HelloWorld程序

逆向分析HelloWorld程序
       保存文件

逆向分析HelloWorld程序

逆向分析HelloWorld程序

逆向分析HelloWorld程序

逆向分析HelloWorld程序

逆向分析HelloWorld程序

逆向分析HelloWorld程序
       验证:

逆向分析HelloWorld程序

逆向分析HelloWorld程序
二;在其他内存区域生成新字符串并传递给消息函数
       如下图:我们查看汇编代码,发现字符串“Hello World”是通过一个PUSH将一个虚拟地址压入栈。该虚拟地址指向了内容就是字符串“Hello World”。那么我们来换个思路,我们将内容为其他字符串的虚拟地址替换去压入栈,那是不是就是修改了字符串“Hello World”了呢?

逆向分析HelloWorld程序

逆向分析HelloWorld程序
       寻找内存其他位置,且输入修改之后的字符串

逆向分析HelloWorld程序

逆向分析HelloWorld程序
修改汇编指令

逆向分析HelloWorld程序

逆向分析HelloWorld程序
       F9运行

逆向分析HelloWorld程序

逆向分析HelloWorld程序


温馨提示:
1.如果您喜欢这篇帖子,请给作者点赞评分,点赞会增加帖子的热度,评分会给作者加学币。(评分不会扣掉您的积分,系统每天都会重置您的评分额度)。
2.回复帖子不仅是对作者的认可,还可以获得学币奖励,请尊重他人的劳动成果,拒绝做伸手党!
3.发广告、灌水回复等违规行为一经发现直接禁言,如果本帖内容涉嫌违规,请点击论坛底部的举报反馈按钮,也可以在【投诉建议】板块发帖举报。

小黑屋|手机版|站务邮箱|学逆向论坛 ( 粤ICP备2021023307号 )|网站地图

GMT+8, 2024-3-29 20:25 , Processed in 0.090506 second(s), 40 queries .

Powered by Discuz! X3.4

Copyright © 2001-2021, Tencent Cloud.

快速回复 返回顶部 返回列表