[TOC]html
经过代码分析初步猜想模拟定位用到的几处技术点:android
android.os.ServiceManager
对应的函数 getService
addService
sCache
com.txyapp.ipc.ITxySystemServerService
TxyWiFi
TxyCell
TxyLocation
TxyMoveStatus
类,猜想支持模拟基站,WiFi,GPS定位,位置移动状态 .测试时间:2017年8月18日
测试应用1:天下游 v13.1.2(2017年04月01号 16:50 编译的版本,当下官网最新版本)
测试应用2:DayDao v4.4.2(2017年08月14号 15:54 编译的版本,360应用市场下载的是360加固)shell腾讯市场下载的是腾讯加固,这里测试的是360的加固能正常导出安全
测试结果:成功导出被加固的DEX文件能看到对应的代码.app
下载 [原创]分享一个360加固脱壳模拟器(2017/07/17更新)-『Android安全』-看雪安全论坛 里分享的虚拟机 armeabi-v7a.zip
函数
将其解压放入 android-sdk\system-images\android-4.4.4\default\armeabi-v7a
里.工具
打开Android模拟器管理工具 - 建立新模拟器 - 选择 对应的版本 API19(armeabi-v7a)
测试
运行建立好的模拟器 - 设置 - 开发者选项 - 运行模式 - 修改成ART模式spa
自动重启时,会卡死,直接杀掉进程从新启动模拟器.
从新开机时须要好长的时间十几二十分钟才进入桌面.调试
装上加固过的APP - 运行
08-18 03:07:02.090 1934-1934/? I/dex2oat: dex2oat: /data/data/com.xx/.jiagu/classes.oat 08-18 03:07:05.010 1934-1934/? I/dex2oat: harvey:dex file name-->/data/data/com.xx/.jiagu/classes.dex 08-18 03:07:05.130 1934-1934/? I/dex2oat: harvey:write tartget dex file successfull->>/data/data/com.xx/.jiagu/classes.dex_7541924.dex 08-18 03:07:05.130 1934-1934/? I/dex2oat: harvey:dex file name-->/data/data/com.xx/.jiagu/classes2.dex 08-18 03:07:05.140 1934-1934/? I/dex2oat: harvey:write tartget dex file successfull->>/data/data/com.xx/.jiagu/classes2.dex_262720.dex
刷新 data/data/{App.PackageName}/.jiagu
目录,查看是否有还原成功后的 .dex 文件
经过 ADB 命令 - 查看目录文件
adb shell ls -l /data/data/com.txy.anywhere/.jiagu
-rw------- u0_a53 u0_a53 4672748 2017-08-18 03:06 classes.dex -rwx------ u0_a53 u0_a53 7541924 2017-08-18 03:07 classes.dex_7541924.dex -rw-r--r-- u0_a53 u0_a53 25514420 2017-08-18 03:08 classes.oat -rw------- u0_a53 u0_a53 0 2017-08-18 03:06 classes2.dex -rwx------ u0_a53 u0_a53 262720 2017-08-18 03:07 classes2.dex_262720.dex -rwxr-xr-x u0_a53 u0_a53 323264 2017-08-18 03:06 libjiagu.so经过 ADB 命令 - 将整个目录导出到 PC
adb pull /data/data/com.txy.anywhere/.jiagu
使用 GDA
或 JEB
测试打开导出的 .dex 文件
classes.dex
GDA提示“文件打开失败,请确认文件是否正常或者被占用”classes.dex_7541924.dex
能正常解析出来. 是APP对应的正确代码