【逆向破解】公式化破解无壳E盾和技巧
作者:collapse时间:2024-08-03 19:04:15
建议看一下我发的基础教程再来看
汇编指令:待写
od的新手教学:待写
破解一个最简单的登录软件和认识常见壳:待写
还是想先写点简单的东西,希望对正在学的人看了有帮助。
e盾这个东西其实挺广为人知的,现在很多验证都是以e盾为基础开发的。
然后我们首先从最简单的无壳E盾开始来,由于老博客的图片都没了,有一个练手的软件也没了(还是能找找)
然后我翻到了个以前写的小玩具
干脆给他上个壳模拟破解一下吧
这个大火应该不陌生,很多倒卖b也喜欢给免费软件套这个玩意然后卖。
然后我们省掉差壳这一步直接开始(我没加)
我们先放od里直接运行一下,会直接跳出一个非法工具,这是源码里的od检测子程序(ed已经开源了,可以边看源码边破)
过掉的办法其实很简单,如果是没加任何壳的情况下可以直接搜字符到非法的地方,也可以通过给(5E 6A 00 4B 75 FB)下断点直接无脑tp
但是由于是无壳和篇幅有限,我们直接搜字符快速tp
这里的源码原理是只要返回的是1就说明程序正在被调试然后触发非法,所以正攻是mov eax 0来绕过,也可以直接ret
成功跳过非法,然后到登录环节,这里我们先在按钮事件(FF 55 FC 5F 5E)下一个断点,随后乱输一个卡号点击登录
随后进入call 单步向下,这里有一个关键跳,跳转前有一个判断变量4,我们来看看是从哪赋值的。
可以看到经过这个call之后给了变量4,说明这个call是判断用户登录的,我们下个断,忽略前面的vm代码找到向下,我们进去看看,跟进两次后到了语言体,这个是没法vm的就算vm了也能暴力还原。
然后继续运行,如果发现这里变成了我们输入的卡密,就说明我们在验证call里,然后单步向下出去,这里就是网络验证call了
直接改掉,其实在没有vm的情况下直接搜sub esp,0x20也可以直接tp或在5E 6A 00 4B 75 FB下断点,出现两次卡密后单步到ret直接eax=1,随后验证阶段我们就过了,但是e盾还有一个合法验证
节省就不一层一层找了,大火可以直接sub esp,0x84tp到call单步往下到ret
然后 leave ret就行,一般到这直接运行就可以直接进软件了
虽然后面还有一个js验证(这个在vm篇会讲),但是现在一般很多无壳挂都不会调用js验证,例如老博客的某冬和狗叫挂,过掉合法往下就能直接进了
不知道这3软件还在不在,不然可以发给大火练练,狗叫挂的调试检测是自己改的,在骂人的开头有一个验证跳,直接经典连招就行。某东过掉合法就可以了
唉,到最后也只剩个数据库,网站源码没备份