404saint/surfacelens_v2

GitHub: 404saint/surfacelens_v2

战术攻击面管理与影子 IT 智能引擎,通过多源数据聚合与风险评分提升暴露面可见性。

Stars: 0 | Forks: 0

# 🛰️ SurfaceLens V2 ![Python](https://img.shields.io/badge/language-python-3776AB?logo=python&logoColor=white) ![License](https://img.shields.io/badge/license-MIT-green) ![Status](https://img.shields.io/badge/status-v2.0--stable-blue) ![Security](https://img.shields.io/badge/use--case-attack%20surface%20mgmt-critical) ![Shadow IT](https://img.shields.io/badge/feature-shadow%20IT-orange) **SurfaceLens V2** 是一个模块化的 **攻击面管理(ASM)& 影子 IT 智能引擎**。它聚合多个全球提供商的数据,帮助安全团队识别暴露资产、验证归属并评估风险——通过统一的智能管道实现。 ## 🔍 为何选择 SurfaceLens V2? 在云环境蔓延的时代,组织面临 **影子 IT(Shadow IT)** 的挑战: * **子域名接管:** 指向无效 IP 的遗忘 DNS 记录。 * **暴露的管理面板:** RDP、SSH 和数据库端口对外公开。 * **归属差距:** 属于公司但不符合企业 DNS 模式的资产。 * **合规漂移:** 运行过时 TLS 或缺少安全标头的服务。 SurfaceLens 提供 **暴露面的战术地图**,助你从被动应急响应转向主动表面加固。 ## 🏗️ 架构概览 ``` %%{init: {'theme': 'base', 'themeVariables': { 'primaryColor': '#0a0a0c', 'primaryTextColor': '#e0e6ed', 'primaryBorderColor': '#00f2ff', 'lineColor': '#888', 'secondaryColor': '#16161a', 'tertiaryColor': '#16161a'}}}%% graph TD Start[Start: Launch SurfaceLens CLI] ProvConfig{Provider Selection:
LeakIX, Shodan, Censys,
CriminalIP, Local, Active} QueryIn[Input: Query &
Corporate Domain] Discovery[Stage 1: Asset Discovery] subgraph Pipeline [Stage 2: Intelligence Pipeline] mod_delta[1. Delta tracking
First/Last Seen] mod_ssl[2. SSL Auditor
TLS/Cert Verification] mod_dns[3. DNS Correlator
Attribution/Shadow IT] mod_hunt[4. Sensitive File Hunter
Robots/Env/Exposures] mod_finger[5. Fingerprinter
Tech Identification] mod_risk[6. Risk Prioritizer
Weighted Scoring] end DB[(SQLite Backend
Enriched Inventory)] Terminal[CLI Output
Real-time Analysis] Markdown[Markdown Reports
Auditor Ready] Dashboard[Web Dashboard
Command Center] Start --> ProvConfig ProvConfig --> QueryIn QueryIn --> Discovery Discovery --> mod_delta mod_delta --> mod_ssl mod_ssl --> mod_dns mod_dns --> mod_hunt mod_hunt --> mod_finger mod_finger --> mod_risk mod_risk --> DB DB --> Terminal DB --> Markdown DB --> Dashboard ``` ## ⚙️ 工作流程 1. **发现(多源)** 从 **LeakIX、Shodan、Censys、CriminalIP** 或 **本地数据集** 聚合原始资产数据。 2. **去重与增量跟踪** 引擎将发现结果与本地 SQLite 数据库交叉比对,跟踪 **首次出现** 时间戳并识别新暴露。 3. **智能管道("大脑")** 每个资产都会经过专用诊断模块: * **SSL 审计器:** 提取证书并验证 TLS 协议。 * **DNS 关联器:** 执行反向 DNS 查找并检查域名关联/影子 IT。 * **指纹识别器:** 识别 Web 服务器和技术(Cloudflare、Nginx 等)。 * **探测工具:** 探测常见敏感文件暴露(如 `robots.txt`、`.env`)。 * **风险优先级评估器:** 根据所有发现计算加权 0–10 风险评分。 4. **可视化与报告** * **CLI:** 带有颜色编码风险级别的高保真终端输出。 * **Markdown:** 适合审计的报告文档。 * **仪表板:** 支持 Flask 的深色模式 Web UI,用于库存管理。 ## 🚀 安装 ``` # 克隆仓库 git clone https://github.com/404saint/surfacelens_v2.git cd surfacelens_v2 # 安装依赖 pip install -r requirements.txt ``` ### 🔑 配置 SurfaceLens 是模块化的。你只需为打算使用的提供商配置密钥。将它们导出到环境变量: ``` export SHODAN_API_KEY='your_key' export LEAKIX_API_KEY='your_key' # 适用于“active”和“local”模式,开箱即用! ``` ## 🛠️ 使用 ### 命令行界面 运行主引擎以开始扫描并生成报告: ``` python3 surfacelens.py ``` *使用 `python3 surfacelens.py --reset` 清除本地数据库并重新开始。* ### 智能仪表板 启动基于 Web 的库存浏览器: ``` python3 dashboard.py ``` 访问地址:`http://127.0.0.1:5000` ## 🛡️ 伦理使用 SurfaceLens 专为 **防御性安全研究** 和 **授权审计** 设计。它使用被动数据源和非侵入式主动检查。不要在未获得明确许可的基础设施上使用此工具。 ## 📄 许可证 根据 MIT 许可证分发。详见 `LICENSE` 以获取更多信息。
标签:ASM, DNS关联, Python, SEO标签, SSL审计, TLS证书验证, XSS, 云资产, 合规漂移, 命令控制, 威胁情报, 子域名接管, 安全扫描, 开发者工具, 开源安全工具, 归属验证, 影子IT, 攻击表面管理, 数据采集, 无后门, 时序注入, 暴露面管理, 模块化架构, 漏洞情报, 网络安全, 逆向工具, 逆向工程平台, 隐私保护