<
JEB连接模拟器动态调试APK&APK无法被调试的解决方法
>
上一篇

内网渗透-信息收集
下一篇

日志分析
JEB连接模拟器动态调试APK&APK无法被调试的解决方法

一、连接

adb shell

启动的方法为

# am start -n 包(package)名/包名.活动(activity)名称

包名可以从每个应用的AndroidManifest.xml的文件中得

image-20200529095430480.png

启动命令

D:\tools\Nox\bin>adb shell am start -d -n com.suctf.crackme/com.suctf.crackme.MainActivity Starting: Intent { act=android.intent.action.MAIN cat=[android.intent.category.LAUNCHER] dat=-n cmp=com.suctf.crackme/.MainActivity }

JEB附加调试时搜索不到设备

原因是因为adb环境变量未设置,设置后即可

二、无法调试解决

连接后发现,说程序无法被调试

image-20200529095643061.png

1) apk的Manifest.xml文件的Application的属性中包含android:debuggable=“true” ;

2)或者第一条不满足时,安卓手机的default.prop文件中ro.debuggable=1时也行,mprop工具可用于修改该属性值。

两种方式第一种通常是解包添加属性再打包,随着加壳软件以及apk校验等,容易出现安装包异常。第二种由于一般的手机发布时ro.debuggable一般是0 也就是不允许调试,通过修改rom的办法在手机上比较麻烦,需要刷机等等,模拟器上一般是vmdk的虚拟机,也没法修改rom。

image-20200529105735142.png

看样子是成功了

image-20200529105805689.png

重启后查看

cat default.prop

image-20200529105846959.png

还是0,但是不要纠结这里的值,直接返回JEB附加即可成功连接调试

image-20200529105930014.png

三、动态调试

添加断点拿到v2的值就是key

image-20200529110027230.png

然后解题即可

Top
Foot