README 的 Usage 章节说明这两个命令分别分析对应平台的 acquisitions。
MVT:用命令行检查 Android 与 iOS 的间谍软件取证痕迹
给取证人员用的 Android/iOS 间谍软件痕迹分析工具,靠 IOC 和命令行检查设备采集数据。
🧭 决策指南
为什么现在热: 无法从材料判断。材料只显示 2026-09-22 当日新增 169 星、总计 13,593 星,并同时有 v2026.9.21 发布信息;README 则强调 Pegasus Project 背景和 Android/iOS 间谍软件取证,但未证明这些因素是本次上榜原因。
适合,如果你
-
你需要用 mvt-ios 或 mvt-android 分析 Android、iOS 设备采集结果。
-
你正在调查已知间谍软件活动,并有 Amnesty International 等公开 IOC。README 的 Indicators of Compromise 章节说明 MVT 支持公开 IOC,包括 Amnesty International 发布的 IOC。
-
你的团队需要用 Python CLI 和 plugins 扩展取证模块。README 的 Usage 章节说明 plugin packages 可扩展 check-* 模块及 mvt、mvt-ios、mvt-android 的顶层命令。
不适合,如果你
-
你想让普通终端用户自行判断手机是否安全。README Note 明确说明 MVT 不面向 end-user self-assessment,并要求数字取证和命令行经验。
-
你需要仅凭公开 IOC 证明设备没有被某种间谍软件感染。README 的 Indicators of Compromise 警告称公开 IOC 可能遗漏近期取证痕迹并造成虚假的安全感。
-
你的现有脚本严格依赖旧版 MVT 输出,且无法处理 v3 变化。README 顶部 IMPORTANT 说明 v3 合并引入 breaking changes,依赖 MVT 输出的脚本可能已损坏。
前置条件
- 需要 Python 环境及 README Installation 章节所述依赖;README 未给出 Python 版本。
- 可从 PyPI 安装,原文命令为 pip3 install mvt。
- MVT 要求理解 digital forensics 并使用 command-line tools。
- 如使用 uv,可先安装 uv,再以 uv tool install mvt 安装。
第一步命令(README 原文)
pip3 install mvt
要注意
-
把 --verbose 放在命令名前可获调试输出,例如 mvt-ios --verbose check-backup ...。README 的 Usage 章节说明三个命令均支持该位置的 --verbose。
-
check-* 后的 --verbose 仅为兼容保留,未来版本将移除。README 的 Usage 章节明确说明该用法仅为兼容保留。
-
mvt completion 默认只打印设置说明,只有传 --install 才写入配置。README 的 Shell completion 章节说明只有传入 --install 才会写入补全文件或 shell 配置。
-
MVT 使用自有许可证,目标是经同意的取证分析。README 的 License 章节说明项目以自有许可证发布,并强调 consensual forensic analysis。
材料未说明
- README 未说明支持的 Python 版本。
- README 未列出 Android、iOS 版本及具体设备兼容矩阵。
- README 未给出各类 acquisition 的存储需求、运行耗时或性能数字。
- README 未说明公开 IOC 的覆盖范围、更新时间或误报率。
- 项目元数据标注许可证为 Other,但 README 未在材料中给出许可证条款全文。
- README 未说明 v3 输出变更的具体字段、迁移步骤或受影响脚本清单。
💡 深度解析
6
不适合
我支持可能成为 Pegasus Project 类调查对象的 Android 和 iOS 用户,但团队没有稳定的数字取证和命令行经验;我能否把 MVT 作为自助式安全检测工具交给他们?
适合读者: 调查记者或人权组织依赖的安全支持人员,面对可能遭遇 Pegasus 等高级移动间谍软件攻击的 Android 或 iOS 设备,但不一定具备数字取证经验
不适合把 MVT 直接交给普通用户自助检测,因为 README 明确排除了 end-user self-assessment,并要求数字取证与命令行能力。
- 项目说明 MVT 是 forensic research tool,目标使用者是 technologists and investigators,而不是终端用户。
- 公开 IOC 只能覆盖已知并公开研究的 spyware campaigns;README 警告仅凭没有命中不能判断设备 clean,可能造成虚假的安全感。
- 可靠而全面的 triage 需要非公开 IOC、研究和 threat intelligence,README 还指向 Amnesty International Security Lab 与 Access Now 的支持渠道。
- 因此它可以由合格分析师作为调查组件使用,但不应把输出直接转成“未感染”或个人安全结论。
- README「Note」:This is not intended for end-user self-assessment
- README「Indicators of Compromise」:Public indicators of compromise are insufficient to determine that a device is clean
- README「Indicators of Compromise」:reliable and comprehensive digital forensic support requires non-public indicators
不适合
我用 Python 脚本解析现有 MVT 输出,并把 `mvt-ios` 和 `mvt-android` 接入自动化流水线;升级到 v3 后能否直接替换安装版本?
适合读者: 维护 Python 自动化取证流水线的安全工程师,现有脚本解析 MVT 输出,计划从旧版升级到合并 v3 分支的版本
不适合直接替换,因为 README 明确说 v3 引入 breaking changes,依赖旧版 MVT 输出的脚本可能已经损坏。
- README 顶部警告:合并 v3 branch introduced breaking changes,尤其影响 relied on MVT output in other scripts 的用户。
- 这对解析
mvt-ios、mvt-android或mvt输出的 Python 自动化流程都构成直接风险;项目没有保证旧输出格式兼容。 - README 只说明旧的
check-*命令位置上的--verbose暂时兼容,未来会移除;这也说明命令接口正在迁移。 - 升级决策还需要阅读 issue #757、核对当前脚本使用的输出字段,并验证插件和下游命令;README 没有提供自动迁移工具。
- README 顶部重要提示:We recently merged the “v3” branch. This introduced breaking changes
- README 顶部重要提示:If you relied on mvt output in other scripts They might have broken
- README「Usage」:the `--verbose` option the `check-*` commands accept after their name ... will be removed
pip3 install mvt
不适合
我准备把 Python 实现的 MVT 集成进商业移动取证平台,并可能再分发带插件的定制版本;在没有审查许可证前,我能否直接采用它?
适合读者: 准备把 MVT 集成到商业取证平台或组织内部再分发工具中的安全产品负责人,需要确认许可证是否允许商业集成和定制部署
不适合在未审查许可证前直接用于商业集成或再分发,因为项目明确采用自有许可证,而不是通常意义上的宽松开源许可证。
- README 的 License 章节说明 MVT released under its own license,目的在于支持 consensual forensic analysis,并避免帮助非自愿隐私侵犯。
- 这意味着许可证目标和使用边界不仅是技术问题;商业平台、定制版本和再分发都需要核对具体条款。
- README 没有授予商业集成、二次分发、插件打包或修改后的再许可权,也没有说明这些场景的例外。
- 在获得法律与项目许可判断前,可以研究代码和文档,但不能仅凭 Python、PyPI 或“开源项目”标签推定可自由商业使用。
- README「License」:MVT is released under its own license
- README「License」:purpose is to facilitate consensual forensic analysis
- 项目数据:license 为 Other
适合
我在 Bash、Zsh 和 Fish 之间切换,需要运行 `mvt-ios`、`mvt-android` 以及 `download-iocs`,并希望减少命令输入错误;MVT 是否支持我的 CLI 工作流?
适合读者: 在 Bash、Zsh 或 Fish 环境中运行移动取证命令的调查分析师,希望把 MVT 命令接入脚本化的命令行工作流
适合,因为 MVT 原生提供三个平台命令、IOC 下载能力、详细输出和 Bash/Zsh/Fish 补全,能够贴合命令行调查流程。
- README 说明
mvt-ios与mvt-android分析对应平台 acquisition,mvt承载download-iocs等公共命令。 - 三个命令都支持在命令名之前传入
--verbose,例如 README 给出的mvt-ios --verbose check-backup ...,便于获取调试输出。 mvt completion会输出设置说明,mvt completion bash可直接生成 Bash 补全;README 明确覆盖 Bash、Zsh 和 Fish。- 但补全只改善 CLI 使用,不会替代对备份、采集数据和 IOC 结果的取证解释。
- README「Usage」:MVT provides three commands: `mvt-ios`, `mvt-android` and `mvt`
- README「Usage」:Pass `--verbose` ... (`mvt-ios --verbose check-backup ...`)
- README「Shell completion」:completion script for Bash, Zsh, and Fish
mvt completion
适合
我具备数字取证和命令行经验,需要同时分析 Android 和 iOS 的设备采集物或备份,并用公开 IOC 检查已知间谍软件痕迹;MVT 是否适合纳入我的调查流程?
适合读者: 使用命令行、负责 Android 与 iOS 设备取证的数字取证分析师,需要检查已获得的设备采集物或备份,而不是直接面向终端用户检测
适合,因为 MVT 正是面向 technologists and investigators 的跨 Android/iOS 命令行取证工具,但它是分析组件,不是完整鉴定平台。
- README 将
mvt-ios和mvt-android定义为分析对应平台 acquisition 的命令,mvt负责version、plugins和download-iocs等通用能力。 - 项目支持使用公开 IOC 扫描已知 spyware campaigns 的潜在线索,适合把指标匹配纳入已有取证流程。
- 工具依赖已经取得的设备数据或备份;README 没有承诺在缺少权限、密钥或完整数据时自动完成采集。
- 未命中公开 IOC 不能证明设备干净,完整研判还需要非公开指标、威胁情报和专业解释。
- README「Usage」:`mvt-ios` 和 `mvt-android` analyse acquisitions from devices of that platform
- README「Indicators of Compromise」:supports using public IOCs to scan mobile devices
- README「Note」:intended for technologists and investigators;requires understanding digital forensics and command-line tools
pip3 install mvt
适合
我用 Python 开发取证插件,既想扩展 `check-*` 模块,也想给 `mvt-ios` 或 `mvt-android` 注册自定义顶层命令;MVT 是否适合作为扩展基础?
适合读者: 为持续变化的移动威胁活动开发 Python 插件的安全研究人员,需要向 MVT 的 `check-*` 命令添加取证模块,并注册顶层 CLI 命令
适合,因为 MVT 的 README 明确支持插件包扩展 check-* 取证模块,也支持向 mvt、mvt-ios 和 mvt-android 注册顶层命令。
- 插件模块运行在
check-*命令内部,适合把新的取证检查封装成可加载组件。 - README 还提供 development documentation 与 custom CLI command documentation,并说明插件通过 entry points 注册命令。
- 这比直接修改核心仓库更适合持续加入新的研究成果,且与项目的 Python 实现保持一致。
- 但 README 没有在正文给出插件 API、版本兼容策略或测试契约;正式集成前仍需按开发文档确认接口。
- README「Plugin packages」:extend MVT with additional forensic modules, which run inside the `check-*` commands
- README「Plugin packages」:top-level commands on `mvt`, `mvt-ios` and `mvt-android`
- 项目数据:main_language 为 Python
pip3 install mvt
✨ 核心亮点
-
支持 mvt-ios 与 mvt-android 分析设备取证数据
-
可用公开 IOC 检查已知间谍软件痕迹
-
提供 plugins 扩展取证模块与顶层命令
-
v3 分支合并带来输出格式破坏性变更
🔧 工程化
-
mvt-ios 与 mvt-android 分析对应平台的设备取证数据
-
mvt download-iocs 下载 IOC,check-* 命令执行扫描
-
mvt completion 支持 Bash、Zsh 与 Fish 补全
⚠️ 风险
-
README 明确称公开 IOC 无法证明设备干净
-
v3 可能破坏依赖 MVT 输出的其他脚本
-
MVT 要求数字取证与命令行工具经验
👥 适合谁?
-
面向使用 Python CLI 的移动取证技术人员
-
适合调查 Pegasus 等移动间谍软件的研究人员
-
适合需分析 Android 与 iOS 设备采集结果的调查人员