软件逆向之3层网络验证

图片[1]-软件逆向之3层网络验证-软件安全逆向社区论坛-技术社区-学技术网

图片[1]-软件逆向之3层网络验证-软件安全逆向社区论坛-技术社区-学技术网

图片[1]-软件逆向之3层网络验证-软件安全逆向社区论坛-技术社区-学技术网

这个辅助,看似是裸奔,其实不容易,网络验证是加密密钥+解密密钥,公钥公开透明,私钥是卡密。首先做的是右键用户模块的字符串,搜POST(因为:post与get是网络验

图片[4]-软件逆向之3层网络验证-软件安全逆向社区论坛-技术社区-学技术网

 

证定经过的地方)往上翻,目的是找他数据传输的地方下断点,发现了一连串的mov,mov,mov连续。可以在头节点下断,找引用,能找出几个call,也都全部下断,先用正确卡密点进去,往往call 0xXXXXX后面接mov xxxx,eax(这是一个比较典型的赋值),cal和mov全部下断点。单步到下一个内层,

图片[5]-软件逆向之3层网络验证-软件安全逆向社区论坛-技术社区-学技术网

然后运行到mov 就可以发现,eax 的地址被某个地址赋值,找出该地址,把里面的包全部赋值下来,入栈括号起,括号回结束,赋值二进制代码/ASCII码。

 

 

 

 

在call命令处,汇编,打个补码(补码应该位内存区域空白处,或者申请内存)。类似mov eax,xxXXX形式。补码后发现,第一步过去部分功能按键,但我列表框并没有加载出现,并且报错。那么,单步到底。
利用连片jmp位置,下断点,单步走到正确卡密加载位置,拿到正确的数据。成功的加载了功能事件和主窗体。2,发现功能好像用不了,首先用正确卡密进入补丁程序,发现正确卡密也无法利用功能,那么问题可能是我补丁打错了或者还有一个解密密钥。继续往上翻,在提示框的跳转上面翻到了有关于他的call。

图片[6]-软件逆向之3层网络验证-软件安全逆向社区论坛-技术社区-学技术网

 

//找call的特征是
call 0x0000
mov dword ptr ss:[??], eaxmov ebx, dword ptr ss:[??]
text A,B
有几处找几处,我找到之后,继续用正确的卡密进入,断在call下面的mov,获取正确的mov来进行补码。我成功的破解掉之后,也确实进去了,但是还有部分功能出现失效。思考了很久。
last but not least,我找到原因了,处于跳转上方的两个call,我一直以为是两个数据包,解析喂给ai找差异发现,数据包里面竟然有几个符号是不一样的。最终破解成功了。图片[1]-软件逆向之3层网络验证-软件安全逆向社区论坛-技术社区-学技术网

图片[1]-软件逆向之3层网络验证-软件安全逆向社区论坛-技术社区-学技术网

图片[1]-软件逆向之3层网络验证-软件安全逆向社区论坛-技术社区-学技术网

 

 

 

 

 

         

请登录后发表评论

    没有回复内容