首页
社区
课程
招聘
新手请教:Adult PDF Password Recovery应该如何下断点?
发表于: 2004-4-25 20:16 8248

新手请教:Adult PDF Password Recovery应该如何下断点?

2004-4-25 20:16
8248
我试过了:GetDlgItemText, GetWindowText都不行,还请高手指点!
原版下载:http://www.adultpdf.com/products/pwdremover/pwdremover.exe
用BC++写的
PS:第一次发帖,如果违反版规之处烦请版主删之

[招生]科锐逆向工程师培训(2024年11月15日实地,远程教学同时开班, 第51期)

收藏
免费 6
支持
分享
最新回复 (10)
雪    币: 225
活跃值: (100)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
2
各位高手,麻烦给个方向也好啊,先谢过了
2004-4-26 11:14
0
雪    币: 200
活跃值: (10)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
3
先反汇编看看,有无可疑之处,再设断
2004-4-26 11:39
0
雪    币: 279
活跃值: (375)
能力值: ( LV9,RANK:250 )
在线值:
发帖
回帖
粉丝
4
对bcd编写的软件,用GetDlgItemTextA并不能取到有用的信息。请用DeDe反汇编,看能不能找到关键点
2004-4-26 13:04
0
雪    币: 225
活跃值: (100)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
5
搞定了,多谢楼上两位,特别是lordor
2004-4-26 13:47
0
雪    币: 200
活跃值: (10)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
6
看了一下
这个东东不Register有什么限制么?
用bp MessageBoxA就可以找到地方吧
可里面好像还有其它的代码
2004-4-26 23:41
0
雪    币: 225
活跃值: (100)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
7
最初由 xuanqing 发布
看了一下
这个东东不Register有什么限制么?
用bp MessageBoxA就可以找到地方吧
可里面好像还有其它的代码

请问用MessageBoxA怎么找到关键代码?多谢!
2004-4-27 10:27
0
雪    币: 279
活跃值: (375)
能力值: ( LV9,RANK:250 )
在线值:
发帖
回帖
粉丝
8
用这个断点更快,

0040466A  ADD ESP,8
0040466D  PUSH ESP                                 ; /IniFileName
0040466E  PUSH 100                                 ; |BufSize = 100 (256.)
00404673  LEA EAX,DWORD PTR SS:[ESP+108]           ; |
0040467A  PUSH EAX                                 ; |ReturnBuffer
0040467B  PUSH 0                                   ; |Default = NULL
0040467D  PUSH Adult_PD.004D8896                   ; |Key = "Mail"
00404682  PUSH Adult_PD.004D8885                   ; |Section = "Decrypt_Register"
00404687  CALL <JMP.&KERNEL32.GetPrivateProfileStr>; \GetPrivateProfileStringA
0040468C  PUSH ESP                                 ; /IniFileName
0040468D  PUSH 100                                 ; |BufSize = 100 (256.)
00404692  LEA EDX,DWORD PTR SS:[ESP+208]           ; |
00404699  PUSH EDX                                 ; |ReturnBuffer
0040469A  PUSH 0                                   ; |Default = NULL
0040469C  PUSH Adult_PD.004D88AC                   ; |Key = "Serial"
004046A1  PUSH Adult_PD.004D889B                   ; |Section = "Decrypt_Register"
004046A6  CALL <JMP.&KERNEL32.GetPrivateProfileStr>; \GetPrivateProfileStringA
2004-4-27 12:36
0
雪    币: 225
活跃值: (100)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
9
又学了一手:D
2004-4-27 14:03
0
雪    币: 200
活跃值: (10)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
10
最初由 lordor 发布
用这个断点更快,

0040466A ADD ESP,8
0040466D PUSH ESP ; /IniFileName
0040466E PUSH 100 ; |BufSize = 100 (256.)
00404673 LEA EAX,DWORD PTR SS:[ESP+108] ; |
0040467A PUSH EAX ; |ReturnBuffer
0040467B PUSH 0 ; |Default = NULL
0040467D PUSH Adult_PD.004D8896 ; |Key = "Mail"
00404682 PUSH Adult_PD.004D8885 ; |Section = "Decrypt_Register"
00404687 CALL <JMP.&KERNEL32.GetPrivateProfileStr>; \GetPrivateProfileStringA
0040468C PUSH ESP ; /IniFileName
0040468D PUSH 100 ; |BufSize = 100 (256.)
00404692 LEA EDX,DWORD PTR SS:[ESP+208] ; |
00404699 PUSH EDX ; |ReturnBuffer
0040469A PUSH 0 ; |Default = NULL
0040469C PUSH Adult_PD.004D88AC ; |Key = "Serial"
004046A1 PUSH Adult_PD.004D889B ; |Section = "Decrypt_Register"
004046A6 CALL <JMP.&KERNEL32.GetPrivateProfileStr>; \GetPrivateProfileStringA

哦,我没静态分析
不过总觉的sn的算法太...
就查了长度和两个字节??
2004-4-27 21:41
0
雪    币: 225
活跃值: (100)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
11
每个字节都查到了,最后只用了两个,这个软件系列算法差不多
2004-4-27 21:46
0
游客
登录 | 注册 方可回帖
返回
//