btncwn/Attack-Surface-Discovery-Toolkit
GitHub: btncwn/Attack-Surface-Discovery-Toolkit
基于 Python 和 Streamlit 的攻击面管理平台,帮助安全团队发现互联网暴露资产、评估风险态势并持续跟踪攻击面变化。
Stars: 0 | Forks: 0
# 攻击面发现工具包
基于 Python 的攻击面管理(ASM)和安全评估平台,旨在识别外部暴露的资产、评估安全态势、利用威胁情报丰富分析结果,并随时间推移跟踪攻击面风险。
## 概述
攻击面发现工具包可帮助安全专业人员识别、评估和监控面向互联网的资产。该平台将攻击面发现、安全态势评估、威胁情报丰富、风险评分、历史跟踪和自动化报告整合在一个 Streamlit 仪表板中。
该项目旨在模拟安全运营、漏洞管理和威胁情报团队常用的攻击面管理(ASM)和暴露管理工作流程。
## 在线演示
https://attack-surface-discovery-toolkit.streamlit.app
## 主要功能
### 攻击面发现
* DNS 枚举
* WHOIS 情报
* SSL 证书分析
* 端口扫描
* 子域名枚举
* 技术指纹识别
### 安全评估
* 安全标头分析
* 攻击面风险评分
* 风险等级分类
* 发现与建议引擎
### 威胁情报
* AlienVault OTX 威胁情报集成
* 可选的 Shodan 情报集成
### 历史分析
* SQLite 历史扫描数据库
* 当前与历史扫描对比
* 历史风险跟踪
* 风险趋势可视化
### 报告
* HTML 报告导出
* PDF 报告导出
* JSON 报告导出
### 仪表板
* 交互式 Streamlit 仪表板
* 攻击面评分可视化
* 发现结果仪表板
* 威胁情报丰富
* 历史扫描跟踪
## 技术栈
* Python
* Streamlit
* SQLite
* Requests
* dnspython
* python-whois
* AlienVault OTX API
* Shodan API(可选)
## 仪表板截图
### 仪表板概览

### 攻击面风险评估

### 威胁情报丰富

### 历史风险跟踪

## 示例工作流程
1. 输入目标域名。
2. 执行 DNS、WHOIS、SSL 和端口分析。
3. 识别暴露的服务和技术。
4. 分析 HTTP 安全标头。
5. 利用威胁情报丰富分析结果。
6. 计算攻击面风险评分。
7. 与之前的评估进行对比。
8. 将结果导出为 HTML、PDF 或 JSON 报告。
## 安装说明
克隆代码库:
```
git clone https://github.com/btncwn/Attack-Surface-Discovery-Toolkit.git
cd Attack-Surface-Discovery-Toolkit
```
创建并激活虚拟环境:
```
python3 -m venv venv
source venv/bin/activate
```
安装依赖:
```
pip install -r requirements.txt
```
启动应用程序:
```
python -m streamlit run app.py
```
## 可选 API 集成
### AlienVault OTX
创建一个免费的 AlienVault OTX 账户并生成 API 密钥。
可以直接在仪表板侧边栏中输入该 API 密钥。
### Shodan
在拥有有效的 API 计划时,支持 Shodan 信息丰富。
可以直接在仪表板侧边栏中输入该 API 密钥。
### 安全提示
该应用程序不会存储 API 密钥。
AlienVault OTX 和 Shodan API 密钥需要在 Streamlit 仪表板中手动输入,且仅在活动的扫描会话期间使用。
## 使用场景
* 攻击面管理(ASM)
* 安全态势评估
* 暴露管理
* 威胁情报丰富
* 漏洞识别
* 安全研究
* 网络安全作品集展示
## 未来增强功能
* CVE 丰富
* 更多威胁情报来源
* 定时评估
* 暴露变更警报
* 资产清单管理
## 免责声明
本项目仅供教育、研究和授权的安全评估目的使用。
在对您不拥有或管理的系统进行扫描之前,请务必获取相关许可。
标签:GitHub, GPT, Kubernetes, Python, Streamlit, 动态插桩, 反取证, 威胁情报, 字符串匹配, 安全评估, 实时处理, 开发者工具, 无后门, 漏洞管理, 访问控制, 资产测绘, 逆向工具