ARTICLE DETAIL

资讯详情

深耕网站建设与运营推广的一线实战洞察。

APOLLO报‘0 databases‘怎么办?iOS取证数据权限错误排查与chmod/chown修复完整清单

APOLLO报‘0 databases‘怎么办?iOS取证数据权限错误排查与chmod/chown修复完整清单 APOLLO报0 databases怎么办iOS取证数据权限错误排查与chmod/chown修复完整清单【免费下载链接】APOLLOApple Pattern of Life Lazy Outputer项目地址: https://gitcode.com/gh_mirrors/apollo65/APOLLOAPOLLOApple Pattern of Life Lazy Outputer苹果行为模式懒输出器是一款免费开源的 iOS/macOS 取证数据提取工具能一键从手机取证镜像的 SQLite 数据库中解析位置、电池、应用使用等行为模式数据。但很多新手首次运行extract时会发现某些模块提示0 databases found数据直接缺失。本文带你快速定位原因并用一份 chmod / chown 修复完整清单彻底解决 iOS 取证数据权限问题 一、30 秒认识 APOLLO它是怎么找到数据库的APOLLO 的工作方式非常懒但高效模块驱动modules/ 目录下的每个.txt文件定义一个取证模块例如电池电量模块 modules/powerlog_battery_level.txt 声明了它要读取的数据库CurrentPowerlog.PLSQL基站位置模块 modules/locationd_cacheencryptedAB_celllocation.txt 则读取cache_encryptedB.db等文件。递归搜索运行时 APOLLO 会遍历你提供的数据目录按文件名寻找模块声明的数据库找到才执行查询。三种子命令extract直接解析镜像、gather_macos、gather_ios先把数据库拷出来再解析。所以当你看到0 databases时含义很直白APOLLO 在整个数据目录里一个目标数据库都没读到——文件不在或者在但读不了。本地没有环境先克隆仓库即可开始git clone https://gitcode.com/gh_mirrors/apollo65/APOLLO二、0 databases 报错90% 是权限问题根据 README.md 官方排错章节的说明报告 0 databases 最多的通常是CurrentPowerlog.PLSQL电源日志和locationd位置缓存两类模块。iOS 镜像里有两个高危目录因权限问题最常导致数据库读取失败高危目录影响的模块/private/var/root/Library/Caches/locationd/locationd 系列蜂窝/Wi-Fi/室内定位/private/var/containers/Shared/SystemGroup/[GUID]/Library/BatteryLifepowerlog 系列电池、电源日志为什么镜像里的文件会读不了root 属主iOS 系统文件默认属于 root提取到取证工作站通常是普通用户后当前用户可能没有读取权限。权限位全空很多物理-逻辑提取physical-logical extractions出来的文件权限是 all blank----------连属主自己都读不了。目录不可进入就算文件本身可读路径上任何一层目录没有x执行/进入权限APOLLO 的递归遍历也会绕道而过。先用一条命令确认现状ls -l /private/var/root/Library/Caches/locationd/如果看到权限位是空的、或属主是root而你当前是普通用户那问题就锁定了 三、chmod / chown 修复完整清单4 步走以下是官方 README 推荐的修复顺序照做即可第 1 步修复 BatteryLife 目录权限chmod -R 755 /private/var/containers/Shared/SystemGroup/[GUID_for_BatteryLife_Data]/把[GUID...]替换成镜像中实际的 GUID 目录名ls /private/var/containers/Shared/SystemGroup/查看。第 2 步修复 locationd 所在的 /var/root 权限chmod -R 755 /private/var/root第 3 步给全空权限的数据库补权限如果第 1、2 步后仍报 0 databases说明存在权限位全空的数据库文件——用chmod给它们任意一种可读写权限chmod urw 可疑数据库路径第 4 步用 chown 接管文件所有权如果权限位正常但属主是 root 仍读不了用chown把文件归属改到自己名下chown -R $USER:$USER /private/var/root/Library/Caches/locationd/完成后重新运行 extract原本 0 databases 的模块应当恢复解析python3 apollo.py extract -o csv -p apple -v 14 modules 你的镜像数据目录 参数说明-o输出格式csv / sql / sql_json-p apple指定苹果平台-v指定系统版本iOS 8–14。详见 README.md 的 Usage 章节。四、更省事的办法让 APOLLO 自动 chmod / chown官方 README 里藏着一个Pro Tipgather_macos和gather_ios子命令在拷贝数据库时会自动对文件执行 chmod / chown确保其可访问。对应源码逻辑在 apollo.py 的chown_chmod()函数中def chown_chmod(): print(...chmod/chown all the things...) for root, dirs, filenames in os.walk(os.getcwd() /tmp_apollo): ... if os.access(path, os.R_OK) False: os.chmod(path, stat.S_IRWXU) os.chown(path, os.stat(os.getcwd()).st_uid, os.stat(os.getcwd()).st_gid)也就是说如果你直接对镜像跑extract遇到权限报错可以改用gather_macos先把数据库收集到tmp_apollo/目录自动完成权限修复再对该目录跑extract等于把修权限这步外包给了 APOLLO ✅对于越狱设备gather_ios通过 SSH/SCP 远程拉取文件需要--ip和--port参数同样会在本地完成自动权限处理。五、自查速查表其他常见诱因现象可能原因快速修复全部模块都是 0 databases数据目录传错了检查命令末尾的data directory参数提示 Module not supported for version-v版本与数据不符核对镜像系统版本改-v参数或用yolo通吃模式部分模块 0 databases权限问题本文主线按第三节清单执行 chmod / chown模块解析到一半报数据库错误个别数据库损坏或版本不匹配属正常lazy容错跳过即可想跳过某些大目录gather 时全盘搜索太慢用--ignore 目录排除可多次使用六、写在最后APOLLO 的 0 databases 报错几乎都不是工具本身的 Bug而是iOS 取证镜像的 root 属主 空权限位在捣乱。记住这篇的三步口诀定位高危目录/var/root与SystemGroup/BatteryLifechmod 755修权限、chown换属主偷懒就交给gather 子命令自动处理。掌握这份修复清单后配合 modules/ 里 200 多个现成模块你就能完整还原取证设备的电池、位置、应用使用等全套行为轨迹了 【免费下载链接】APOLLOApple Pattern of Life Lazy Outputer项目地址: https://gitcode.com/gh_mirrors/apollo65/APOLLO创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考
返回列表