microsoft/AttackSurfaceAnalyzer
GitHub: microsoft/AttackSurfaceAnalyzer
微软开发的操作系统攻击面分析工具,通过对比软件安装前后的系统安全配置变更来发现潜在风险。
Stars: 2945 | Forks: 294
# Attack Surface Analyzer
Attack Surface Analyzer 是一款由 [Microsoft](https://github.com/microsoft/) 开发的开源安全工具,用于分析目标系统的攻击面,并报告在软件安装或系统配置错误期间引入的潜在安全漏洞。
[](https://www.nuget.org/packages/Microsoft.CST.AttackSurfaceAnalyzer.CLI) [](https://www.nuget.org/packages/Microsoft.CST.AttackSurfaceAnalyzer.CLI)
## 最新版本
Attack Surface Analyzer 的开发主要集中在 [release/v2.3](https://github.com/microsoft/AttackSurfaceAnalyzer/tree/release/v2.3) 分支上。
## 获取 Attack Surface Analyzer
如果你已安装 [.NET SDK](https://dotnet.microsoft.com/download),可以通过以下命令安装 Attack Surface Analyzer:
`dotnet tool install -g Microsoft.CST.AttackSurfaceAnalyzer.CLI`。
Attack Surface Analyzer 的各平台二进制文件通过我们的 GitHub [releases](https://github.com/Microsoft/AttackSurfaceAnalyzer/releases/latest) 页面分发。
### Linux/Docker 上的依赖项
Attack Surface Analyzer 基于 .NET 构建,因此必须安装 [.NET 的 Linux 依赖项](https://github.com/dotnet/core/blob/main/release-notes/9.0/install-linux.md) 才能运行 ASA。某些 Linux 发行版可能默认不包含这些包。
要在 Docker 中运行 Attack Surface Analyzer,你应该使用 [.NET Docker Image Base](https://hub.docker.com/_/microsoft-dotnet-sdk/) 或其他已安装 .NET SDK 的镜像,然后在你的 Dockerfile 中安装 ASA 工具,例如 `RUN dotnet tool install -g Microsoft.CST.AttackSurfaceAnalyzer.CLI`
## 文档
文档可在 [Wiki](https://github.com/Microsoft/AttackSurfaceAnalyzer/wiki/) 上获取。
[API](https://microsoft.github.io/AttackSurfaceAnalyzer/api/) 文档可在 GitHub Pages 上获取。
## 2.3 版本的新功能
- 全新的 Blazor GUI,带有规则编写和测试沙盒
- 新的收集器
- 改进了收集和分析性能。
- 支持 C# 10/.NET 6
## 概述
Attack Surface Analyzer 2 取代了最初的 Attack Surface Analyzer 工具,后者于 2012 年公开发布。
Attack Surface Analyzer 的潜在用户包括:
* DevOps 工程师 - 查看安装软件时引入的系统攻击面变化。
* IT 安全审计员 - 评估安装第三方软件时带来的风险。
## 核心功能
Attack Surface Analyzer 的核心功能是能够对安装软件组件前后的操作系统安全配置进行“差异对比”(diff),并对结果运行任意复杂的规则以呈现有价值的发现。这非常重要,因为大多数安装过程都需要提升的权限,而一旦授予权限,可能会导致意外的系统配置更改。
Attack Surface Analyzer 目前会报告以下操作系统组件的更改:
- 文件系统(提供静态快照和实时监控)
- 用户账户
- 服务
- 网络端口
- 证书
- 注册表
- COM 对象
- 事件日志
- 防火墙设置
- Wi-Fi 网络
- 加密密钥
- 进程
- TPM 信息
所有收集的数据都存储在一组本地 SQLite 数据库中。
## 如何使用 Attack Surface Analyzer
在管理员命令行(或以 root 身份)中运行以下命令。根据你的平台,将 ```asa``` 替换为相应的 ```asa.exe```。
### CLI 模式
要启动默认的所有收集器,请运行:```asa collect -a```
要比较最近两次的收集运行结果:```asa export-collect```
有关其他命令,请运行:```asa --help```
### GUI 模式
要使用 GUI 界面,请运行:```asa gui```,随后将打开一个浏览器窗口,访问基于 Web 界面的 ```http://localhost:5000```。
有关如何使用 Attack Surface Analyzer 的详细信息,请查阅我们的
[wiki](https://github.com/Microsoft/AttackSurfaceAnalyzer/wiki)。
## 构建
要构建 Attack Surface Analyzer,请参阅 [BUILD](https://github.com/Microsoft/AttackSurfaceAnalyzer/blob/main/BUILD.md)。
## 版本
带有公开构建的 Attack Surface Analyzer 最新公开版本是 2.3(参见 [Release\v2.3](https://github.com/Microsoft/AttackSurfaceAnalyzer/tree/release/v2.3))。
## 报告安全问题
安全问题和新 Bug 应通过电子邮件私下报告给 Microsoft 安全响应中心 (MSRC),邮箱为 [secure@microsoft.com](mailto:secure@microsoft.com)。你应该会在 24 小时内收到回复。如果由于某种原因你没有收到回复,请通过电子邮件跟进,以确保我们收到了你的原始邮件。更多信息,包括
[MSRC PGP](https://technet.microsoft.com/en-us/security/dn606155) 密钥,可以在
[Security TechCenter](https://technet.microsoft.com/en-us/security/default) 中找到。
## 许可证
Attack Surface Analyzer 2 采用
[MIT 许可证](https://github.com/Microsoft/AttackSurfaceAnalyzer/blob/main/LICENSE) 授权。
标签:AlienVault OTX, API接口, 多人体追踪, 多包管理, 安全基线检测, 攻击面分析, 系统配置审计, 请求拦截, 配置审计