吾爱破解第二课 : 实战去广告及主页锁定

首先是实例一

我们先用 C32asm 工具打开脱壳后的程序

右键>搜索>ANSI字符串>

有的时候可以搜 http, 但是我们知道这个弹出的网站, 所以我们直接搜 52pojie

第一个一看就不像网页, 我们搜索下一个, 找到这个 :

explorer.exe http://www.52pojie.cn/thread-384195-1-1.html

这条就是一个打开网页的功能, 调用了 explorer.exe

我们可以整条把它填充 00, 来把这个弹窗去掉, 也可以只把第一个字节填充成 00

保存, 发现点 课程介绍 弹出的网页没了

我们继续搜索 52pojie 找一找有没有其它的网页

只找到一处

这里就有所谓 ascii 和 unicode 的问题

然后我们换成 unicode 字符串搜索

发现一个, 明显不是, 不用管它, 继续向下搜索

然后这个长这样 :

h.t.t.p.:././.w.w.w...5.2.p.o.j.i.e...c.n...o.p.e.n.

全部改成 0

保存出去看看, 发现第一个等 20 秒的网页没了

剩下两个网页就不能这样去掉了, 因为据 kido 说他加密了

这时候就要用我们的 OD 了

首先我们直接搜一下字符串

我们先把那个 来试试我的程序啊 干掉

直接点这个字符串, 来到调用处

我们在 messagebox 这个 API 下个 F2 断点, 运行

看一下右下角的堆栈窗口, 这里其实是程序调用 messagebox 时推的 4 个参数

我们不能只把这个 call 变没, 因为上面的 push 入栈操作的东西和后面的入栈操作, 会造成程序崩溃

我们不光要把 call 调用干掉, 我们还要把前面推的参数也干掉, 全部 nop

我们把刚才的 nop 选中, 然后右键>保存到可执行文件>选中部分右键>保存文件

发现第一个弹窗没了, 剩下的就是两次弹网页了

我们 ctrl+G, 把下面 3 个弹网页的 API 输入进去, 下断点

运行发现断在了 ShellExecuteW

看堆栈窗口, 这里原来应该是有参数的, 但我们刚才用 C32ASM 把这里填充为 00 了

实际上这是第一个弹网页的部分, 我们把代码全部 nop 掉也可以实现同样的功能

我们不管它, 再把程序跑起来

emmm, 这个打开 QQ 拼音的, 我到底要不要干掉它….

往下看了下, 发现调用很多次 QQ 拼音, 以防程序崩溃我还是把它留着

我们继续 Shift F9 运行, 程序断在了 WinExec

我们点一下堆栈窗口这个第一条, 按下 Enter

这里它推了 2 个参数, nop 干掉, 右键保存, 保存步骤同上

这里我找了一会才找到 cteateprocess 的弹网页, 被 QQ 拼音折腾好久….

多注意下堆栈窗口的地址就可以找到弹网页的

我们看实例二

脱壳步骤省略

打开它, 首先它内置了一个网页, 然后它把浏览器主页也修改了, 然后它在右下角弹了一个小窗口

我们先搜索字符串

发现它是操作注册表来改浏览器主页, 我们点进去看一下, 发现整整一个函数都是在改主页

我们可以一个 call 一个地 nop 掉, 也可以在段首用 retn 大法

但是要注意一点, 你加上去的 retn 一定要和末尾的 retn 一模一样, 不然会导致堆栈不平衡

我们把它保存, 然后打开看一下 IE, 主页是空白页, 搞定

我们搜索字符串, 找到调用 IE 打开的 52pojie

把地址复制一下, 在数据窗口 ctrl+G 跟过去, 记得调成 hex 模式显示, 然后把链接用 00 填充, 右键保存

不知道为什么这个改了没用

xspy 发现这个弹窗广告是程序内部的

我们下几个断点 : CreateWindowsExA/W, DialogBoxParamA/W

这个程序是用 DialogBoxParamA/W 写的, 所以我们下这几个点断点就好

运行

我们还是从堆栈窗口回车返回

这里我断的地方和视频里不一样…不管了

我们可以用 Procmon 工具

1.MessageBoxA/W

消息框

2.ShellExecuteA/W

open url

控制台执行

3.WinExec

explorer.exe url

Windows执行

4.CreateProcessA/W

PATH url

创建进程

2, 3, 4 是最常见的用来弹网页的 API

5.CreateThread

创建线程

6.RegCreateKeyExA/W

注册表 创建 键值

7.RegOpenKeyExA/W

注册表 打开 键值

8.RegDeleteKeyExA/W

注册表 删除 键值

Ansi(Ascii)
WideChar(Unicode)

F12大法
RET大法
nop大法

PID: 1120
Command line: "C:\Documents and Settings\Administrator\Local Settings\Application Data\Google\Chrome\Application\chrome.exe" -- "http://www.52pojie.cn/"

其他链接

https://www.52pojie.cn/forum.php?mod=viewthread&tid=814963&page=1