首页
社区
课程
招聘
软件自校检一般断什么函数?
发表于: 2005-8-1 15:04 5325

软件自校检一般断什么函数?

2005-8-1 15:04
5325
软件脱壳后,运行时一闪而过,无从下手,找了很多资料,也看不出个所以然,请问,象这样的自校检一般断什么函数?

[培训]科锐逆向工程师培训第53期2025年7月8日开班!

收藏
免费 0
支持
分享
最新回复 (8)
雪    币: 560
活跃值: (379)
能力值: ( LV13,RANK:1370 )
在线值:
发帖
回帖
粉丝
2
有没有相关的教程
2005-8-1 16:14
0
雪    币: 214
活跃值: (86)
能力值: ( LV6,RANK:90 )
在线值:
发帖
回帖
粉丝
3
可能性很多,一般来说你试一下取文件大小的函数
geifilesize
这个函数对付通过比较脱壳前后文件大小进行自校验的很有用~
2005-8-1 17:55
0
雪    币: 603
活跃值: (617)
能力值: ( LV12,RANK:660 )
在线值:
发帖
回帖
粉丝
4
试试CreateFileA
2005-8-1 19:26
0
雪    币: 260
活跃值: (81)
能力值: ( LV4,RANK:50 )
在线值:
发帖
回帖
粉丝
5
最初由 prince 发布
试试CreateFileA

支持,补一个:fileopen
2005-8-2 01:02
0
雪    币: 227
活跃值: (91)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
6
是不是OpenFile?
FILEOPEN没这个啊。
2005-10-1 21:19
0
雪    币: 233
活跃值: (130)
能力值: ( LV8,RANK:130 )
在线值:
发帖
回帖
粉丝
7
CreateFileW
_lopen
2005-10-2 09:16
0
雪    币: 212
活跃值: (40)
能力值: ( LV4,RANK:50 )
在线值:
发帖
回帖
粉丝
8
碰到好几个软件用常见的都不容易找到关键点。发现用 GetModuleFileNameA好使,下断点后一直f9过每个断点,看哪个断点过后会退出程序,然后ctrl+f2重启,来到刚才f9过后就退出的那个断点处,改用f8下走,密切注意寄存器的值,如果是大小验证,文件大小就会出现在寄存器中,还要注意那些跳转,看哪个跳转后会退出,这样就可以找到关键点了。
2005-10-2 11:01
0
雪    币: 211
活跃值: (10)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
9
WIN32下破解自校验的几个常用的API

1、CRC校验
CreateFileA
ReadFile

2、文件大小校验
Getfilesize
Setfilepointer
FindFirstFileA(哈哈,这个不常用)

0041D6EA           /$  55     push ebp
0041D6EB           |.  8BEC   mov ebp,esp
0041D6ED           |.  81EC 4>sub esp,140
0041D6F3           |.  8D85 C>lea eax,dword ptr ss:[ebp-140]
0041D6F9           |.  57     push edi
0041D6FA           |.  50     push eax                                             ; /pFindFileData
\\如果找到指定的文件,在这个返回数据中,包含了这个文件大小。
0041D6FB           |.  FF75 0>push dword ptr ss:[ebp+8]                            ; |FileName
0041D6FE           |.  FF15 4>call dword ptr ds:[<&kernel32.FindFirstFileA>]       ; \FindFirstFileA
0041D704           |.  8BF8   mov edi,eax
0041D706           |.  83FF F>cmp edi,-1
0041D709           |.  75 3F  jnz short dumped_2.0041D74A
2005-10-2 14:44
0
游客
登录 | 注册 方可回帖
返回