gridview 编辑-笔记本触摸板关不掉

msvbvm60 dll下载
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下载