声明:文中所涉及的技术、思路和工具仅供以安全为目的的学习交流使用,任何人不得将其用于非法用途给予盈利等目的,否则后果自行承担!如有侵权烦请告知,我们会立即删除并致歉。谢谢!
介绍
我们在调试APK的时候,可能会发现在手机上,该app的lib目录下找不到对应的so文件,导致IDA调试的时候出现问题。
下面提供一种解决的小技巧。
检查 Manifest
IDA没法找到想要的so可能原因之一是 Manifest 里的
<applicationandroid:extractNativeLibs="false"... > ...</application>
android:extractNativeLibs="false"
是 Android 应用清单文件(AndroidManifest.xml
)中的一个属性,用于控制 APK 中的原生库(Native Libraries)是否在安装时解压到文件系统。
作用
false
:表示原生库不会在安装时解压到文件系统,而是直接从 APK 中加载。这可以减少安装时间和存储占用,但要求 Android 7.0(API 24)及以上版本支持。 true
(默认值):表示原生库会在安装时解压到文件系统,兼容所有 Android 版本。
解决办法
方法1在可以绕过apk签名校验的时候,通过 MT 管理器修改 AndroidManifest,将 extractNativeLibs 改为 true。
方法2直接把指定的 so 复制到 /data/app/包名/lib里,就会优先加载这个目录里面的so。
其他办法
-
https://bbs.kanxue.com/thread-281802.htm
原文始发于微信公众号(进击的HACK):IDA调试so小技巧 | IDA 无法找到指定so
免责声明:文章中涉及的程序(方法)可能带有攻击性,仅供安全研究与教学之用,读者将其信息做其他用途,由读者承担全部法律及连带责任,本站不承担任何法律及连带责任;如有问题可邮件联系(建议使用企业邮箱或有效邮箱,避免邮件被拦截,联系方式见首页),望知悉。
- 左青龙
- 微信扫一扫
-
- 右白虎
- 微信扫一扫
-
评论