FlowThingy/FlowOsint

GitHub: FlowThingy/FlowOsint

一款无需 API key、集成 55 个模块的一体化 Web 侦察与 OSINT 框架,通过交互式终端菜单自动映射目标攻击面。

Stars: 0 | Forks: 0

# FlowOsint ![FlowOsint](https://static.pigsec.cn/wp-content/uploads/repos/cas/cb/cb90c733a9336b51a5b7e7c1dd86c7ff00a4411eef95f634eba53ecea93bdc6c.png) **高级 Web 侦察与 OSINT 工具** 无需 API key。无需账户。只需 Python 和一个你已获授权测试的目标。 [![Python](https://img.shields.io/badge/Python-3.10+-blue.svg)](https://python.org) [![License](https://img.shields.io/badge/License-MIT-green.svg)](LICENSE) [![Modules](https://img.shields.io/badge/Modules-55-red.svg)](README.md) ## 目录 - [功能介绍](#what-it-does) - [环境要求](#requirements) - [安装说明](#installation) - [快速开始](#quick-start) - [模块参考](#module-reference) - [输出文件](#output-files) - [设置](#settings) - [常见问题](#faq) - [故障排除](#troubleshooting) - [法律与免责声明](#legal--disclaimer) ## 功能介绍 FlowOsint 跨侦察、漏洞探测和威胁情报运行 55 个模块 —— 所有这些都通过单个脚本完成。你无需在十几个工具之间来回切换,而是获得一个菜单驱动的界面,处理完整的被动和主动侦察工作流。 它可以发现以下内容: - 隐藏的管理面板、备份文件和配置泄露(`/.env`、`/.git`、`/phpinfo.php`) - 遗留在 JavaScript 文件中的 API key、AWS 凭证、JWT 和 token - 所有者遗忘的子域名 —— 通常运行着过时或未受保护的软件 - 泄露在页面源码中的电子邮件地址、内部路径和开发者注释 - 安全配置错误 —— 缺失的 header、开放的 CORS、弱 TLS 密码、可伪造的电子邮件域名 - 从 Shodan InternetDB 获取的开放端口和已知的 CVE - 域名或其 IP 是否出现在违规数据库或威胁情报源中 所有内容都会自动保存到带有时间戳的 JSON 报告、格式化的 Markdown 漏洞赏金报告、实时会话日志以及可查询的 DuckDB 数据库中。 ## 环境要求 | 要求 | 详情 | |-------------|---------| | Python | 3.10 或更高版本 —— 使用 `python --version` 检查 | | 操作系统 | Windows、Linux、macOS | | 互联网 | 所有网络模块必需 | | API key | 无 —— 所有模块均可免注册运行 | ## 安装说明 ### 1 — 获取文件 ``` git clone https://github.com/FlowThingy/FlowOsint cd FlowOsint ``` 没有 Git?从 GitHub 页面下载 ZIP 文件,解压并打开该文件夹。 ### 2 — 运行 就这么简单。启动器会自动处理其余所有事情 —— 它们会创建虚拟环境,将所有依赖项安装到其中,然后启动该工具。你永远不需要手动操作 `pip`。 **Windows** —— 在文件资源管理器中双击: ``` run.bat ``` **Linux / macOS:** ``` chmod +x run.sh && ./run.sh ``` **首次启动时会发生什么:** ``` [*] First run detected - setting up virtual environment... [+] Virtual environment created. [*] Checking dependencies... [+] Dependencies OK. ``` 首次运行后,它会直接跳到 `[*] Checking dependencies...` 并在几秒钟内启动。 ## 快速开始 工具启动后,你会看到主菜单 —— 包含 3 页模块,按 **`N`** 在它们之间导航。 **3 步执行完整扫描:** ``` 1. Type: 01 → Enter (Full Recon — runs everything) 2. Enter target URL: https://example.com 3. Wait. Press Enter when done to return to the menu. ``` 报告会自动保存在与脚本相同的文件夹中。 **运行单个模块:** ``` S → Settings → option 1 → set target URL Then type any module number from the menu ``` 设置一次目标意味着你每次运行模块时都不会被再次询问。 ## 模块参考 ### 第 1 页 — 侦察与 OSINT | # | 模块 | 描述 | |---|--------|-------------| | `01` | 全面侦察 | 端到端运行每个模块。获取完整画面的最佳起点。 | | `02` | 目录与文件暴力破解 | 测试 200 多个常见路径(`/admin`、`/.env`、`/backup.zip`、`/phpinfo.php`)以发现隐藏或暴露的文件 | | `03` | 子域名探测 | 探测 80 多个常见子域名前缀 —— `dev.`、`staging.`、`api.`、`git.`、`admin.` | | `04` | 链接与表单爬虫 | 递归抓取网站 —— 映射链接、脚本、样式表和表单 | | `05` | JS 文件分析 | 下载每个 JS 文件并扫描 API key、AWS 凭证、JWT、数据库 URL、内部 endpoint | | `06` | HTML 注释转储 | 提取隐藏的表单字段、HTML 注释、iframe 源以及敏感的 `data-*` 属性 | | `07` | CSS 资产提取器 | 从样式表中提取嵌入的 URL —— 有时会暴露内部资产服务器 | | `08` | Robots 与 Sitemap | 解析 `robots.txt`、`sitemap.xml`、`security.txt` —— `Disallow:` 条目通常直接指向敏感路径 | | `09` | 技术指纹 | 识别技术栈 —— CMS、框架、服务器、库、CDN | | `10` | WAF / CDN 检测 | 检测 Web Application Firewall 和 CDN(Cloudflare、Akamai、Incapsula、ModSec、F5) | | `11` | Header 检查器 | 转储完整的原始 HTTP 响应 header | | `12` | Cookie 审计器 | 列出所有 cookie 并标记缺少 `HttpOnly` / `Secure` 属性的项 | | `13` | DNS 记录查询 | 查询 A、AAAA、MX、NS、TXT、SOA、CAA、SRV 记录 | | `14` | WHOIS 查询 | 注册商、创建日期、到期时间、域名服务器 | | `15` | JS 密钥搜索器 | 与 `05` 相同,但使用爬虫已收集的脚本 | | `16` | 隐藏字段转储 | 查找页面上所有隐藏的输入项和敏感数据属性 | | `17` | 表单收集器 | 列出每个表单及其操作 URL、方法和字段名称 | | `18` | 电子邮件收集器 | 在已爬取页面上进行多线程电子邮件地址抓取 | | `19` | 开放重定向探测 | 测试常见的重定向参数以发现开放重定向漏洞 | | `20` | 开放端口扫描 | Socket 探测排名前 25 的端口 —— 发现暴露的数据库、RDP、Redis、MongoDB | | `21` | 导出报告 | 将本次会话中收集的所有内容保存为 JSON + Markdown | ### 第 2 页 — 漏洞与情报 | # | 模块 | 描述 | |---|--------|-------------| | `22` | SQLi 错误探测 | 发送 SQL 注入 payload 并监视响应中的数据库错误消息 | | `23` | XSS 反射测试 | 测试常见参数以发现反射型 XSS | | `24` | LFI 路径测试 | 针对 `/etc/passwd` 和 `win.ini` 的路径遍历探测 | | `25` | SSL/TLS 检查器 | 证书颁发者、过期时间、密码套件强度、Subject Alternative Names | | `26` | HTTP 方法测试 | 检查服务器接受哪些 HTTP 方法 —— 启用了 `PUT`、`DELETE`、`TRACE` 是一项发现 | | `27` | 点击劫持 / CSP 检查 | 检查 `X-Frame-Options` 和 `Content-Security-Policy` | | `28` | CORS 策略检查 | 发送精心构造的 origin header —— 如果将其反射回来,则说明 CORS 配置错误 | | `29` | IP 地理位置 | 解析为 IP 并返回位置、ISP、ASN、坐标 | | `30` | 反向 IP 查询 | 通过 HackerTarget 查询同一 IP 上托管的其他域名 | | `31` | SPF / DMARC 检查 | 快速的电子邮件身份验证记录检查 | | `32` | 安全 Header 审计 | 全面审计 —— HSTS、CSP、X-Content-Type-Options、Referrer-Policy、Permissions-Policy | | `33` | Google Dork 生成器 | 针对目标域名生成 20 个即用型 dork | | `34` | Shodan InternetDB | 免费的 Shodan 查询 —— 开放端口和已知 CVE,无需 API key | | `35` | VirusTotal 域名 | 跨 70 多个威胁情报引擎的域名信誉 | | `36` | Wayback Machine | 存档可用性、最旧和最新的快照 | | `37` | GreyNoise IP 检查 | 服务器 IP 是否是已知的互联网背景噪声或恶意行为者 | | `38` | urlscan.io 分析 | 完整的浏览器渲染扫描 —— 网络请求、屏幕截图、判定结论 | | `40` | HaveIBeenPwned | 针对 HIBP 数据库进行域名违规源检查 | | `41` | crt.sh CT 日志 | 证书透明度日志搜索 —— 通常能发现通过 DNS 探测找不到的子域名 | | `42` | 电子邮件安全审计 | 深入的 SPF、DMARC 和 DKIM 审计及风险评分 | | `43` | CMS Context JSON 探测 | 测试 CMS/API endpoint,这些端点有时会在未经授权的情况下暴露用户数据和配置 | ### 第 3 页 — 实用工具与辅助 | # | 模块 | 描述 | |---|--------|-------------| | `44` | 文档元数据收集 | 从 PDF 和 Office 文档中提取作者姓名、软件版本和内部路径 | | `45` | 风险评分报告 | 按严重程度和可信度对所有发现进行评分,生成最终报告 | | `46` | Playwright JS 扫描 | Headless 浏览器扫描 —— 拦截 API 调用,读取 localStorage 和 cookie | | `47` | JS 渲染爬取 | 使用真实浏览器的爬虫 —— 发现只有在 JavaScript 运行后才会出现的链接 | | `48` | DuckDB 查询 | 针对扫描数据库运行 SQL —— `SELECT * FROM findings WHERE severity='HIGH'` | | `49` | Trafilatura 提取 | 从任何页面提取干净的可读文本 | | `50` | 批量 URL 扫描器 | 一次检查多个 URL | | `51` | 字符串哈希 | MD5、SHA1、SHA256、SHA512 | | `52` | 编码 / 解码 Base64 | 编码或解码 Base64 字符串 | | `53` | 提取所有 URL | 列出爬取期间收集的每个 URL | ## 输出文件 所有输出都会自动保存在与脚本相同的目录中。文件名包含域名和时间戳,因此扫描之间绝不会相互覆盖。 | 文件 | 内容 | |------|----------| | `flowoosint_example_com_YYYYMMDD_HHMMSS.json` | 来自每个模块的完整原始数据 | | `flowoosint_example_com_YYYYMMDD_HHMMSS.md` | 格式化的漏洞赏金报告 —— 可直接粘贴到 HackerOne / Bugcrowd | | `flowoosint_session_YYYYMMDD_HHMMSS_log.txt` | 完整的终端输出日志 | | `flowoosint_example_com_YYYYMMDD_HHMMSS.duckdb` | 可查询的发现数据库 | ## 设置 在主菜单按 `S`。 | 选项 | 更改的内容 | |--------|----------------| | `1` | 目标 URL | | `2` | 线程数(默认 25 —— 如果目标封锁了你,请调低) | | `3` | 爬虫深度(默认 2) | | `4` | 代理 URL(例如用于 Burp Suite 的 `http://127.0.0.1:8080`) | | `5` | 用于目录暴力破解的自定义字典文件 | | `6` | 输出文件名 | ## 常见问题 **我需要创建任何账户或获取 API key 吗?** 不需要。Shodan InternetDB、GreyNoise 社区版、Wayback Machine、HaveIBeenPwned、urlscan.io 免费层级 —— 所有这些均无需注册即可使用。如果你拥有 VirusTotal 或 urlscan.io 的 key,可以选择通过“设置 → 额外 header”添加它,以获得更高的速率限制。 **目录暴力破解花费了很长时间 —— 这正常吗?** 是的。它正在测试数百个路径并乘以文件扩展名。在响应迅速的目标上,使用 25 个线程通常需要 2-5 分钟。如果你被封锁了(到处都是 429、503 错误),请在设置中减少线程数。 **我可以将它与 Burp Suite 一起使用吗?** 可以。设置 → 选项 `4` → `http://127.0.0.1:8080`。所有请求都将出现在 Burp 的代理历史记录中,以便进行手动跟进。 **JS 密钥扫描器发现了一些东西 —— 我怎么知道它是真实的?** 该工具运行 Shannon 熵和字符多样性过滤器,以丢弃明显的占位和测试值。任何通过过滤的内容都值得手动验证 —— 尝试针对其预期的服务使用该凭证,以确认其是否处于活动状态。 **我的报告在哪里?** 与 `flowoosint.py` 在同一个文件夹中。命名为 `flowoosint_` + 域名 + 时间戳。 **我可以只运行一个模块而不进行完整扫描吗?** 可以 —— 从菜单中输入任何模块编号。在“设置”中设置一次目标,这样你就不会每次都被问到。 ## 故障排除 **`ModuleNotFoundError: No module named 'X'`** 虚拟环境可能未正确设置。尝试: ``` # Windows venv\Scripts\activate pip install -r requirements.txt # Linux / macOS source venv/bin/activate pip install -r requirements.txt ``` **`[FATAL] Client.__init__() got an unexpected keyword argument 'proxies'`** ``` pip install "httpx[http2]" --upgrade ``` **`ImportError: Using http2=True but the 'h2' package is not installed`** ``` pip install "httpx[http2]" ``` **在 Linux 上找不到 `python3-venv`** ``` sudo apt install python3-venv ``` 然后再次运行 `./run.sh`。 **WHOIS 在 Windows 上发出警告并跳过** `whois` 二进制文件并非 Windows 内置。从 [Sysinternals](https://learn.microsoft.com/en-us/sysinternals/downloads/whois) 下载并将其添加到你的 PATH 中。或者直接跳过它 —— DNS 模块涵盖了大部分相同的信息。 **Playwright 模块(46、47)失败** ``` pip install playwright playwright install chromium ``` 所有其他模块在没有安装 Playwright 的情况下也能正常工作。 **工具似乎卡住了且没有输出** 它没有死机 —— 某些模块在某些目标上运行较慢。电子邮件收集器并行获取多达 80 个页面,并显示进度条。在缓慢的目标上进行目录暴力破解可能需要几分钟。按 `Ctrl+C` 中断并返回菜单。 **目录暴力破解返回了太多误报** 某些服务器无论请求的路径是否存在,对每个请求都返回 HTTP 200(软 404)。该工具已经过滤了 404、400、410 和 406。在软 404 服务器上,检查响应大小 —— 真实页面通常比通用的错误页面大得多。 ## 法律与免责声明 FlowOsint **专门**用于: - 你个人拥有的系统的安全评估 - 具有目标所有者签署的工作范围授权的渗透测试 - 目标被明确列为范围内的漏洞赏金计划 未经许可扫描系统属于刑事犯罪,违反**英国《1990 年计算机滥用法》**、**美国《计算机欺诈和滥用法》**、**欧盟《信息系统攻击指令》**以及大多数其他司法管辖区的同等立法。处罚从罚款到监禁不等,具体取决于国家和严重程度。 FlowOsint 的作者和贡献者对任何滥用行为不承担任何责任。如果你不确定自己是否有权测试某个目标 —— 那就是你没有权限。 *FlowOsint v2.01 — github.com/FlowThingy/FlowOsint* ## 贡献者 | | 名字 | GitHub | |-|------|--------| | | **FlowThingy** | [@FlowThingy](https://github.com/FlowThingy) | | | **Jello** | [@jelloyfizz-jpg](https://github.com/jelloyfizz-jpg) |
标签:ESC4, OSINT, Python, Web安全, 实时处理, 密码管理, 文件查看, 无后门, 特征检测, 蓝队分析, 运行时操纵, 逆向工具