gridview 编辑-笔记本触摸板关不掉
![msvbvm60 dll下载](/uploads/image/0281.jpg)
2023年4月3日发(作者:金山清理专家下载)
rockey4无狗解狗,其实不难
破解作者】兔八哥(孔子后裔)
【作者邮箱】[email]kongzi1975@[/email]
【使用工具】ollydbf,hiew,w32Dasm
【破解平台】Win9x/NT/2000/XP
【软件名称】某省组织干部信息管理系统
【软件简介】无狗可安装,运行有提示
【软件大小】150M
【加壳方式】无
【破解声明】我是一只小菜鸟,偶得一点心得,愿与大家分享:)
--------------------------------------------------------------------------------
【破解内容】
rockey4无狗解狗,其实不难
一、首先,用PEiD检查是VB60,没有加壳。
二、查狗型号,有的放矢。下载了不少软件,想要查查狗狗的类型,但是全部不行。无奈继续学习网上下
载的文章,发现无非就几种常见的狗狗。
Sentinel,Rockey,STN,金天地MH等。根据介绍逐个查找他们的特征文件,结果找到rockey4。dll。这
么简单我就判
断出我的加密狗的类型。
三、细读破文,了解到破解rockey4型加密狗的特点:找到读狗的call,使得返回0和四个种子码符合要
求。
庆幸的是,恰恰有一个破文,题目叫《破解Rockey狗,菜鸟练手,请多指教》,它说编辑中
的
100015FA|>66:8B442410MOVAX,WORDPTRSS:[ESP+10]为
decax
其余补为NOP
即可使得返回0。dec什么意思我不明白,谁告诉我?改之,果然找到小狗。但是提示系统标识错误!
运行ollydb,加载软件,设置断点在kernel里的deviceiocontrol。按8下F9进入登陆界面。
点击登录后再次中断,按下F9三次,程序运行并且显示错误对话框。
注意,来到登陆界面后,第二次和第三次的中断显示RYDLL32字样,在ollydb的右下窗里。我是多次试验
才发现的,
估计程序就是在这两次开始读狗的。
0012EC18100015E5/CALL到DeviceIoControl来自100015DF
0012EC1C000002E8|hDevice=000002E8
0012EC20A410E400|IoControlCode=A410E400
0012EC240012EC84|InBuffer=0012EC84
0012EC2800000028|InBufferSize=28(40.)
0012EC2C0012EC4C|OutBuffer=0012EC4C
0012EC3000000002|OutBufferSize=2
0012EC340012EC80|pBytesReturned=0012EC80
0012EC3800000000pOverlapped=NULL
那么如何找到读狗的关键call?这是重点。我的汇编语言非常低等,失败多次后才明白,第二次和第三次
中断后停在
了关键call的内部,只要用F7单步运行,逐步就会回到主程序的某句上,这句的上句就是那个call。多简
单!!
我花了几天的时间才明白!
00A03811.50pusheax
00A03812.8D55A8leaedx,dwordptrss:[ebp-58]
00A03815.51pushecx
00A03816.52pushedx
00A03817.6A01push1
00A03819.E83687A5FFcallPMIS.0045BF54
00A0381E.8985A0FEFFFFmovdwordptrss:[ebp-160],eax**返回到这里,上句就是读狗的CALL
1588104000calldwordptr
ds:[<&MSVBVM60.__vbaSe>;MSVBVM60.__vbaSetSystemError
00A0382A.8B859CFEFFFFmoveax,dwordptrss:[ebp-164]
00A03830.8B3574134000movesi,dwordptr
ds:[<&MSVBVM60.__vb>;MSVBVM60.__vbaVarCopy
00A03836.8D9504FFFFFFleaedx,dwordptrss:[ebp-FC]
00A0383C.8D4DC0leaecx,dwordptrss:[ebp-40]
00A0383F.89850CFFFFFFmovdwordptrss:[ebp-F4],eax
00A03845.C78504FFFFFF0>movdwordptrss:[ebp-FC],3
我发现读狗的call是0045BF54,它由三个地址来自:00A03819,00A03A8800A03B73
这三个里面的je必须跳,不然找不到小狗。
00A0381E.8985A0FEFFFFmovdwordptrss:[ebp-160],eax
1588104000calldwordptr
ds:[<&MSVBVM60.__vbaSe>;MSVBVM60.__vbaSetSystemError
00A0382A.8B859CFEFFFFmoveax,dwordptrss:[ebp-164]
00A03830.8B3574134000movesi,dwordptr
ds:[<&MSVBVM60.__vb>;MSVBVM60.__vbaVarCopy
00A03836.8D9504FFFFFFleaedx,dwordptrss:[ebp-FC]
00A0383C.8D4DC0leaecx,dwordptrss:[ebp-40]
00A0383F.89850CFFFFFFmovdwordptrss:[ebp-F4],eax
00A03845.C78504FFFFFF0>movdwordptrss:[ebp-FC],3
6callesi;<&MSVBVM60.__vbaVarCopy>
00A03851.8B8D98FEFFFFmovecx,dwordptrss:[ebp-168]
00A03857.8D95F4FEFFFFleaedx,dwordptrss:[ebp-10C]
00A0385D.898DFCFEFFFFmovdwordptrss:[ebp-104],ecx
00A03863.8D4DACleaecx,dwordptrss:[ebp-54]
00A03866.C785F4FEFFFF0>movdwordptrss:[ebp-10C],3
6callesi
00A03872.66:8B95B0FEFFF>movdx,wordptrss:[ebp-150]
00A03879.8D4D98leaecx,dwordptrss:[ebp-68]
00A0387C.66:8995ECFEFFF>movwordptrss:[ebp-114],dx
00A03883.8D95E4FEFFFFleaedx,dwordptrss:[ebp-11C]
00A03889.C785E4FEFFFF0>movdwordptrss:[ebp-11C],2
6callesi
00A03895.66:8B85ACFEFFF>movax,wordptrss:[ebp-154]
00A0389C.8D95D4FEFFFFleaedx,dwordptrss:[ebp-12C]
00A038A2.8D4D88leaecx,dwordptrss:[ebp-78]
00A038A5.66:8985DCFEFFF>movwordptrss:[ebp-124],ax
00A038AC.C785D4FEFFFF0>movdwordptrss:[ebp-12C],2
6callesi
00A038B8.66:8B8DA8FEFFF>movcx,wordptrss:[ebp-158]
00A038BF.8D95C4FEFFFFleaedx,dwordptrss:[ebp-13C]
00A038C5.66:898DCCFEFFF>movwordptrss:[ebp-134],cx
00A038CC.8D8D78FFFFFFleaecx,dwordptrss:[ebp-88]
00A038D2.C785C4FEFFFF0>movdwordptrss:[ebp-13C],2
6callesi
00A038DE.66:8B95A4FEFFF>movdx,wordptrss:[ebp-15C]
00A038E5.8D8D64FFFFFFleaecx,dwordptrss:[ebp-9C]
00A038EB.66:8995BCFEFFF>movwordptrss:[ebp-144],dx
00A038F2.8D95B4FEFFFFleaedx,dwordptrss:[ebp-14C]
00A038F8.C785B4FEFFFF0>movdwordptrss:[ebp-14C],2
6callesi
00A03904.8B8554FFFFFFmoveax,dwordptrss:[ebp-AC]
00A0390A.8D8D5CFFFFFFleaecx,dwordptrss:[ebp-A4]
00A03910.50pusheax
00A03911.51pushecx
1530124000calldwordptr
ds:[<&MSVBVM60.__vbaSt>;MSVBVM60.__vbaStrToUnicode
00A03918.8D8D54FFFFFFleaecx,dwordptrss:[ebp-AC]
15E8134000calldwordptrds:[<&MSVBVM60.__vbaFr>;MSVBVM60.__vbaFreeStr
00A03924.66:39BDA0FEFFF>cmpwordptrss:[ebp-160],di
00A0392B.0F84BF000000jePMIS.00A039F0这里跳了就提示没有狗,改了RYDLL32后,这
里自然不会跳转
00A03931.B904000280movecx,80020004
00A03936.B80A000000moveax,0A
00A0393B.898D1CFFFFFFmovdwordptrss:[ebp-E4],ecx
00A03941.898D2CFFFFFFmovdwordptrss:[ebp-D4],ecx
00A03947.8D95F4FEFFFFleaedx,dwordptrss:[ebp-10C]
00A0394D.8D8D34FFFFFFleaecx,dwordptrss:[ebp-CC]
00A03953.898514FFFFFFmovdwordptrss:[ebp-EC],eax
00A03959.898524FFFFFFmovdwordptrss:[ebp-DC],eax
00A0395F.C785FCFEFFFF1>movdwordptrss:[ebp-104],PMIS.00451>
00A03969.C785F4FEFFFF0>movdwordptrss:[ebp-10C],8
继续跟踪。
00A04139.8B8574FFFFFFmoveax,dwordptrss:[ebp-8C]
00A0413F.66:8BCFmovcx,di
00A04142.83C40Caddesp,0C
00A04145.66:03C8addcx,ax
00A04148.0F8059010000joPMIS.00A042A7这个如果跳出就是溢出错误
00A0414E.66:85C9testcx,cx
00A04151.0F85C3000000jzPMIS.00A0421A这里如果跳转,就是成功进入!
00A04157.66:03F8adddi,ax
00A0415A.0F8047010000joPMIS.00A042A7
00A04160.66:83FF01cmpdi,1
00A04164.0F84B0000000jePMIS.00A0421A这里如果跳转,就是成功进入!
00A0416A.B90A000000movecx,0A
00A0416F.B804000280moveax,80020004
00A04174.898D14FFFFFFmovdwordptrss:[ebp-EC],ecx
00A0417A.898D24FFFFFFmovdwordptrss:[ebp-DC],ecx
08000000movedi,8
00A04185.8D95F4FEFFFFleaedx,dwordptrss:[ebp-10C]
00A0418B.8D8D34FFFFFFleaecx,dwordptrss:[ebp-CC]
好了,用hiew改之,成功!
--------------------------------------------------------------------------------
【破解总结】
不知道为什么,我一直没有找到返回的四个种子,倒是通过不断的测试跳转,找出了爆破之路。幸好先前
改好了
RYDLL32。dll,不让早被跳转弄晕头转向了。
感觉加密狗其实比变态的序列号保护方式简单些,也许是软件作者大意吧。反正我成功了!!
--------------------------------------------------------------------------------
【版权声明】本文纯属技术交流,转载请注明作者并保持文章的完整,谢谢!
更多推荐
msvbvm60 dll下载
发布评论