Scope
Scope 是一款 macOS 菜单栏 App,把一整套安全工具集中到一个控制台里。它按照渗透测试的实际流程组织评估工作,从最初的信息查询一直到撰写报告,模块分布在七个工作区中:Recon、Vuln、Web、Access、Wireless、Traffic 和 Analysis,另有串联全局的 Dashboard,以及 Report 和 Settings(设置)。模块目录共有 146 个模块;能在你的 Mac 上运行的模块会显示出来,每个都标明目标和它在流程中的位置。
Scope 是真刀真枪地运行。 模块会向你输入的目标发出真实的网络请求,或对其运行标准的命令行工具,并保存输出结果。内置模块(基于证书透明度查找子域名、在 NIST NVD 中查询 CVE、Web 与加密检查、哈希计算)无需安装任何东西;其余模块调用 Mac 上已有的工具,例如 nmap、dig、whois、tcpdump、otool 等,因此只有在相应工具存在时,模块才会出现。你的目标、输入和结果都留在 Mac 上。请只对你拥有或已获明确授权测试的系统进行评估。
系统要求与安装
- macOS 13 Ventura 或更高版本。
- 搭载 Apple 芯片(M1 或更新)的 Mac。不支持 Intel 芯片的 Mac。
- 约 15 MB 磁盘空间。
安装
- 从 leonardoaguiar.com/scope 下载
.pkg。 - 打开它并按照安装器的提示操作。App 会安装到
/Applications/Scope.app。 - 安装结束后,Scope 会自动打开:显示它的窗口(只有顶栏,所有标签页都收起),菜单栏中也会出现它的图标。
注: Scope 尚未经过 Apple 公证。如果 macOS 拦下了安装器,请打开“系统设置” › “隐私与安全性”,找到相关提示并点按 仍要打开。只有第一次需要这样做。
在已有版本上安装新版本会保留你的设置。如果 App 正在运行,安装器会先将其关闭,安装完成后再重新打开。
数据存放位置
- 设置和默认目标保存在 App 的偏好设置中(
~/Library/Preferences/com.scope.app.plist)。 - 评估历史(你运行过的模块的目标、输入和结果,以及你保存的数据包抓取文件)保存在
~/Library/Application Support/Scope,仅存在于这台 Mac 上。 - 关于目标和结果的任何信息都不会离开 Mac,唯一的例外是模块向目标以及你指定的公共服务发出的请求。
卸载
- 按
⌘Q或点按菜单栏面板中的电源按钮退出 Scope。 - 将 Scope 从“应用程序”文件夹拖到废纸篓。
- 如需一并移除数据,请删除
~/Library/Application Support/Scope。
快速上手
首次启动时,Scope 会打开窗口(只有顶栏,所有标签页都收起),并在菜单栏中添加图标。它不请求任何权限;在你运行模块之前,除了检查更新,它不会连接任何地方。
第一次选择 Dashboard 时,它才会打开。顶部有一条提醒:只对你获准测试的系统进行评估;点按 I Understand(我知道了)即可隐藏。这只是提醒,并非门槛:只针对已授权的目标,是你自己的责任。
顶栏
每个工作区都是窗口顶部金属栏上的一个标签页,Dashboard 在最前,Settings 在最后。顶栏上还有:
- 中间铭牌上的 App 名称和版本号,旁边的 i 用于打开 About(关于);
- Search(搜索,
⌘F),一个覆盖 App 全部内容的搜索框:每个工作区、每个模块,以及各个支持页面。它还会列出 leonardoaguiar.com 旗下其他同系列 App 中的内容,并在对应的 App 中打开结果。 - 带两个箭头的方形更新按钮,用于检查更新,有新版本等待安装时会亮起;
- 关闭按钮,用于收起窗口,只留下菜单栏图标。
工作区
每个工作区左侧是模块边栏,右侧是所选模块的工作台。模块工作台显示模块名称及其用途、可输入内容的 Target(目标)栏、Run(运行)按钮、抓取到的输出(上方附有简短的 Result(结果)解读),以及它对应的真实工具。列表中只显示能在你的 Mac 上运行的模块;安装某个模块所需的工具后,它就会出现。
- Dashboard:指挥中心。包括授权提醒、关键数字(模块数、已完成、发现项、观测到的风险)、从侦察到报告的评估流程、根据发现项加权计算的风险评分、各步骤的模块覆盖情况、24 小时活动轨迹、最新发现项、实时 CVE 动态,以及通往每个工作区的磁贴。
- Recon:侦察。包括 DNS 与区域传送、WHOIS、基于证书透明度的子域名、主机与端口扫描、服务与操作系统指纹识别、横幅抓取、SMB、SNMP、SMTP、LDAP 和 RPC 枚举、TLS 证书以及路由追踪。内置检查可直接运行;其余使用
dig、whois、nmap和curl。 - Vuln:漏洞与情报。包括使用
nmap进行的服务与 TLS 审计、这台 Mac 的补丁检查、已知 CVE 查询和实时 CVE 动态,后两者都来自 NIST 国家漏洞数据库(NVD)。开放的端口或一条横幅信息只是有待核查的线索,并不等于已确认的漏洞。 - Web:通过 HTTP 或 HTTPS 进行的 Web 应用检查。包括同源爬虫、标出缺失安全标头的响应与会话审查,以及 API 响应检查器。绝不执行 JavaScript,也绝不提交表单。
- Access:内置的字典生成器。Scope 不运行在线或离线凭据攻击;这类工具请自行获取和运行,并且只用于你获准测试的系统。
- Wireless:读取这台 Mac 的蓝牙控制器和已知设备(
system_profiler)。Scope 不运行 Wi-Fi、无线电和硬件攻击。 - Traffic:使用
tcpdump进行数据包嗅探、协议分析和抓包。抓包结果可以写入评估文件夹中的文件。 - Analysis:针对 Mac 上文件的取证、逆向工程和密码学分析。包括哈希与完整性校验、日志与时间线读取、只读挂载、Mach-O 反汇编与静态分析(
otool、file、strings,以及已安装时可用的radare2、binwalk或volatility),还有一个密码学工作台:哈希识别、编码与解码、移位密码以及随机性分析。这里的一切都不会连接网络。 - Report:报告撰写。包括按严重程度从高到低排列的发现项列表、带明细的风险评分、每个发现项的修复建议、从侦察到报告串联起来的流程、可导出为 PDF 或 Markdown 的渗透测试报告、一个由专门用来攻破的目标组成的训练靶场,以及评估证据视图。
哪些会运行,哪些不会
每个模块要么运行内置检查,要么运行标准的命令行工具。内置模块无需安装任何东西。依赖工具的模块只有在 Mac 上存在该工具时才会出现;否则不会出现在列表中。目录中的某些能力(漏洞利用、密码破解、欺骗、Wi-Fi 与无线电攻击)完全不会从 Scope 运行;这些请另行获取真正的工具来使用,并且只用于你拥有或获准测试的系统。无论哪种情况,Scope 都会把输出、对输出的简短解读以及由此产生的发现项保存在本地评估历史中。
菜单栏
Scope 常驻在菜单栏中。点按它的图标会打开一个快捷面板:包括 App 本身、风险概览、通往每个工作区的磁贴(点按即在对应位置打开窗口),以及打开和退出的入口。Settings › Show icon in the menu bar(在菜单栏中显示图标)可以将图标隐藏;要找回窗口,请通过聚焦搜索再次打开 Scope。
堆叠窗口
当 leonardoaguiar.com 出品的多款 Mac App 同时打开时,它们的窗口会叠放成一体。在 App 菜单 › Stack Windows(堆叠窗口)中选择方式:Compact(紧凑)、Full Bars(完整顶栏)、Accordion(手风琴)或 Separate Windows(独立窗口)。
更新
Scope 每天会到 leonardoaguiar.com 检查一次新版本。此功能默认开启;可在 Settings › Check for updates automatically(自动检查更新)中关闭。
- 顶栏上 i 右侧带两个箭头的小方形按钮,点按即可检查更新。有新版本等待安装时,它会亮起橙色,角上有一盏指示灯,提示文字会写明版本号。
- App 菜单中的 Check for Updates…(检查更新)作用相同。
- Install updates automatically(自动安装更新,默认关闭,需要你手动开启)会在后台下载更新,并在 Scope 退出时安装,也可以在它显示的通知中立即安装。
- 每次更新都经过开发者签名,签名不符则会被拒绝。
帮助与问题报告
Help 菜单和 About 页面上的 Help 铭牌中包含:
- Scope Documentation(App 菜单中的 Documentation 也可打开):即本页。
- Changelog(更新日志):每个版本及其改动,内容读取自 leonardoaguiar.com,因此也包括比已安装版本更新的版本。同样的列表也可在 leonardoaguiar.com/scope/changelog 查看。
- Report a Bug…(报告问题,App 菜单中 Check for Updates… 的下方也有):一个向开发者发送报告的表单。
Report a Bug(报告问题)
| 栏位 | 填写内容 |
|---|---|
| Kind(类型) | Bug(错误)、Crash(崩溃)或 Suggestion(建议)。 |
| How often(频率) | Every time(每次)、Sometimes(有时)或 Once(一次);建议无需填写。 |
| Title(标题) | 用几个词概括问题,最多 140 个字符。 |
| What happened(发生了什么) | 你当时在做什么、看到了什么(如果是建议:你希望 App 做什么)。 |
| Steps to reproduce · optional(复现步骤,可选) | 如何让问题再次出现,每行一个步骤。 |
| What you expected · optional(预期结果,可选) | 原本应该发生什么。 |
| Email · optional(电子邮件,可选) | 用于通过邮件接收回复;绝不会公开或分享。 |
| Attachments(附件) | 最多 5 个文件,每个不超过 10 MB。 |
| Include system information(包含系统信息) | 默认开启:App 的版本和构建号、macOS 版本、Mac 的机型、处理器和内存,以及语言。点按 Show 可准确查看将发送的内容。 |
填好标题和描述后,即可使用 Send Report(发送报告,⌘↩)。所有内容会作为一份报告发送,并显示报告编号。发送前 Mac 需要先计算片刻,这样可以防止网站被自动化报告淹没。
Your Reports(你的报告)
从这台 Mac 发送的报告会列在表单旁边,显示各自的状态;有未读回复时会亮起橙色指示灯。点按某份报告即可阅读对话并补充细节。
使用统计与隐私
Scope 每天向 leonardoaguiar.com 发送一次匿名使用统计。此功能默认开启,帮助决定优先修复和改进什么。Settings › Send anonymous usage statistics(发送匿名使用统计)可将其关闭,尚未发送的内容会被丢弃。
会发送的内容:App 版本、macOS 版本、Mac 的机型标识符(例如 Mac15,3)、处理器类型、语言、几项设置的开关状态、App 被打开的次数、窗口打开的分钟数,以及每个工作区被打开的次数,均按天统计。同时发送的还有一个随机标识符,由 App 生成,仅用于此目的。
绝不会发送的内容:目标、输入、结果,以及你键入的任何内容。网站只记录统计数据来自哪个国家或地区,不记录 IP 地址。
除统计数据外,Scope 仅在以下情况连接 leonardoaguiar.com:检查和下载更新、显示更新日志,以及在你填写问题报告时发送报告并查看回复。它绝不会连接任何其他网络或主机。