当前位置:AIGC资讯 > 数据采集 > 正文

抖音数据采集教程,unicorn 解决 OLLVM 字符串混淆通用方法

抖音数据采集教程,unicorn 解决 OLLVM 字符串混淆通用方法

短视频、直播数据实时采集接口,请查看文档: TiToData


免责声明:本文档仅供学习与参考,请勿用于非法用途!否则一切后果自负。


虽然是通用方法,但是要了解 so 加载流程、汇编基础、java基础才可以使用哦~

这里用的基于 unicorn 的 androidEmu

AndroidNativeEmu 在面对没有加壳的 so 还是挺好用的,不过遇到加壳的 so,就会力不从心的,需要 dbg 才行。

解决字符串混淆思路,其实和 frida 读取混淆字符串方法一样,在内存中字符串是被解密状态的,所以在内存中拿就可以了, 而且 Unicorn 提供了 unicorn.UC_HOOK_MEM_WRITE 来 hook 操作内存中的数据

干货代码如下:

import loggingimport sysimport osimport unicornimport structfrom androidemu.emulator import Emulatorsys.path.append(os.path.abspath(os.path.dirname(os.path.dirname(__file__))))logging.basicConfig( stream=sys.stdout, level=logging.DEBUG, format="%(asctime)s %(levelname)7s %(name)34s | %(message)s")logger = logging.getLogger(__name__)emulator = Emulator(vfp_inst_set=True) # 初始化模拟器# 字符串解密so_file = "test/test.so"modify_map = {} # 接收字典def UC_HOOK_MEM_WRITE(mu, _type, address, size, _value, user_data): byte_array = struct.pack(".........

更新时间 2023-11-08