好友
阅读权限25
听众
最后登录1970-1-1
|
一般的暴力破解,是在对比输入码加密后的值与正确值以后,进行强制跳转,验证机制:
…… (假定是我们按下注册按钮之后 注册信息的验证从这里开始)
CALL XXXX0001(这里取注册码长度)
JEN (不等于软件正确的注册码长度则跳向注册失败)
……
CALL XXXX0002(取软件的机器码——很多软件的注册方式都采取一机**的形式)
……
CALL XXXX0003(看机器码是否为空)
……
CALL XXXX0004(其他)
……
CALL XXXX0005(其他)
……
CALL XXXX0006(算法CALL)
TEST AL, AL(标志位比较)
JNE (关键跳转 如果AL标志位为0则跳转)
……
CALL XXXX0007(若上方不跳 则弹出注册成功)
……
CALL XXXX0008(向系统写入注册信息)
RETN
……
CALL XXXX0009(软件注册失败)
……
RETN
(验证机制来自于《飘云阁论坛07版破解基础教程》)
而我想到的是,在第一个CALL就跳,也就是不用取得输入值,也不用加密,也不用对比,直接跳到“成功”。验证机制为:
…… (假定是我们按下注册按钮之后 注册信息的验证从这里开始)
JMP XXXX0007(这里直接跳转到则弹出注册成功处)
JEN (不等于软件正确的注册码长度则跳向注册失败)
……
CALL XXXX0002(取软件的机器码——很多软件的注册方式都采取一机**的形式)
……
CALL XXXX0003(看机器码是否为空)
……
CALL XXXX0004(其他)
……
CALL XXXX0005(其他)
……
CALL XXXX0006(算法CALL)
TEST AL, AL(标志位比较)
JNE (关键跳转 如果AL标志位为0则跳转)
……
CALL XXXX0007(若上方不跳 则弹出注册成功)
……
CALL XXXX0008(向系统写入注册信息)
RETN
……
CALL XXXX0009(软件注册失败)
……
RETN
表现为:点“注册”就“成功”。这种方式还可以过某种或多种保护。(那次的Crak Me用一般的方法总是不成功,而介绍也说有保护.而这种方法却成功) 不过感觉程序有可能会出错,应该是寄存器里的数据未释放吧?这种方法也可以用来过保护。但我却没出错过。 |
|
发帖前要善用【论坛搜索】功能,那里可能会有你要找的答案或者已经有人发布过相同内容了,请勿重复发帖。 |
|
|
|
|