一个用于扫描 Xcode 项目文件中可能存在的安全问题的 macOS 应用。
XcInspector 是一个 macOS 应用和命令行工具, 用于扫描 Xcode 项目文件以发现可能的安全问题。
Xcode 项目在某些情况下可能被用来危害安全与 隐私。
本工具旨在尝试(而非保证)捕获 Xcode 项目中的 一些已知风险。
注意: XcInspector 不会扫描源文件(Swift、Objective-C 等) 中代码的任何安全问题。 那是本项目范围之外的另一个独立问题。
XcInspector 在 macOS 上同时提供应用和命令行工具两种形式。 两者都处于“alpha”状态——意味着它们可以使用, 但仍然有些笨拙且不完整。
目前还没有可下载的软件包,因此你必须使用 Xcode 从本项目的源代码编译并构建这些工具。
项目和源代码位于 XcInspector 目录中。
我们在这里使用子目录,是因为我们的示例文件 (
TestSamples目录),被单元测试和 UI 测试使用, 包含 Xcode 项目文件——其中一些是故意格式错误的文件。 将它们放在项目目录中会 迷惑 Xcode (这是我们吃了苦头才学到的)。
~/Library/Developer/Xcode/DerivedDataXcodeProjectSecurity 开头的目录,
后面跟着一串看似随机的字符。Build/Products/DebugXcInspectorApp.app~/Library/Developer/Xcode/DerivedDataXcodeProjectSecurity 开头的目录,
后面跟着一串看似随机的字符。Build/Products/Releasexcinspector 文件。/usr/local/bin)。要扫描 Xcode 项目,请从应用的“File”菜单中选择“Open…”命令(⌘-O)。然后选择一个包含 Xcode 项目文件
(.xcodeproj)的目录,并点击“Open”按钮。
将出现一个报告窗口,告诉你发现了多少个(如果有)可能的问题。报告窗口还会列出每个识别出的问题,包括 具体文件,以及(如果适用)遇到该问题的行号。
确保命令行工具位于你可以访问的位置
(例如 /usr/local/bin)。
要获取运行该工具时可用选项的说明,
请使用命令:xcinspector --help
一般来说,你可以通过传入项目目录的路径,
或项目文件(.xcodeproj)本身的路径,来获取给定 Xcode 项目的报告。
例如:xcinspector /User/me/Projects/MyApp
生成的报告将输出到终端(stdout),并采用
Xcode 警告格式(filepath:linenumber:(error|warning|note):message)。
如果未发现问题,报告将为空(仅输出一个空行)。
你可以选择在报告末尾包含摘要(即使未发现问题也会显示)。
xcinspector --stats path/to/project 或 xcinspector -s path/to/project
你还可以选择包含所发现问题的扩展详细信息。
(目前,这仅在发现嵌入脚本时显示脚本的文本。)
xcinspector --details path/to/project 或 xcinspector -d path/to/project
虽然此工具可能有助于识别一些可能的安全风险, 但它绝不能保证任何特定 Xcode 项目 或任何衍生产品的安全。
使用本软件即表示你同意,你独自负责确保 你使用或分享的任何 Xcode 项目的安全,并使 XcInspector 的所有作者、 贡献者或分发者免于承担任何责任或 义务。
Copyright ©2023-2024 Grant Neufeld, et.al.
本项目的源代码根据 Mozilla Public License, v. 2.0 的条款提供。
许可证 文件随项目文件一起包含。