• 抬起头,继续前进吧,去把这个不完美的故事,变成你成所期望的样子
  • 登山路上我们会放弃很多东西,但这些被我们丢掉在我们登上山顶之际,都会一一回来
  • 不论开发还是逆向,数学水平的高低直接决定了”你的饭碗里有没有肉”
  • 万丈高楼平地起,勿在浮沙筑高台

Windows软件逆向练习-第4篇

安全 菜鸟 2周前 (05-05) 37次浏览 未收录 0个评论

一. 准备

工具:
PEid 0.95
x32dbg
环境:Win7 x64 sp1
目标: VisualSite Designer.exe
要求:破解软件

二. 分析

2.1 查壳。无,C++6.0 编译
Windows 软件逆向练习-第 4 篇
2.2 启动软件,发现限制以及购买提醒
Windows 软件逆向练习-第 4 篇
2.3 关闭时提醒
Windows 软件逆向练习-第 4 篇
2.4 x32dbg 加载 exe,一路跳过,直到启动软件时的弹框出现
Windows 软件逆向练习-第 4 篇
记录,下断点执行到该位置 F7 跟进。直到进入 MFC42.DLL 时,由出现了弹框。
Windows 软件逆向练习-第 4 篇
这里下硬件断点,重新运行程序,直接运行到该位置后 F7 跟进。
转到 0x489310 位置,继续往下走。在 0x00489912 位置启动了对话框

004898D3    | 0F84 FF000000          | je visualsite designer.4899D8            | X
004898D9    | 8A87 E0000000          | mov al,byte ptr ds:[edi+E0]              |
004898DF    | 84C0                   | test al,al                               |
004898E1    | 0F85 42010000          | jne visualsite designer.489A29           | X
004898E7    | 8B87 E4000000          | mov eax,dword ptr ds:[edi+E4]            |
004898ED    | 6A 00                  | push 0                                   |
004898EF    | 85C0                   | test eax,eax                             |
004898F1    | 0F8E A1000000          | jle visualsite designer.489998           | X
004898F7    | 8D8C24 10020000        | lea ecx,dword ptr ss:[esp+210]           |
004898FE    | E8 6D240200            | call visualsite designer.4ABD70          |
00489903    | 8D8C24 0C020000        | lea ecx,dword ptr ss:[esp+20C]           |
0048990A    | C68424 78870000 0B     | mov byte ptr ss:[esp+8778],B             | B:'\v'
00489912    | E8 132B0300            | call <JMP.&Ordinal#2514>                 | 启动前的对话框
00489917    | 83F8 01                | cmp eax,1                                |
0048991A    | 74 40                  | je visualsite designer.48995C            | V

前面有三个跳转没有执行,下断点测试。
第一个跳转,程序直接退出了
第二个跳转,程序直接到执行界面,没有启动时的弹框了
第三个跳转,启动数量达到界限,出现弹窗
Windows 软件逆向练习-第 4 篇

2.5 关闭程序,出现弹窗,暂停程序,进行栈回溯.
Windows 软件逆向练习-第 4 篇
跳转到目标程序

00480C1C    | C74424 68 00000000     | mov dword ptr ss:[esp+68],0              |
00480C24    | E8 01B80300            | call <JMP.&Ordinal#2514>                 | 关闭后显示的对话框
00480C29    | 8D4C24 00              | lea ecx,dword ptr ss:[esp]               |

三. 操作

1. 将 0x004898DF 处的指令改为 mov al, 1
2. 将 0x00480C24 处的 call 指令置空

四. 测试

启动程序是没有弹窗,关闭是也没有弹窗了,且没有打开次数限制。


学习心得 , 版权所有丨如未注明 , 均为原创丨本网站采用BY-NC-SA协议进行授权 , 转载请注明Windows 软件逆向练习-第 4 篇
喜欢 (0)
[]
分享 (0)
发表我的评论
取消评论
表情 贴图 加粗 删除线 居中 斜体 签到

Hi,您需要填写昵称和邮箱!

  • 昵称 (必填)
  • 邮箱 (必填)
  • 网址