通过前面idaPro调试或hook,我们可以获取到xxtea解密key,对于sign我们可以直接打开原文件:
可以看到sign值:byds。因此,我们可以尝试使用xxtea解密工具(通过在GitHub上获取源代码并编译)进行解密
以index.luac为例,我们看index.luac解密前后变化:
我们看到经过xxtea解密后的lua脚本仍然不是明文!我们之前根据cocos2d框架源码及大神apk反编结果确定就是用的xxtea加密,而且app的lua脚本也有签名值,这也印证了就是xxtea加密方式,但是我们解密出来的结果仍然不是明文,这说明我们解密可能不完全,到底是不是还得再回到idapro一探究竟。
用idapro打开libgame.so,在export窗口中搜索byds,找到byds_d函数,双击进去:
直接F5会显示反编代码:
这没有什么特别的,和我们框架源码中的代码是等效的。如果是解密未完成的话,应该会再调用此函数的上一级继续解密过程,我们jump xrefs跟踪一下此函数调用:
出来两个,其中一个是got表,肯定不是,我们双击第一个:
只是一个包装函数,我们继续跟踪:
双击进去:
我们看到这个函数名称和源码中调用xxtea_decrypt是一样的,我们一开始也将这个函数列入突破口了。现在可以很清晰的看到脚本经过byds_d解密之后,又进行了一次uncompress解压,到现在应该基本清晰了,lua脚本应该是经过压缩又进行加密,所以要想还原,应该是先xxtea解密,再解压缩。在GitHub上可以找到一个解压zlib的脚本,可用于对解密后的文本再进行解压
然后再看index.lua:
可以看到现在已经变成明文了。
以上是idaPro如何分析app解密lua脚本的详细内容。更多信息请关注PHP中文网其他相关文章!

热AI工具

Undresser.AI Undress
人工智能驱动的应用程序,用于创建逼真的裸体照片

AI Clothes Remover
用于从照片中去除衣服的在线人工智能工具。

Undress AI Tool
免费脱衣服图片

Clothoff.io
AI脱衣机

AI Hentai Generator
免费生成ai无尽的。

热门文章

热工具

Dreamweaver Mac版
视觉化网页开发工具

EditPlus 中文破解版
体积小,语法高亮,不支持代码提示功能

Atom编辑器mac版下载
最流行的的开源编辑器

VSCode Windows 64位 下载
微软推出的免费、功能强大的一款IDE编辑器

SublimeText3 Mac版
神级代码编辑软件(SublimeText3)