爆破PB程序的一点资料

Eddy 发布于2010-3-2 18:21:59 分类: 加密解密 已浏览loading 网友评论0条 我要评论

PB程序反编译可得到源码,做注册机的相关文章很多,但要爆破有些难度……

收集了些资料:

pb关键指令
>c5
<d1
<>b5
=a5
<=e9
>=dd
or 22
and 21
not 23
ture 01
false 00
return 39

 D6 < ; CA > ; BF <> ;AE = ;      

AA = ; BA <>;

找相关指令的16进制对应码最笨的办法就是自己写程序对比,例如:

string x
string y
integer m

if x<>y then
  m = 9999
endif

if x=y then
  m=9999
endif

编译后分析相关的pbd文件就可以知道<>和=分别对应的16进制码了。其余同理……


查找字符串 xxxxxx,往下几行。熟悉 PB 编程的应该都知道怎样去修改 16 进制代码,11 00 00 00 代表变量位置(或变量代号),01 00 00 00 代表变量初始值,00 05 07 00 代表数据类型。

winhex搜索出的相关字符串,字符串前是有其特征的……

CALL DWORD PTR DS:[EAX+10DF2B80]即是程序解释的入口,根据EAX值的不同,程序call到不同位置执行不同任务,如读取程序的代码,然后解释执行程序等。猜测EAX=93C时比较是否大于,EAX=804时比较逻辑值是否相等。
调用msvcrt.dll 的 _mbscmp函数进行比较,几乎pb程序都用这个比较字符串。

直接下断点 BP MessageBoxA,当断下来以后取消断点,Ctrl+F9返回两次,返回后的CALL就是PB全部的函数调用的地方。

常用的对话框提示,可用fnMessageBox,Ascii字符串比较是ot_ansi_strcmp。

已经有(0)位网友发表了评论,你也评一评吧!
原创文章如转载,请注明:转载自Eddy Blog
原文地址:http://www.rrgod.com/decryption/387.html     欢迎订阅Eddy Blog

关于 PB  爆破  的相关文章

记住我的信息,下次不用再输入 欢迎给Eddy Blog留言