当前位置:七道奇文章资讯安全技术网络技术
日期:2010-09-15 00:19:00  来源:本站整理

一路问情自动注水机破剖解析[网络技术]

赞助商链接



  本文“一路问情自动注水机破剖解析[网络技术]”是由七道奇为您精心收集,来源于网络转载,文章版权归文章作者所有,本站不对其观点以及内容做任何评价,请读者自行判断,以下是其具体内容:

文/图 December
===================================
一路问情?其实并不真的是问情,它是一个论坛名称!一路注水,当然是一路注水了,不然哪来那么多注水狂?这一次的目标是一路问情出品的一个论坛自动注水机,相信很多人都用过此类注水机.闲来无事,无意发现这么一款注水机,很自然的就想看看它的注册考证机制,于是就有了本文.
这款程序的利用介绍我就不说了,喜好的可以到其官方找具体教程.将程序丢进PEiD检测到加了tElock 0.98b1的壳,背面还发现有个Overlay,如图1所示,初步猜想大概是个用易语言编写的程序,先脱壳看看猜想能否成立吧!
 
图1


脱壳历程
用OD载入程序后,停在下面的代码处.
00473BD6 A>^\E9 25E4FFFF    jmp Ask_Love.00472000
00473BDB     0000          add byte ptr ds:[eax],al
tElock 0.98b1载入后大都第一行是JMP,利用二次内存断点来脱吧.在OD翻开"内存",快速键是"Alt+M",可以看到"DATA"段,设置"内存写入断点",如图2所示,"Shift+F9"后,内存断点发见效应,在写到00407000时中止了下来,排除方才下的内存断点,持续翻开"内存",在"CODE"段设置"内存拜候断点",如图3所示.大家注意看图2和图3,下的内存断点是差别的,不要混合了."Shift+F9"后,发现刚好停在OEP处.
  
图2
  
图3

0040389F  55          push ebp
004038A0  8BEC       mov ebp,esp
004038A2  6A FF       push -1
004038A4  68 F8724000  push Ask_Love.004072F8
进口为0040389F是易语言的一个特有进口,和开始猜想的一样,可见大量的实战操练对脱壳破解来说是非常有效的.按照这个进口,易语言版本应当是最新版本,4.03版本以下的还没有发现有这个进口.题外话就不多说了,既然到了OEP了,自然就把它Dump出来了,启动LORDPE,挑选程序的进程,右键挑选"dump full",如图4所示.Dump出来后,程序是无法正常运行的,还需求修复一下.启动ImportREC1.6,在OEP填上389F,再点"自动查找IAT"后,再点击"获得输入表",发现N多无法辨认出来的函数,不过不要紧,利用"跟踪级别3"便可以找出精确的函数出来了,最后发现有一个函数还是无法辨认出来,将其Cut掉便可以了,如图5所示.
  
图4

 
图5
修复后,运行脱壳程序会弹出一个错误对话框,这是由于附加数据没有补上造成的.很多人对易语言的这种特点不是很理解,所以大多会认为是自校验.下面把附加数据补上去吧,把脱壳后的程序丢进PEiD中,挑选"附加数据v1.0"插件,在"资源文件"上挑选脱壳前的程序,在"目标文件"上挑选脱壳后的程序,最后点"复制附加数据"便可以把附加数据补上去了.

破解历程
运行脱壳后的程序,发现提醒能否需求注册,点"是",随便注册一下,如图6所示.竟然有这提醒?实在是太需求了,呵呵!
  
图6
用OD载入,利用插件搜索字符串后,没发现图中呈现的提醒内容,所以直接走下断点这条路了.下断点:"bp MessageBoxA",即刻就中止了下来,不过这个不是我们想要的后果,再运行一次,会呈现注册框,这才是需求的,随便注册一下后,便可以中止下来了.

77D5058A u>  8BFF   mov edi,edi
;中止在这里
77D5058C     55     push ebp
77D5058D     8BEC  mov ebp,esp
77D5058F     833D BC04D777 >cmp dword ptr ds:[77D704BC],0
77D50596     74 24  je short user32.77D505BC

撤消方才下的断点,返回去.

10062170  FF15 A0260C10  call dword ptr ds:[<&USER32.MessageB>; user32.MessageBoxA
10062176  5F      pop edi ;返回到这里
10062177  83F8 03  cmp eax,3

本来10062170这里就是调用了那个失利对话框的地方,不管它了,这里的信息用处不大,单步一向走,来到下面的代码处.

00469CBE  E8 DE4A0000  call Unpack.0046E7A1
;机械码
00469CC3  83C4 10   add esp,10
00469CC6  8945 FC   mov dword ptr ss:[ebp-4],eax
00469CC9  68 DA6D4500  push Unpack.00456DDA
;ASCII "SHMILY"
00469CCE  FF75 FC   push dword ptr ss:[ebp-4]
00469CD1  B9 02000000  mov ecx,2
00469CD6  E8 17B2FFFF  call Unpack.00464EF2
;机械码和固定字符串SHMILY衔接起来
00469CDB  83C4 08   add esp,8
00469CDE  8945 F8   mov dword ptr ss:[ebp-8],eax
;eax保存后果
00469CE1  8B5D FC   mov ebx,dword ptr ss:[ebp-4]
………
00469D48  B8 03000000  mov eax,3
00469D4D  E8 314A0000  call Unpack.0046E783
;对上面衔接后的后果举行MD5运算

跟进这个call,可以发现下面的代码.

02109BCB C742 4C 012345>mov dword ptr ds:[edx+4C],67452301
02109BD2 C742 50 89ABCD>mov dword ptr ds:[edx+50],EFCDAB89
02109BD9 C742 54 FEDCBA>mov dword ptr ds:[edx+54],98BADCFE
02109BE0 C742 58 765432>mov dword ptr ds:[edx+58],10325476

由这里可以判断程序利用了MD5密码学算法,持续往下看.

00469D52  83C4 10  add esp,10
00469D55  8945 F0  mov dword ptr ss:[ebp-10],eax
;eax保存后果
……
00469D81  BB 50010000  mov ebx,150
00469D86  E8 0A4A0000  call Unpack.0046E795
;小写转为大写
00469D8B  83C4 10  add esp,10
……
00469DC9  83F8 00  cmp eax,0
00469DCC  B8 00000000  mov eax,0
00469DD1  0F94C0  sete al
;检测条件为真还是为假
00469DD4  8945 E4  mov dword ptr ss:[ebp-1C],eax
00469DD7  8B5D E8  mov ebx,dword ptr ss:[ebp-18]
……
00469DF4  83C4 04  add esp,4
00469DF7  837D E4 00  cmp dword ptr ss:[ebp-1C],0
;对比
00469DFB  0F84 13010000  je Unpack.00469F14
;相等的话就跳到注册失利处
00469E01  6A FF    push -1
……
00469E35 68 A86E4500  push Unpack.00456EA8
;ASCII "SOFTWARE\asklove\autobbs\name"
00469E3A  68 01030080  push 80000301
00469E3F  6A 00  push 0
……
00469E9A  6A 00  push 0
00469E9C  68 C66E4500    push Unpack.00456EC6
; ASCII "SOFTWARE\asklove\autobbs\sn"
00469EA1  68 01030080    push 80000301
00469EA6  6A 00  push 0

很明显,上面就是这个程序的算法部份,简单阐明一下吧.程序将从用户机械上获得的机械码和固定字符串SHMILY衔接起来,然后举行MD5运算,再将其转为大写,就是注册码了,算法非常简单.假如要爆破的话,可以在00469DFB处考虑.注册成功后,注册信息将写入注册表,机械码写到HKEY_LOCAL_MACHINE\SOFTWARE\asklove\autobbs\name中,注册码写到HKEY_LOCAL_MACHINE\SOFTWARE\asklove\autobbs\sn中.

后记
程序算法对比简单,注册机我就不写了,有爱好的朋友可以自行研究一下.既然程序注册算法搞定了,我也用这个东西走走论坛,灌注水先啦


  以上是“一路问情自动注水机破剖解析[网络技术]”的内容,如果你对以上该文章内容感兴趣,你可以看看七道奇为您推荐以下文章:
  • 一路问情自动注水机破剖解析
  • 本文地址: 与您的QQ/BBS好友分享!
    • 好的评价 如果您觉得此文章好,就请您
        0%(0)
    • 差的评价 如果您觉得此文章差,就请您
        0%(0)

    文章评论评论内容只代表网友观点,与本站立场无关!

       评论摘要(共 0 条,得分 0 分,平均 0 分) 查看完整评论
    Copyright © 2020-2022 www.xiamiku.com. All Rights Reserved .