吾爱破解 - 52pojie.cn

 找回密码
 注册[Register]

QQ登录

只需一步,快速开始

查看: 6159|回复: 26
收起左侧

[第一课] 根据第二课知识去消息框知识,找了一个软件,upx壳脱壳后,无法去除消息框!求教

[复制链接]
han1235881 发表于 2017-11-5 15:59
学习了kido 老师的第二课视频,第一个方法去除消息框
程序以及我脱壳后的程序  我都放到 百度网盘
我从论坛下载了一个 论坛大牛发布的 软件  PanDownload_v1.4.3  正好开始有个弹窗,拿来练手
查壳  用教程的两个 查壳软件查的 是 upx  壳
1.bmp
这个是 两个 call  之后跳转  我用 F4  之后一直运行 无法F7 继续
后来 用的  F2 下断   F9运行  然后  F7  单步 找到
无标题.png
第一个问题这里是 oep  吗?  我自己不能确定  !!!求教大 H  哥
查壳软件 检查没有壳了
然后我就继续脱壳 修复 iat  得到 脱壳后 文件


第二个问题是
我查找字符串找到  了这里  然后回车进入  代码     没有看到 教程提到的  MessageBoxA/W
然后就迷茫了  不知道怎么处理 !
无标题2.png


发帖前要善用论坛搜索功能,那里可能会有你要找的答案或者已经有人发布过相同内容了,请勿重复发帖。

Hmily 发表于 2017-11-8 15:08
han1235881 发表于 2017-11-8 14:38
我试了 下 还是不行,我先留着这个问题继续学
火急火燎的的就上   效果很不好
再次谢谢 大H哥

正好我也用这个软件,我看了下最新版1.4.3.0,这个程序确实很有意思,你找的地方确实是一个弹出点,但这地方不适合改,原因是他所有的弹窗都是调用这里来弹的,并且还设置了字符串陷阱,其实只要在你这个地方继续往下跟踪,回朔到弹窗前就能看到,关键代码如下:

[Asm] 纯文本查看 复制代码
0043E5EA  |. /0F8D B6000000    jge PanDownl.0043E6A6
0043E5F0  |. |83EC 18          sub esp,0x18
0043E5F3  |. |C705 281E5D00 00>mov dword ptr ds:[0x5D1E28],0x0
0043E5FD  |. |8BCC             mov ecx,esp
0043E5FF  |. |33C0             xor eax,eax
0043E601  |. |6A FF            push -0x1
0043E603  |. |50               push eax
0043E604  |. |C741 14 07000000 mov dword ptr ds:[ecx+0x14],0x7
0043E60B  |. |C741 10 00000000 mov dword ptr ds:[ecx+0x10],0x0
0043E612  |. |68 9C205D00      push PanDownl.005D209C                                           ;  提示
0043E617  |. |66:8901          mov word ptr ds:[ecx],ax
0043E61A  |. |E8 110BFDFF      call PanDownl.0040F130
0043E61F  |. |83EC 18          sub esp,0x18
0043E622  |. |8BC4             mov eax,esp
0043E624  |. |68 01FF0000      push 0xFF01
0043E629  |. |68 14900000      push 0x9014
0043E62E  |. |68 28750000      push 0x7528
0043E633  |. |68 1A4E0000      push 0x4E1A
0043E638  |. |68 46550000      push 0x5546
0043E63D  |. |68 8E4E0000      push 0x4E8E
0043E642  |. |68 28750000      push 0x7528
0043E647  |. |68 975F0000      push 0x5F97
0043E64C  |. |68 0D4E0000      push 0x4E0D
0043E651  |. |68 0CFF0000      push 0xFF0C
0043E656  |. |68 28750000      push 0x7528
0043E65B  |. |68 7F4F0000      push 0x4F7F
0043E660  |. |68 416D0000      push 0x6D41
0043E665  |. |68 A44E0000      push 0x4EA4
0043E66A  |. |68 604E0000      push 0x4E60
0043E66F  |. |68 665B0000      push 0x5B66
0043E674  |. |68 9B4F0000      push 0x4F9B
0043E679  |. |68 C54E0000      push 0x4EC5
0043E67E  |. |68 F64E0000      push 0x4EF6
0043E683  |. |68 6F8F0000      push 0x8F6F
0043E688  |. |68 2C670000      push 0x672C
0043E68D  |. |6A 15            push 0x15
0043E68F  |. |50               push eax
0043E690  |. |E8 2B170000      call PanDownl.0043FDC0
0043E695  |. |83C4 5C          add esp,0x5C
0043E698  |. |33D2             xor edx,edx                                                      ; |
0043E69A  |. |33C9             xor ecx,ecx                                                      ; |
0043E69C  |. |6A 01            push 0x1                                                         ; |Arg1 = 00000001
0043E69E  |. |E8 8D560000      call PanDownl.00443D30                                           ; \PanDownl.00443D30
0043E6A3  |. |83C4 34          add esp,0x34
0043E6A6  |> \8B0D DC9E5C00    mov ecx,dword ptr ds:[0x5C9EDC]

免费评分

参与人数 1吾爱币 +1 热心值 +1 收起 理由
han1235881 + 1 + 1 热心回复!

查看全部评分

 楼主| han1235881 发表于 2017-11-9 20:50
Hmily 发表于 2017-11-8 15:08
正好我也用这个软件,我看了下最新版1.4.3.0,这个程序确实很有意思,你找的地方确实是一个弹出点,但这 ...

感谢 大H 哥!!!
感谢 大H 哥!!!
感谢 大H 哥!!!
重要的事情说三遍  。。。。。。{:1_920:}
大 H  哥 给您 汇报个好消息   下一步在去掉 标题等等这个程序  的第二个弹窗 被我找到并且干掉了
我根据您给的第一个弹窗寻找办法   查看了 kido 老师 F12  大法  回溯找代码,我看着您是找的跳转,跳过 关键 call   ,我也这么改的  。右键 显示调用
GM2D0NEBWX5E0MY1DVKG[31.png
这是关键代码
这里有个 跳转没有实现 我看着我查找的call 在这个跳里面 瞎猫碰死耗子改成 jmp

[Asm] 纯文本查看 复制代码
0044F17B   /74 61           je short 2-1.0044F1DE   这里 一个不实现的跳转  我改成jmp 就可以了
0044F17D   |83EC 18         sub esp,0x18
0044F180   |8BC4            mov eax,esp
0044F182   |8965 D0         mov dword ptr ss:[ebp-0x30],esp
0044F185   |68 4A540000     push 0x544A
0044F18A   |68 6C510000     push 0x516C
0044F18F   |6A 02           push 0x2
0044F191   |50              push eax                                 ; 2-1.00593684
0044F192   |E8 290CFFFF     call 2-1.0043FDC0
0044F197   |83EC 08         sub esp,0x8
0044F19A   |C645 FC 02      mov byte ptr ss:[ebp-0x4],0x2
0044F19E   |8BCC            mov ecx,esp
0044F1A0   |C741 14 0700000>mov dword ptr ds:[ecx+0x14],0x7
0044F1A7   |C741 10 0000000>mov dword ptr ds:[ecx+0x10],0x0
0044F1AE   |8379 14 08      cmp dword ptr ds:[ecx+0x14],0x8
0044F1B2   |72 04           jb short 2-1.0044F1B8
0044F1B4   |8B01            mov eax,dword ptr ds:[ecx]               ; 2-1.005936BC
0044F1B6   |EB 02           jmp short 2-1.0044F1BA
0044F1B8   |8BC1            mov eax,ecx
0044F1BA   |33D2            xor edx,edx
0044F1BC   |6A FF           push -0x1
0044F1BE   |66:8910         mov word ptr ds:[eax],dx
0044F1C1   |8D45 D8         lea eax,dword ptr ss:[ebp-0x28]
0044F1C4   |52              push edx
0044F1C5   |50              push eax                                 ; 2-1.00593684
0044F1C6   |E8 65FFFBFF     call 2-1.0040F130
0044F1CB   |C645 FC 01      mov byte ptr ss:[ebp-0x4],0x1
0044F1CF   |33D2            xor edx,edx
0044F1D1   |8B4F 04         mov ecx,dword ptr ds:[edi+0x4]
0044F1D4   |6A 01           push 0x1
0044F1D6   |E8 554BFFFF     call 2-1.00443D30                        ; 第二个
0044F1DB   |83C4 34         add esp,0x34
0044F1DE   \C745 FC FFFFFFF>mov dword ptr ss:[ebp-0x4],-0x1


然后就 突然 把这个 弹窗解决了  
大H 哥   我还有个疑问 就是  这个代码 怎么分析呢
我也能看明白   压栈 出栈    mov 传送数据  可是程序怎么走 不明白  
我需要 补充什么知识呢  或者哪位大牛的  教程可以 膜拜下

点评

最好看看《IDA Pro代码破解解密》这本书,把一个程序拆解成若干子段落和函数,静态加动态来宏观上分析,虽然有逆向回溯这样的插件,但配置和掌握起来并不那么容易。  发表于 2018-9-13 13:55
这其实就是一个程序执行流程,你看到最后一步弹窗的时候,可以通过堆栈可以看出他之前调用的过程,咋举例好了,一时还想不出来,你再想想。。。  详情 回复 发表于 2017-11-10 09:39
 楼主| han1235881 发表于 2017-11-5 16:04
链接:http://pan.baidu.com/s/1o8wZbxK 密码:f0ww  这是程序 里面是原程序  和我脱壳的文件  运行环境 虚拟机
头像被屏蔽
hejialong 发表于 2017-11-5 16:16
提示: 作者被禁止或删除 内容自动屏蔽
头像被屏蔽
hejialong 发表于 2017-11-5 16:58
提示: 作者被禁止或删除 内容自动屏蔽
Hmily 发表于 2017-11-6 11:30
那地方应该是oep,弹窗不一定都只是用一个api,也可能是其他api,你可以通过其他方式找那个弹窗,比如堆栈啦,或者字符串,然后分析他用什么api的。
 楼主| han1235881 发表于 2017-11-6 16:25
Hmily 发表于 2017-11-6 11:30
那地方应该是oep,弹窗不一定都只是用一个api,也可能是其他api,你可以通过其他方式找那个弹窗,比如堆栈 ...

谢谢 大H 哥 根据您的提示 我下的这几个断点
捕获.PNG
运行之后  找到了我 要的 消息框的内容, 第二课 kido 老师 的教程是  直接 回车 进入call
我查了下有  12  个参数  应该有 12 个  push  
捕获2.PNG
我查了下有  12  个参数  应该有 12 个  push  
捕获3.PNG
这里  call  这往上数 有两个 push   我应该选择到哪里然后  nop 掉呢  
我的测试过程是 call连上面第一个 push  一起nop掉   保存  后 运行无反应  
然后从新来 继续往上多选择 push  保存  还是不行  ,错误出现在哪里呢?
大H 哥 不吝赐教奥  ^^  

点评

如果换作我,我看看这个函数有没有其他调用,如果没有,那我直接把这个函数给retn了,改跳转push的话应该从4de94e第一个push开始吧。  详情 回复 发表于 2017-11-6 16:34
Hmily 发表于 2017-11-6 16:34
han1235881 发表于 2017-11-6 16:25
谢谢 大H 哥 根据您的提示 我下的这几个断点

运行之后  找到了我 要的 消息框的内容, 第二课 kido 老 ...

如果换作我,我看看这个函数有没有其他调用,如果没有,那我直接把这个函数给retn了,改跳转push的话应该从4de94e第一个push开始吧。

免费评分

参与人数 1吾爱币 +1 热心值 +1 收起 理由
han1235881 + 1 + 1 热心回复!

查看全部评分

 楼主| han1235881 发表于 2017-11-6 21:46
Hmily 发表于 2017-11-6 16:34
如果换作我,我看看这个函数有没有其他调用,如果没有,那我直接把这个函数给retn了,改跳转push的话应该 ...

大H哥
我刚学了 几天 函数有没有调用 不会判断 知道点 retn 大法   但是不是很理解,
我把这段选定 然后  nop 掉  保存程序   无法运行
请指点下我需要 补充下哪方面的 知识
未命名.bmp

点评

保存后运行出现什么?是这段代码问题?你可以直接调试的时候nop掉,看看能不能运行,不用保存。  详情 回复 发表于 2017-11-7 09:51
Hmily 发表于 2017-11-7 09:51
han1235881 发表于 2017-11-6 21:46
大H哥
我刚学了 几天 函数有没有调用 不会判断 知道点 retn 大法   但是不是很理解,
我把这段选定 然 ...

保存后运行出现什么?是这段代码问题?你可以直接调试的时候nop掉,看看能不能运行,不用保存。
 楼主| han1235881 发表于 2017-11-8 14:38
Hmily 发表于 2017-11-7 09:51
保存后运行出现什么?是这段代码问题?你可以直接调试的时候nop掉,看看能不能运行,不用保存。

我试了 下 还是不行,我先留着这个问题继续学
火急火燎的的就上   效果很不好
再次谢谢 大H哥

点评

正好我也用这个软件,我看了下最新版1.4.3.0,这个程序确实很有意思,你找的地方确实是一个弹出点,但这地方不适合改,原因是他所有的弹窗都是调用这里来弹的,并且还设置了字符串陷阱,其实只要在你这个地方继续往  详情 回复 发表于 2017-11-8 15:08
您需要登录后才可以回帖 登录 | 注册[Register]

本版积分规则

返回列表

RSS订阅|小黑屋|处罚记录|联系我们|吾爱破解 - LCG - LSG ( 京ICP备16042023号 | 京公网安备 11010502030087号 )

GMT+8, 2024-11-15 13:04

Powered by Discuz!

Copyright © 2001-2020, Tencent Cloud.

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