爆破原理与断点设置

注释:该漏洞的名称是程序代码被暴力修改以达到破解的目的。


当然,按照共享软件的注册方式,我们可以采取补救措施。

例如,未注册的软件有功能限制、频率限制、使用日期限制等。


我们可以互相对待,我们只需要解除这些限制,自然达到打破它的目的!

暴力破解






该漏洞的名称是程序代码被暴力修改以达到破解的目的。


当然,按照共享软件的注册方式,我们可以采取补救措施。

例如,未注册的软件有功能限制、频率限制、使用日期限制等。


我们可以互相对待,我们只需要解除这些限制,自然达到打破它的目的!

暴力破裂的一般过程


1,贝壳人自然得先脱下贝壳。


2。试着注册一个提示。让我们抓住一条小尾巴。


三.如果你有一个提示,使用OD动态调试器或W32静态调试找到错误提示


4,来到错误提示,分析代码,找到键调用,键跳转!


5。修改代码


6,复制和保存!

如果没有提示,我们可以使用大量断点来完成这些操作。


现在有保护软件的方法。


1,序列号保护模式(注册码= F(机器码/序列号))


2,警告(NAG)窗口


3、时限/时间限制。


4、菜单功能限制


5、密钥文件保护


6、光盘检查


7。只运行一个实例

有些软件通过在INI文件、注册表、DAT文件中保存注册代码来实现注册验证。

常用断点设置(后跟常用)

字符串


BP getdlgitemtexta(W)*


BP getdlgitemint


BP getwindowtexta(W)*


BP获得指定窗口结构的信息


英国商人服务协会XXXX wm_gettext

对话框


bp MessageBeep


BP MessageBoxA(W)*


BP messageboxexa(W)


BP dialogboxparama(W)


BP greatewindowexa(W)


BP ShowWindow


BP UpdateWindow


英国商人服务协会XXXX wm_command

VB程序不能与BP MessageBoxA破碎,BP rtcmsgbox

注册表相关


BP regcreatekeya(W)


BP regdeletekeya(W)


BP regqueryvaluea(W)


BP regclosekey


BP regopenkeya(W)*

时间相关


获取本地时间


获取文件时间


BP GetSystemTime

光盘或磁盘相关


BP getfileattributesa(W)


BP得到指定文件的大小


BP GetDriveType


BP GetLastError


BP ReadFile


及H(光盘端口地址)R

软件狗


278r及H


378r及H

初始化文件关联


BP getprivateprofilestringa * * * * * * * * *


BP getprivateprofileint


BP WritePrivateProfileString


BP WritePrivateProfileInt

文件访问相关


BP ReadFile


BP WriteFile


BP CreateFileA * * * * * * * * *


BP SetFilePointer


BP getsystemdirectory


特定断点程序:


创建msvbvm60!rtcmsgbox


创建msvbvm60!__vbastrcmp


创建msvbvm60!__vbastrcomp


创建msvbvm60!__vbastrcompvar


创建msvbvm60!__vbastrtextcmp


创建msvbvm60!__vbafileopen


创建msvbvm60!__vbainputfile


创建msvbvm60!__vbafileseek


创建msvbvm60!__vbawritefile


创建msvbvm60!__vbafileclose


创建msvbvm60!rtcfileattributes


创建msvbvm60!rtcfiledatetime


创建msvbvm60!rtcfilelen


创建msvbvm60!rtcfilelength


创建msvbvm60!__vbavarint


创建msvbvm60!__vbavarcmpge


创建msvbvm60!__vbavarcmpgt


创建msvbvm60!__vbavarcmple


创建msvbvm60!__vbavarcmplt


创建msvbvm60!__vbavarcmpne


创建msvbvm60!__vbavartextcmpeq


创建msvbvm60!__vbavartextcmpge


创建msvbvm60!__vbavartextcmpgt


创建msvbvm60!__vbavartextcmple


创建msvbvm60!__vbavartextcmplt


创建msvbvm60!__vbavartextcmpne


创建msvbvm60!__vbavartexttsteq


创建msvbvm60!__vbavartexttstge


创建msvbvm60!__vbavartexttstgt


创建msvbvm60!__vbavartexttstle


创建msvbvm60!__vbavartexttstlt


创建msvbvm60!__vbavartexttstne


创建msvbvm60!__vbavartsteq


创建msvbvm60!__vbavartstge


创建msvbvm60!__vbavartstgt


创建msvbvm60!__vbavartstle


创建msvbvm60!__vbavartstlt


创建msvbvm60!__vbavartstne


注意:VB程序仍然可以使用正常的API函数,只要函数是最后的调用就是函数。


断点以上对应VB6的程序,如果它是VB5程序的msvbvm60改为msvbvm50