Unity3d动态调式研究
本文作者:七少月作者:七少月 Unity3d动态调式,一般而言可知,U3D最重要是dll,我们分两种情况:一、DLL有加密壳:动态调式其实最精髓的用法就是在静态分析不容易或无法静态分析时,也就是脱壳。现今,我认为有以下几种方法可以解决DLL被加密壳加密的情况:1.直接使用ida反编译libmono.so,寻找关键函数处的解密代码,这样办法类似于静态分析,其实libmono.so中确实存在着DLL的加密和解密算法,但如果加密太难静态分析,还是要用动态调式这个so。如果so无法附加怎么办?就按照我给的解决办法,开两个IDA,一个下断,一个附加,具体可以自己实现;2. 使用gdb附加,gcore,在core文件中寻找相关MZ头和尾巴original filename:assembly-csharp.dll,掐头去尾。标准的GDB动态调式,IDA中也有GDB调式的功能,也可以单独去使用GDB工具。3. 对libmono.so的关键函数进行hook。JAVA可以HOOK,签名也可以HOOK,SO肯定也能HOOK。关键是借助libsubtrate.so或者subtrate这个HOOK工具;4. 利用IDA对DLL进行动态脱壳。这和IDA动态脱SO壳类似,既然可以脱SO壳,肯定也能脱DLL壳,实际上,DLL脱壳还出现更早。只要把握住地址和大小,脱壳就可以成功,这里可以借助自动IDADUMP插件。如下图:
5. HOOK DLL,我们知道可以HOOK JAVA、SO、签名、函数等等,为何不能挂钩C#,勾住DLL,或者挂钩在调用该DLL之前的JAVA代码里,HOOK DLL应该可行,先写一个hook.dll,然后让APK调用这个hook.dll;二、DLL没有加密,可以打开的动态下断调式我们可以类比,假如你觉得一个函数是关键,可以用reflector插件对DLL添加上一句messagebox,当是下断,这也是一种很清晰的动态调式。
视频下载地址:http://pan.baidu.com/s/1c035lSW
前排支持。。。。 教程太理论化,建议加入实战
世事繁华皆成空 发表于 2015-8-11 19:42
教程太理论化,建议加入实战
话说我问下,我出的小米人改之理3.2怎么这么快就被盗版了,改成什么泡泡龙了,难道非得让我加壳吗? 世事繁华皆成空 发表于 2015-8-11 19:42
教程太理论化,建议加入实战
建议管理把爱盘里那个盗版的改之理3.2删除,毕竟改之理3.2更新版出自我的《安卓逆向主流工具》一文,请尊重我的劳动成果,保留我的作者信息 xiaoxin520 发表于 2015-8-11 20:46
建议管理把爱盘里那个盗版的改之理3.2删除,毕竟改之理3.2更新版出自我的《安卓逆向主流工具》一文,请尊 ...
http://www.popotu.com/popo/apkide-update-log.html
需要我打你脸不 xiaoxin520 发表于 2015-8-11 20:46
建议管理把爱盘里那个盗版的改之理3.2删除,毕竟改之理3.2更新版出自我的《安卓逆向主流工具》一文,请尊 ...
5月份我开始更新3.2的时候,你还不知道在哪 世事繁华皆成空 发表于 2015-8-12 19:52
5月份我开始更新3.2的时候,你还不知道在哪
这网页打不开的,那以后你更新你的,我更新我的,因为我看泡泡龙是5月更新的,连续3个月不更新,恰恰在8月9日我文章发布后,8月10日更新,所以有疑问。 支持楼主 学习一下
页:
[1]