-
-
[旧帖] [邀请码已发][原创]对评估版软件的修改(申请邀请码) 0.00雪花
-
发表于: 2010-1-16 23:24 951
-
我经常使用的一款软件,我暂且称呼它为A. 我安装的是评估版,在使用时功能上和正版都一样,差别是软件的标题注明了是评估版,还有在每次使用时都会提示我去注册. 所以就拿A评估版软件练练手,还请各位大侠指点. 也希望能获得邀请码.
思路:
1:A软件的标题被修改成了含有"评估版"的字,所以我用ctrl +N打开输入表,查打SetWindowsTextW(A)函数.在命名行对SetWindowsTextW下断点,因为是中文的所以估计是UNICODE版.如果这一步没有截到, 下一步会用DrawText来,因为有的Title是自绘.
2:A软件会弹出注册对话框,对照输入函数,在命令行输入bp DialogBoxParamA,如果没截到,我会用CreateWindow来下断点.
下面我来稍微叙述过程.
让ollyDBG分析打开的exe程序.
第一步:通过在SetWindowsTextW函数上设断点,按Atl + F9返回到调用函数,
到了应用程序领空,经过分析,标题是由外部传进来的,按Ctrl + F9到返回,到上级调用函数.
对该函数分析,断定是函数负责生成标题.对该函数进行修改,00443841这一行改为JMP,并用NOP填充.这样就可以避免生成"评估版"的标题
第二步:在将弹出注册对话框时,断点停在了DialogBoxParamA处,返回应用程序领空.
查看调用处汇编代码,由于0043FF0E这一行最为可疑是去调用验证函数.进入其后的被调用函数.
我注意在后面有对EAX的操作,故可以不管前面的比较结果,结合该函数调用处的下一句是TEST EAX, EAX来判断是否跳往对话框.所以直接把Add eax, -2改为xor eax, eax,用NOP填充.如果仅是为了不弹出对话框可以直接用JMP,但是该验证函数的调用函数有许多,所以在该函数中改.
经过上述的修改,程序达到了预期的目的.
思路:
1:A软件的标题被修改成了含有"评估版"的字,所以我用ctrl +N打开输入表,查打SetWindowsTextW(A)函数.在命名行对SetWindowsTextW下断点,因为是中文的所以估计是UNICODE版.如果这一步没有截到, 下一步会用DrawText来,因为有的Title是自绘.
2:A软件会弹出注册对话框,对照输入函数,在命令行输入bp DialogBoxParamA,如果没截到,我会用CreateWindow来下断点.
下面我来稍微叙述过程.
让ollyDBG分析打开的exe程序.
第一步:通过在SetWindowsTextW函数上设断点,按Atl + F9返回到调用函数,
到了应用程序领空,经过分析,标题是由外部传进来的,按Ctrl + F9到返回,到上级调用函数.
对该函数分析,断定是函数负责生成标题.对该函数进行修改,00443841这一行改为JMP,并用NOP填充.这样就可以避免生成"评估版"的标题
第二步:在将弹出注册对话框时,断点停在了DialogBoxParamA处,返回应用程序领空.
查看调用处汇编代码,由于0043FF0E这一行最为可疑是去调用验证函数.进入其后的被调用函数.
我注意在后面有对EAX的操作,故可以不管前面的比较结果,结合该函数调用处的下一句是TEST EAX, EAX来判断是否跳往对话框.所以直接把Add eax, -2改为xor eax, eax,用NOP填充.如果仅是为了不弹出对话框可以直接用JMP,但是该验证函数的调用函数有许多,所以在该函数中改.
经过上述的修改,程序达到了预期的目的.
[培训]内核驱动高级班,冲击BAT一流互联网大厂工作,每周日13:00-18:00直播授课
赞赏
他的文章
- 软件的lincense生成可根据哪部份硬件信息来做? 4757
- [分享]创建驱动项目模板 3179
- 确定机器码的问题 3509
- [邀请码已发][原创]对评估版软件的修改(申请邀请码) 952
- [讨论]关于搭建学习汇编环境的分享 1756
看原图
赞赏
雪币:
留言: