
Needle 是一个开源、模块化的框架,旨在简化 iOS 应用安全评估的流程。
注意:此工具已停用,不再维护。我们保留原始项目仅供存档。
Needle 最初是为 iOS 9 和 iOS 10 设计的。此后,Frida 发布并成为移动安全评估的事实标准工具。后来 Needle 中实现了一些常见的 Frida 移动安全脚本,这些脚本在某些情况下表现更好,或解决了 Needle 自定义工具中的一些问题。
随着 iOS 11 的发布,新的安全保护措施对用户有利,但对 Needle 不利。这些增强功能实际上破坏了 Needle 的功能,因此 F-Secure 面临两个选择:
F-Secure 选择了后者,因为在我们讨论 Needle 命运时,我们的一些顾问已经开始使用并贡献另一个工具。这个第三方工具叫做 Objection,可在以下地址找到:
https://github.com/sensepost/objection
Needle 仍然可以在运行 iOS 10 及以下版本的设备上使用。如果设备运行 iOS 11 或更高版本,F-Secure 建议改用 Objection。
评估 iOS 应用的安全性通常需要大量工具,每种工具都针对特定需求开发,且运行方式与语法各不相同。Android 生态系统已有像 "drozer" 这样的工具解决了这个问题,并旨在成为大多数用例的“一站式工具”,然而 iOS 却没有类似的工具。
Needle 是 MWR 的 iOS 安全测试框架,于 2016 年 8 月在 Black Hat USA 上发布。它是一个开源模块化框架,旨在简化整个 iOS 应用安全评估流程,并作为执行评估的中心点。Needle 不仅适用于安全专业人员,也适用于希望保护自己代码的开发人员。Needle 涵盖的测试领域示例包括:数据存储、进程间通信、网络通信、静态代码分析、Hook 和二进制保护。有效运行 Needle 的唯一要求是一台越狱设备。
1.0.0 版本的发布对其核心进行了重大改造,并引入了全新的本地代理,完全用 Objective-C 编写。新的 NeedleAgent 是一个与 Needle 配套的开源 iOS 应用,允许在设备上以编程方式原生执行任务,从而消除了对第三方工具的需求。
Needle 已在多个国际会议(如 Black Hat USA/EU、OWASP AppSec 和 DEEPSEC)的工作坊中展示和使用。它还被 ToolsWatch 列入 2016 年顶级安全工具 的候选名单,并收录在 OWASP 移动测试指南 中。
Needle 是开源软件,由 MWR InfoSecurity 维护。
请参阅项目 Wiki 中的 安装指南 了解详细信息。
使用说明(适用于普通用户和贡献者)可在 项目 Wiki 中找到。
Needle 采用 3-Clause BSD 许可证发布。有关完整详情,请参见 LICENSE 文件。
如需了解新闻和更新,请关注 Twitter 上的 @mwrneedle 以及 MWR Mobile Tools 博客。
欢迎提交问题或通过 Twitter 联系我们 - @mwrneedle、@lancinimarco