var _gaq = _gaq || []; _gaq.push(['_setAccount', 'UA-333696-1']); _gaq.push(['_trackPageview']); _gaq.push(['_trackPageLoadTime']); (function() { var ga = document.createElement('script'); ga.type = 'text/javascript'; ga.async = true; ga.src = ('https:' == document.location.protocol ? 'https://ssl' : 'http://www') + '.google-analytics.com/ga.js'; var s = document.getElementsByTagName('script')[0]; s.parentNode.insertBefore(ga, s); })();
  • 2009年10月12日

    VbsEdit暴破

    分类:

    VbsEdit 3.6.12具体操作语焉不详,但提供了思路。

     

    VbsEdit是一款antidebug的软件,OllyDbg无法跟进去,幸好IDA Pro还可以跟踪分析。用IDA加载vesedit.exe,设置两个断点:wWinMainCDialog::DoModalF9运行程序,F8跟到调用CDialog::DoModa之前的那个函数,F7确定Nag窗口跳转位置位于call ds:CreateThread之后的第一个跳转,这只去掉了启动时的Nag窗口,在点击“Start”开始调试时还会蹦出Nag窗口。对于调试时运行的窗口,在IDA中查找调用CDialog::DoModal的地方,对每个下断点一一排除找到如下所在:

    0044F024  |. /75 60         jnz     short 0044F086

    0044F026  |. |8D8C24 440100>lea     ecx, dword ptr [esp+144]

    0044F02D  |. |51            push    ecx

    0044F02E  |. |E8 1D97FBFF   call    00408750

    0044F033  |. |C78424 D80300>mov     dword ptr [esp+3D8], 2

    0044F03E  |. |DD86 E0010000 fld     qword ptr [esi+1E0]

    0044F044  |. |E8 170C0700   call    004BFC60

    0044F049  |. |DD86 E0010000 fld     qword ptr [esi+1E0]

    0044F04F  |. |DC05 40FC5100 fadd    qword ptr [51FC40]

    0044F055  |. |8D8C24 440100>lea     ecx, dword ptr [esp+144]

    0044F05C  |. |898424 200300>mov     dword ptr [esp+320], eax

    0044F063  |. |DD9E E0010000 fstp    qword ptr [esi+1E0]

    0044F069  |. |E8 6D2A0100   call    00461ADB

    0044F06E  |. |8D9424 440100>lea     edx, dword ptr [esp+144]

    0044F075  |. |52            push    edx

    0044F076  |. |C78424 DC0300>mov     dword ptr [esp+3DC], -1

    0044F081  |. |E8 2A98FBFF   call    004088B0//CDialog::DoModal

    0044F086  |> \807C24 1F 00  cmp     byte ptr [esp+1F], 0

    很明显,对第一个jnz改为jmp跳转到地址0044F086。用OllyDbg改掉。

     

    下载:vbsedit,壳请自行使用PEiD探测。

    【注】本文仅供学习非商业使用,商业使用请购买正版!

    分享到: