yi
移
dong
动
an
安
quan
全
0x00背景
0x01本文目录
0x02实验目的
通过动态分析调试对腾讯加固进行脱壳尝试
0x03实验开始
本篇为上一篇《移动安全(九)|TengXun加固动态脱壳(上篇)》的延续,如果上篇未读,请先点击上面标题移步上篇 >>>>
6、找到关键的线程函数
发现是关键的runCreate,而对应的参数是78017D96
因此我们就要点击为上一个
进入到这里secshell的读取位置,这时候如果有经验的话,直接可以看到关键点在result,而result最后赋值hi在判断v8以后的
而相对较好就是每一个程序都跟踪一次
跟踪v8为判断java的vm类型,是否存在libart.so文件,这时候如果模块中没有libart.so文件就说明执行的是23行这个分支:
因此,在23行跳进去函数后直接在其实头压栈的时候下好断点:
7、查看分析关键函数
然后查看程序:
得出:
这个时候进行流程图查看:
通过执行程序流程图,跟踪程序执行流程:
看到这里开始关注寄存器,堆栈,还有汇编的变化,记录每一步的变化:
关注点,跟踪解密特殊位置函数,已知数据大小为0x28即40:
跟踪计算偏移量,进行解密
可知计算下来的执行下来的R3=0x38C14,R2=0x9710,然后R0=R3+R2,然后R3=0x1000, 然后R0=R0+R3=(0x38C14+0x9710)+0x1000,然后逻辑右移0xC,再逻辑左移0xC
因此写出python程序:
hex((((0x38C14+0x9710)+0x1000)>>0xC)<<0xC)
得到结果:
为0x43000
而数据头文件大小为0x43000+0x28=0x43028
跟踪R0
这时候为了方便计算
先dump下dex
staticmain(void){ autofp,begin,end,dexbyte; fp=fopen("C:\dump.dex","wb"); begin=0x774CE000; end=0x775C2000; for( dexbyte=begin;dexbyte<end;dexbyte++) fputc(Byte(dexbyte),fp);}
8、处理dex文件
可以看到,混淆到我都不知道是odex还是dex文件了
然后继续看程序,执行解密heard部分数据:
这里对R5进行处理:
双击R5跟踪:
这里竟然出现了dex
说明这里就是起始点,那么还有就是结束点
结束点=起始点+文件大小,应该就在源程序中:
跟踪每一个可疑的数据:
看到R2是0x70就是文件大小,因为:程序执行四个参数分别为寄存器的r0,r1,r2,r3
而在输出的时候显示:
而这个时候还有一个问题就是第一个程序的文件大小,这样只有偏移量没有大小
这时候又得回到源程序
可以看到这里面引入了一个新的变量v70=v00,然后v70执行了一系列操作
不管那么多,先执行,发现v100指向R3
R3为A7C14
若要分析v100是否为文件大小,向上逻辑虽然找不到,但是至少v70跟踪可以看出
先dump下dexheard文件
脚本:
staticmain(void)
{
autofp, begin, end, dexbyte;
fp= fopen("C:\dump_heard.dex", "wb");
begin= 0xBED8EC54;
end= 0xBED8EC54+0x70;
for( dexbyte = begin; dexbyte < end; dexbyte ++ )
fputc(Byte(dexbyte),fp);
}
因此程序逻辑清晰了:
先获取到混淆的dex,然后根据偏移量,计算出起始点位置,然后再解密另一个dex文件头部和文件大小,然后拼接处再前面的dex的偏移量起始点处,这时候在赋上第一个文件大小A7C14
然后使用010editor:
edit->selectrange
然后File->saveselection as file
保存后,到dexheard.dex中全选,edit->copy as hex
然后到前面保存好的dex中pastefrom hex
打开dex
完美脱壳!
往期经典推荐:
漏洞笔记|记一次与XXE漏洞的爱恨纠缠
深入探究浏览器编码及XSS Bypass
Apache Solr远程命令执行复现
“最后”的Bypass CDN 查找网站真实IP
渗透实战(一)|BSides Vancouver 2018 (Workshop)
移动安全(一)|Android设备root及神器Xposed框架安装
内网信息收集篇
MSF 下域内渗透
>>关于我们:
WhITECat安全小组隶属于起源实验室分支安全小组,主要致力于分享小组成员技术研究成果、最新的漏洞新闻、安全招聘以及其他安全相关内容。团队成员暂时由起源实验室核心成员、一线安全厂商、某研究院、漏洞盒TOP10白帽子等人员组成。
欢迎各位大佬关注^_^
关注我们
开放共享
扫描上方二维码添加关注
一起分享安全狮的日常
- 左青龙
- 微信扫一扫
-
- 右白虎
- 微信扫一扫
-
评论