行业解决方案查看所有行业解决方案
IDA 用于解决软件行业的关键问题。
发布时间:2022-10-09 15: 37: 10
IDA在游戏逆向研究中的重要作用已经被论证过无数次了,游戏开发者必须对可能的逆向分析做好防御,不被破解的第一步就是研究黑客是如何破解你的游戏。

继续分享来自安全论坛的关于游戏破解实战案例,本次邮箱引擎是LibCoscos2dula.so:

先尝试直接拖入到IDA中进行分析,预料到同样会被加固,无法直接获得想要的代码:

常规操作是去内存中DUMP出来数据,这里DUMP脚本很多,就不展开。DUMP得到的内容进行修复,推荐修复工具【https://github.com/F8LEFT/SoFixer】。但是我们会发现文件头被魔改过,用来的SO文件头复制粘贴进行后,再修复完成了。
这里总结下,LUA的游戏基本都是通过luaLoadBuffer进行HOOKdump。接下来我们去查询这个字符,但没有收获:

遇见这种情况,只能从开源框架下手继续。首先看下它的版本:

可以看到标黄的部分是cocos2d-x-3.13.1,需要下载这个版本的源码,官方下载地址:https://github.com/cocos2d/cocos2d-x
下载好解压,可以尝试直接用notepad++的搜索功能,来方便快速的搜索luaLoadBuffer:

结果其实可以发现实际是包含luaLoadBuffer,但只是被他隐藏了。那我们该怎么定位到它呢?我们看到上面有个?.lua的字符串我们去IDA搜下看看:

可以看到也是有的,鼠标点击过去,选中alua_2按下键盘下的X快捷键:

点OK跳过去:

我们可以看到这里和刚才看的源码基本上是一样的,那么我们按F5看伪代码:

通过分析sub_18A080就是luaLoadBuffer,我们点进去看看:

伪代码太长了,不全部截图列出,通过HOOK打印sub_18A080(v41,a1,v42,v43,v71);
V42=内容V43=长度V71=文件名。随后进到sub_18A080内部发这个sub_4595C0正好对应luaLoadBuffer参数:
sub_4595C0(a2,v21,v64,a5);=luaLoadBuffer(l,(const char*)data.getBytes(),(int)data.getSize(),fullPathOfScript.c_str());
到这里就不需要多说什么了直接HOOKdump脚本。发现出来竟然是LUAq的代码:

直接用unluac反编译发现会报错,所以应该是修改了opcode。我们继续用IDA定位opcode,进行搜索字符串“'for'limit must be a number”:

和刚才一样点击过去按X键,点OK跳过去:

然后使用F5进行分析:

case就是opcode,把它拿出来修改下unluac就可以解密了。
本案例转自【看雪网论坛】,原作者【lihaiyanz】
展开阅读全文
︾
读者也喜欢这些内容:
怎么用IDA软件反汇编功能学习汇编指令 IDA反汇编功能如何进行多平台二进制分析
说到反汇编分析,很多人第一时间就会想到IDA。这款工具可以说是做逆向工程的“神器”,不管是学习汇编指令还是分析二进制文件,都非常给力。如果你是个初学者,刚接触反汇编,可能会对IDA的一些功能感到陌生,比如怎么用IDA软件反汇编功能学习汇编指令 IDA反汇编功能如何进行多平台二进制分析。别急,今天就带你一步步搞清楚。...
阅读全文 >
IDA软件反汇编后如何找到函数入口点 如何通过IDA反汇编分析软件的加密解密过程
在逆向工程领域,IDA软件是一款功能强大的反汇编工具,广泛用于分析二进制代码、查找函数入口点以及研究软件的加密解密过程。本文将详细探讨“IDA软件反汇编后如何找到函数入口点 如何通过IDA反汇编分析软件的加密解密过程”,并进一步介绍IDA反汇编和反编译的区别,帮助用户更好地理解和使用这一工具。...
阅读全文 >
IDA反汇编软件在漏洞分析中能起到什么作用 如何将IDA软件反汇编功能结合调试器使用
在信息安全领域,漏洞分析和逆向工程是至关重要的工作,而IDA反汇编软件则是这一领域中的佼佼者。作为功能强大的反汇编和调试工具,IDA不仅在漏洞分析中发挥着关键作用,还能通过与调试器结合使用,极大地提升分析效率和准确性。本文将详细探讨“IDA反汇编软件在漏洞分析中能起到什么作用 如何将IDA软件反汇编功能结合调试器使用”,并进一步介绍IDA常用的辅助插件,帮助用户更好地利用这一工具进行漏洞分析和逆向工程。...
阅读全文 >
idapro如何分段处理 ida软件反汇编如何添加插件
在软件逆向工程和代码分析中,IDA Pro是一款非常重要的工具。它提供了强大的反汇编和反编译功能,使得分析二进制代码变得更加高效和准确。在使用IDA Pro时,了解如何分段处理和添加插件可以极大地提升工作效率。本文将详细探讨idapro如何分段处理 ida软件反汇编如何添加插件,并分析IDA Pro是否容易学习和使用。...
阅读全文 >