0x0 前言
刚好最近有空,顺便再记录一下之前一次dump莉莉丝的farlight84 libUE4遇到的问题,他本来用的tx的安全,后面不知道为啥换成网易的。
0x1 dump libUE4.so
他这个so本身也是有加密的,需要dump加载解密后的libUE4.so,首先用ue4dumper尝试dump一下,结果发现提示不是elf文件。
他这个提示头错误不是elf文件,那可能就是elf头有问题,试试手动给他dump下来,首先找PID
ps -ef|grep farlight84
找到pid之后,用这个命令找到libUE4.so的起始地址和结束地址
cat /proc/25093/maps|grep libUE4
用这个命令dump内存 skip=开始内存地址(10进制) count=dump内存大小(10进制)
dd if=/proc/25093/mem of=/data/local/tmp/libUE4.so skip=502757203968 bs=1 count=371871744
ok,现在已经成功dump了内存了,那么接下来看看他这个到底是个什么东西。
0x2 分析dump后的libUE4.so
拖进010editor看看,果然不太对劲,elf头被修改了,怪不得
上面这个是dump后的libUE4头,下面这个是原版的libUE4头
那么很简单,直接给他替换过去就行。
0x3 修复dump后的libUE4.so
这里用sofixer去修复, https://github.com/F8LEFT/SoFixer
修复后的so IDA能正常识别了
0x4 小结
至此,dump libUE4的流程就结束了,后面dumpSDK那些没什么额外的处理。其实后面继续逆向的时候发现,他这种处理方式会导致某些工具因为识别不到elf头,找不到libUE4,例如ce和用某些栈回溯工具。
本文内容来自网络,如有侵权请联系删除
https://www.52pojie.cn/thread-1975239-1-1.html
原文始发于微信公众号(逆向有你):安卓逆向 -- dump某加固的libUE4.so
- 左青龙
- 微信扫一扫
- 右白虎
- 微信扫一扫
评论