sjg00000 发表于 2009-11-20 00:02

qq伴侣2.44绿化去广告[VB-Pcode静态分析]

本帖最后由 sjg00000 于 2009-11-20 11:11 编辑

1.脱壳
ASP脱壳的办法是在太多了,脱壳机、脚本、ESP定律等等。
OD载入后使用一次ESP定律就可以看到OEP躺在那里,使用自带插件Dump

2.去自校验
脱壳后运行程序没有窗口一闪而过。很明显是自校验了。

对于VB的自校验,如果是比较文件大小的,可以在od下BP rtcFileLen断点。不过qq伴侣无法断下。

首先介绍一下和VB跳转有关的伪代码:
Branch(无条件跳转,机器码是1E)
BranchF(堆栈值为0则跳,机器码是1C)
BranchT(堆栈值是-1则跳,机器码是1D)
ExitProcHresult(过程调用结束返回,相当于OD中的Retn,机器码是13)

使用vbexplorer载入
在mian的From_load中我们可以发现
:0045EF131C3A01            BranchF             ;If Pop=0 then ESI=0045EF1A
:0045EF160004            LargeBos            ;IDE beginning of line with 04 byte codes
:0045EF18FCC800            End               ;

0045EF13的跳转就有很大的嫌疑,因为如果不跳走,就要执行END了,这也太危险了。还是赶紧跳走吧。 用C32Asm把5EF13的数值1C改成1E(无条件跳转,相当于自校验失效)或者1D(文件的大小不在设定大小范围内则跳转),当然修改成1E更加稳妥。运行下程序,可以了~

3.去广告
一共有两个广告,第一个广告是首次启动时会询问是否把一个网址导航设为首页。第二个广告是打开主程序一段时间后会弹出一个网页广告。我们来各个击破:

A.首次运行主页广告
只有首次运行才会弹出,那么他肯定把已经弹出过得信息记录在了某个地方。于是去继续在伪代码中发掘。
如果你运行过是否设为主页的窗口,就会在注册表留下一个QQBanlv_HomePage的键值
******Possible String Ref To->"QQBanlv_HomePage"
                               |
:0045F2E21B3000            LitStr            ;Push ptr_0041EB4C

**********Reference To->msvbvm60.rtcDateDiff
                               |
:0045F3260A36001800      ImpAdCallFPR4       ;Call ptr_0040119C; check stack 0018; Push EAX
:0045F32B0404FF            FLdRfVar            ;Push LOCAL_00FC
:0045F32EFBD9F4FE          FnAbsVar            ;
:0045F3322814FF0500      LitVarI2            ;PushVarInteger 0005
:0045F3375D                HardType            ;
:0045F338FB67            LtVarBool         ;Push (Pop1 < Pop2)
:0045F33A36040038FF04FF    FFreeVar            ;Free 0004/2 variants
:0045F3411C7C05            BranchF             ;If Pop=0 then ESI=0045F35C
:0045F3440015            LargeBos            ;IDE beginning of line with 15 byte codes
:0045F3462714FF            LitVar            ;PushVar LOCAL_00EC

msvbvm60.rtcDateDiff比对字符是否相等的函数,也就是说看看是否保存过QQBanlv_HomePage键值,如果没有则弹出设置主页广告
BranchF就是关键跳转,这里不能让它跳走,C32Asm把0005F341的1C改为00

B.弹出广告
timer12控件为按钮广告和弹出网页控件

作者的timer控件有的还真够多的,还好他帮我们分门别类好了(估计太多了,不注释他自己也糊涂了)

timer12是响应广告用的。直接把Interval调为0就可以了
保存,测试。没有弹出广告了

cxp521 发表于 2009-11-20 00:28

我的还是2.43的,来更新下

zgzp 发表于 2009-11-20 00:48

谢谢分享.........................

piaoyi01 发表于 2009-11-20 01:13

这个不错喔!!!!!!!!!1

shenlen 发表于 2009-11-20 01:37

好用吗?我来试试。多谢了

dlj 发表于 2009-11-20 01:37

感谢楼主分享!

mexia 发表于 2009-11-20 01:56

感谢楼主分享!

2051314 发表于 2009-11-20 07:50

支持下无广告的。

dwboy 发表于 2009-11-20 08:22

看一下!:victory:!:victory:!:victory:

teamtopkarl 发表于 2009-11-20 08:27

好文章,呵呵
页: [1] 2 3 4 5 6 7 8 9
查看完整版本: qq伴侣2.44绿化去广告[VB-Pcode静态分析]