sanyanabs/OSINT-Threat-Intelligence-Tool

GitHub: sanyanabs/OSINT-Threat-Intelligence-Tool

基于 FastAPI 构建的自动化 Web 侦察工具,能够一站式收集目标域名的多维度信息并生成安全评估报告。

Stars: 0 | Forks: 0

# OSINT 威胁情报工具 ## 概述 本项目是一个使用 Python 和 FastAPI 构建的 Web 侦察工具。它能够自动收集有关目标域名的信息,并将结果汇总到一份综合报告中。 该工具可执行常见的侦察任务,例如查询 WHOIS 信息、收集 DNS 记录、检查 SSL 证书、识别 Web 技术、扫描常见端口以及审查基础安全 HTTP 标头。扫描完成后,它会生成一份文本报告和一份可供下载的 PDF 报告。 构建此项目旨在练习自动化侦察任务,同时将代码组织成小型的、可复用的模块。 # 功能 * 域名解析 * WHOIS 查询 * DNS 记录收集 * 子域名发现 * IP 地址及基础地理位置查询 * HTTP 响应标头收集 * SSL/TLS 证书检查 * robots.txt 获取 * sitemap.xml 获取 * 常见端口扫描 * Web 技术检测 * 基础安全观察 * 风险发现与建议 * PDF 报告生成 * 基于 FastAPI 的 REST API # 项目结构 ``` app/ │ ├── api/ │ └── API endpoints │ ├── reports/ │ ├── report_generator.py │ └── pdf_generator.py │ ├── services/ │ ├── dns.py │ ├── dns_records.py │ ├── findings.py │ ├── http_headers.py │ ├── ip_lookup.py │ ├── port_scanner.py │ ├── robots_checker.py │ ├── sitemap_checker.py │ ├── ssl_checker.py │ ├── subdomain_enum.py │ ├── technology_detector.py │ └── whois_lookup.py │ ├── main.py │ tests/ │ requirements.txt ``` # 架构 应用程序被划分为多个小型服务模块。每个模块负责收集一种类型的信息。API 负责协调整个扫描过程,从各个服务中收集结果,并将所有数据传递给报告生成器。 这种架构使得添加新模块变得更加容易,而无需更改应用程序的其余部分。 ``` User │ ▼ FastAPI │ ▼ Recon Coordinator │ ├── WHOIS ├── DNS ├── IP Lookup ├── Subdomains ├── Port Scan ├── Technology Detection ├── HTTP Headers ├── SSL Checker ├── robots.txt └── sitemap.xml │ ▼ Findings Generator │ ▼ Report Generator │ ┌────┴────┐ ▼ ▼ Text PDF ``` # 安装说明 克隆代码库。 ``` git clone https://github.com/sanyanabs/web-recon-automation-framework.git cd web_recon_automation+framework ``` 创建虚拟环境。 ``` python3 -m venv venv ``` 激活虚拟环境。 macOS/Linux ``` source venv/bin/activate ``` 安装所需的依赖包。 ``` pip install -r requirements.txt ``` # 运行应用程序 启动 FastAPI 服务器。 ``` python3 -m uvicorn app.main:app --reload ``` 在浏览器中打开 Swagger。 ``` http://127.0.0.1:8000/docs ``` # 工作原理 1. 输入目标域名。 2. 应用程序从每个服务中收集侦察数据。 3. 结果分析模块会审查这些结果,并识别出基础的安全问题。 4. 生成报告。 5. 报告可以 PDF 格式下载。 # 使用的库 | 库 | 用途 | | ------------- | ---------------------------- | | FastAPI | API 框架 | | Uvicorn | 应用服务器 | | Requests | HTTP 请求 | | python-whois | WHOIS 查询 | | dnspython | DNS 查询 | | ipinfo | IP 地理位置 | | ReportLab | PDF 生成 | | BeautifulSoup | HTML 解析与技术检测 | | socket | 端口扫描 | | ssl | SSL 证书检查 | # 局限性 * 端口扫描器仅检查一小部分常见的端口。 * 子域名发现使用预定义的字典,可能无法找到所有子域名。 * 技术检测依赖于公开可用的信息。 * 地理位置信息依赖于第三方服务。 * 安全检查是基础的,不能替代全面的安全评估。 # 未来改进 扩展该项目的一些想法包括: * 增加更多的被动侦察来源 * Certificate Transparency 日志搜索 * 并发扫描以获得更快的结果 * 导出为 JSON 或 CSV * 身份验证与扫描历史记录 * 更详细的安全检查 # 为什么采用这种结构? 我将每项侦察任务都分离到了各自的模块中,以便每个模块都只承担单一职责。这使得代码更易于阅读、测试和维护。这也意味着以后可以在不更改现有模块的情况下添加新的侦察模块。
标签:AV绕过, ESC4, FastAPI, GitHub, OSINT, Python, Splunk, 动态插桩, 威胁情报, 实时处理, 密码管理, 开发者工具, 无后门, 网络测绘, 逆向工具