SuperAPI AI 工具集

exploiting-insecure-data-storage-in-mobile

智能体与模型

查看项目

更新于 10-16 06:49

技能介绍

用途:评估移动应用是否在设备文件系统中安全存储敏感数据,属于授权渗透测试与数据静态安全评估的一部分。适用于检查凭据是否通过SharedPreferences、SQLite数据库或plist泄露,评估Keychain/Keystore访问控制属性,以及在移动渗透测试中进行数据静态安全评估。未获授权不得对生产用户设备使用,数据提取技术需要物理访问或root/越狱权限。

主要能力:

  1. 映射存储位置。Android包括/data/data/<package_name>/下的shared_prefs、databases、files、cache、lib、app_webview,以及/sdcard/Android/data/<package_name>/;iOS为沙盒/var/mobile/Containers/Data/Application/<UUID>/下的Documents、Library/Preferences、Library/Caches、Application Support与tmp。
  2. 提取并分析Android SharedPreferences,例如:adb shell run-as <package_name> cat shared_prefs/*.xml;或adb pull /data/data/<package_name>/shared_prefs/;可搜索password、token、secret、key、session、auth、cookie等关键字。
  3. 分析SQLite数据库,例如:adb pull /data/data/<package_name>/databases/;sqlite3 databases/app.db 后执行.tables、.schema users、SELECT * FROM users; 若无需密码即可打开,说明数据库未加密。
  4. 检查iOS Keychain,如objection --gadget com.target.app explore 后执行ios keychain dump,评估kSecAttrAccessibleAlways等属性是否不当。
  5. 评估外部存储与备份暴露,如检查android:allowBackup="true",执行adb backup -f backup.ab -apk <package_name>并用ABE解包;iOS可检查Info.plist与备份排除属性。
  6. 运行时内存与日志分析,如memory search "password" --string、memory dump all、adb logcat -d结合关键字检索。

使用方式与前提:需已root的Android设备或模拟器并具备ADB访问,已越狱的iOS设备并具备SSH或Objection补丁的IPA;需要ADB、SQLite3 CLI、Frida/Objection等工具,目标应用须已安装并产生过数据。

限制与注意:仅限授权测试与教育用途,未经授权对非自有系统使用可能违法。关注加密但密钥硬编码或存于SharedPreferences、MODE_WORLD_READABLE历史遗留、iOS Documents目录默认进入备份、剪贴板数据可被其他应用读取等易忽视点。具体收费、价格与官方支持平台信息暂未提供。