加密狗技术网 加密技术 使用dll进行验证的注册方式

使用dll进行验证的注册方式

暴破之瞒天过海 分析某软件的注册验证, 发现它是通过调用一个dll来判断keyfile内容是否正确, 是否在使…

暴破之瞒天过海

分析某软件的注册验证, 发现它是通过调用一个dll来判断keyfile内容是否正确, 是否在使用期之内, 并且这个子程序作的很是复杂, 当然如果想找算法还是能找得到:) 如keyfile正确, 则返回eax=0, 并且内存某位置的8个字节应该为固定的一个值. 这样, 分析dll文件, 发现它仅有这一个导出的函数, 那么仿造这样一个dll是完全可行的。内容简单如下:

.386
.model flat,stdcall
option casemap:none
include \masm32\include\windows.inc
include \masm32\include\user32.inc
include \masm32\include\kernel32.inc
includelib \masm32\lib\user32.lib
includelib \masm32\lib\kernel32.lib

.data
.RADIX 16
SomeThing db 26, 1d, 28, 15, 34, 5d, 08, 4b, 10, 1b, 00
.code
.RADIX 16
DllEntry proc hInstDLL:HINSTANCE, reason:DWORD, reserved1:DWORD
mov eax,TRUE
ret
DllEntry Endp
;—————————————————————————————————
;反击1。
;—————————————————————————————————-
XXXX proc
push ecx
push esi
push edi
mov edi, dword ptr [esp+14] ;待赋值内存位置
lea esi, SomeThing
push 0b
pop ecx
rep movsb
pop edi
pop esi
pop ecx
xor eax, eax ;正确的返回值
ret 0c ;入栈有三个参数,保持stack平衡
XXXX endp

End DllEntry

本文来自网络,不代表加密狗技术网立场,转载请注明出处:http://www.crackgou.com/jishu/265.html

作者: admin

发表评论

您的电子邮箱地址不会被公开。 必填项已用*标注

联系我们

联系我们

000-00000000

在线咨询: QQ交谈

邮箱: wolfree@qq.com

工作时间:8:00-23:00

关注微信
微信扫一扫关注我们

微信扫一扫关注我们

关注微博
返回顶部