TheRielax/dorky

GitHub: TheRielax/dorky

一款支持多引擎语法动态适配的综合 OSINT 侦察工具,用于高级 Dorking 搜索与目标数字足迹分析。

Stars: 0 | Forks: 0

# DORKY 🕵️‍♂️ ### 高级多引擎 Dorking 与动态语法适配器 **作者**:[rielax](https://github.com/TheRielax) ``` ██████╗ ██████╗ ██████╗ ██╗ ██╗██╗ ██╗ ██╔══██╗██╔═══██╗██╔══██╗██║ ██╔╝╚██╗ ██╔╝ ██║ ██║██║ ██║██████╔╝█████╔╝ ╚████╔╝ ██║ ██║██║ ██║██╔══██╗██╔═██╗ ╚██╔╝ ██████╔╝╚██████╔╝██║ ██║██║ ██╗ ██║ ╚═════╝ ╚═════╝ ╚═╝ ╚═╝╚═╝ ╚═╝ ╚═╝ ``` **DORKY** 是一款强大的、基于 Python 的侦察工具,旨在跨多个主流搜索引擎(**DuckDuckGo**、**Bing**、**Google**、**Brave Search** 和 **Yandex**)动态构建、适配和执行高级搜索查询。 传统的 dorking 脚本通常假设标准的 Google 语法在任何地方都适用,与此不同,**DORKY 具有智能的动态语法适配器**,能够将规范的搜索查询转换为每个独立引擎支持的确切原生语法。 ## ✨ 核心功能 - **🔄 多引擎动态适配**:自动将规范搜索运算符(`filetype:`、`intitle:`、`inurl:`、`intext:`、`-exclude`、精确引号)转换为特定引擎的等效项(例如,Yandex 的 `mime:`、`title:`、`url:`;Bing 的 `inbody:`)。 - **🕵️‍♂️ 目标侦察与 OSINT 套件(灵感来自 Ashok)**: - **🏗️ 目标基础设施、域名与 Web 指纹识别套件**:整合的侦察套件,将被动子域名发现、结构化站点树指纹识别和 DNS/安全审计合并到一个命令中心,包含 4 种专用模式: - **🌐 被动 DNS、WHOIS 与安全态势(SPF/DMARC 审计器)**:多层 WHOIS 联系人收集器,解析权威 IPv4 记录并评估电子邮件伪造的反网络钓鱼态势(`v=spf1` / `_dmarc`)。 - **🔍 被动子域名枚举**:通过证书透明度(`crt.sh`)、HackerTarget 和 UrlScan 索引日志进行即时被动发现。 - **🔬 Web 技术、CMS 与站点树指纹识别器**:Header、DOM 和结构化站点树分析器,可检测 CMS 平台、框架和 WAF,同时递归解析 `/robots.txt` 和 `/sitemap.xml`。 - **⚡ 全面自动化基础设施与站点树评估(ALL-IN-ONE)**:综合主扫描,自动执行 WHOIS/DNS 审计、被动子域名枚举、智能子域名存活性探测以及多主机站点树指纹识别。结合**子域名去重与防镜像分析**(`check_subdomain_liveness_and_uniqueness`)来探测每个发现的子域名,过滤掉死主机,检测返回根域名的重定向(`mail.domain -> domain`),并识别完全相同的内容镜像(`www.domain`),确保站点树和技术分析仅在真正唯一的活动子域名上运行,没有重复噪音。输出统一的 JSON 和 TXT 报告。 - **🏛️ Wayback Machine 历史档案与深度企业情报侦察**:以两种专用模式挖掘历史 CDX 档案(`web.archive.org`):**Wayback CDX 交互式 Dork 构建器与档案搜索**(交互式多过滤器向导,通过 `inurl:` 路径关键字、`-exclude` 排除项、`filetype:` 扩展名、如 200/403/301 的 `status:` HTTP 代码、`from/to` 日期范围,以及通过 `id_` 修饰符直接在存档的原始快照内进行**历史内容抓取(`intext:`)**,实现精确的历史 dorking)和**深度企业情报收集**(通过 CDX API 自动构建完整的历史站点树,将历史 URL 分类为目标情报类别——*联系人与团队*、*合作伙伴与客户*、*产品与项目*——并提取历史电子邮件地址、电话号码、增值税/税务 ID、分析跟踪代码和多语言快照中的实体提及,无需盲目的 404 猜测)。 - **🐙 GitHub 代码与机密 Dorking**:通过 REST API 扫描开源 GitHub 仓库,查找泄漏的 API 密钥、令牌、配置文件和目标域名提及(支持可选的 GitHub PAT)。 - **📞 电话号码 OSINT 与指纹识别**:使用 `phonenumbers` 和内部前缀映射对国际电话号码进行 100% 离线分析和正式验证。跨 4 个目标类别自动构建严格分组的布尔指纹 dork,并支持即时多引擎搜索执行。 - **📧 电子邮件地址 OSINT 与泄露指纹识别**:100% 离线解析和 MX 邮件交换解析(`dnspython`),对邮件基础设施进行分类。自动为数据泄露电子表格泄漏、Pastebin 转储和专业个人资料提及生成严格分组的布尔指纹 dork。 - **👤 用户名与社交跨平台指纹识别**:跨 13 个主要开发者、社交和游戏平台进行实时 HTTP 状态探测,实时确认活动个人资料,并伴随有针对性的跨平台布尔 dork。 - **🛡️ 反速率限制 WAF 绕过与弹性回退**:内置多层回退链和隐身机制。通过超现代的 User-Agent 池(`Chrome/126`、`Firefox/127`、`Edge`)和完整的 Client Hints 标头(`Sec-Ch-Ua`、`Sec-Fetch-Dest`、`Accept-Language`)模拟真实的桌面浏览器。具有动态随机抖动(在搜索引擎和内部重试循环之间),以防止 WAF 速率限制,并能够干净地处理 `0 result` 查询,而不会触发 CAPTCHA 阻止。 - **🛠️ 交互式 Dork 构建器**:逐步的交互式 CLI 向导,无需记住高级语法即可构建复杂查询。 - **🎯 预建侦察模板**:开箱即用的漏洞和 OSINT 搜索模板,用于查找暴露的配置文件、数据库转储、敏感日志和登录面板。 - **💾 多格式导出**:将结构化搜索结果导出为 **TXT**、**CSV** 或 **JSON**,以便轻松集成到自动化 OSINT pipeline 中。 - **⚡ 批量 Dork 字典自动化**:跨多个引擎批量执行自定义或预建的 dork 列表(`dorks_sample.txt`),支持自动目标域名范围设定和随机抖动。 - **🔑 官方 API 集成与回退**:为 Google Custom Search、Brave Search 和 GitHub 配置官方 API 密钥(`config.json` 或环境变量),实现即时、无 CAPTCHA 扫描。 - **📜 搜索历史会话管理**:自动跟踪过去的查询、目标范围和结果计数(`history.json`),允许在任何引擎上即时交互式重新执行。 ## 📦 安装与设置 ### 1. 克隆仓库 ``` git clone https://github.com/TheRielax/dorky.git cd dorky ``` ### 2. 设置虚拟环境(推荐) ``` # 在 Windows 上 python -m venv venv venv\Scripts\activate # 在 Linux/macOS 上 python3 -m venv venv source venv/bin/activate ``` ### 3. 安装依赖 ``` pip install -r requirements.txt ``` ## 🚀 快速入门与使用 ### Windows 用户(一键启动器) 只需双击随附的 `start_dorky.bat` 文件。它会自动将终端配置为 UTF-8 代码页(`chcp 65001`),激活 Python 虚拟环境,并执行 `dorky.py`。 ### 手动 CLI 执行 ``` python dorky.py ``` *(在 Windows cmd/PowerShell 上,如果 ASCII 艺术字渲染不正确,请运行 `python -X utf8 dorky.py`)* ## 🔑 API 密钥与 GitHub 令牌设置(可选) DORKY 开箱即用,使用直接 Web 抓取和公共搜索后端(`ddgs`)。但是,为了避免 CAPTCHA、速率限制或访问经过身份验证的扫描端点(如 GitHub 代码搜索),您可以配置官方 API 密钥。 您可以通过在主菜单中选择 **选项 [13](`Official API Keys Configuration`)**,或通过编辑 `config.json` / 设置环境变量,在 DORKY 中交互式配置您的密钥: - `GITHUB_API_TOKEN`(GitHub Personal Access Token) - `GOOGLE_API_KEY` & `GOOGLE_CSE_ID`(Google Custom Search API) - `BRAVE_API_KEY`(Brave Search API) ### 🐙 GitHub Personal Access Token 要求 使用 **选项 [9](`GitHub Code & Secret Dorking`)** 时,对 GitHub Search API(`/search/code`)的未经验证请求被限制为**每分钟 10 次请求**。添加 GitHub 令牌可将速率限制提高到**每分钟 30 次请求**,并允许搜索私有仓库。 - **令牌类型**:您可以使用 **Personal Access Token (classic)** 或 **Fine-grained Personal Access Token**。 - **所需权限 / Scopes**: - **对于公共仓库(标准 OSINT)**:**无需 scopes!** - *Classic PAT*:保持所有 scope 复选框**未选中**(无需任何权限)。 - *Fine-grained PAT*:选择 **Public Repositories (read-only)**。 - **对于私有 / 组织仓库**: - *Classic PAT*:勾选 `repo` scope(`Full control of private repositories`)。 - *Fine-grained PAT*:在 **Repository access** 下选择目标仓库,并在 **Repository permissions** 下授予 **Contents: Read-only**(或 **Code: Read-only**)。 ## 🧭 搜索引擎语法比较 | 运算符 | Google | DuckDuckGo / Bing | Yandex | Brave Search | | :--- | :--- | :--- | :--- | :--- | | **域名过滤器** | `site:domain.com` | `site:domain.com` | `site:domain.com` | `site:domain.com` | | **文件扩展名**| `filetype:pdf` | `filetype:pdf` | `mime:pdf` | `filetype:pdf` | | **标题匹配** | `intitle:"login"` | `intitle:"login"` | `title:"login"` | `intitle:"login"` | | **URL 匹配** | `inurl:admin` | `inurl:admin` | `url:admin` | `inurl:admin` | | **正文匹配** | `intext:"password"` | `inbody:"password"` | `"password"` | `"password"` | | **精确短语匹配** | `"confidential data"` | `"confidential data"` | `"confidential data"` | `"confidential data"` | | **排除项** | `-wordpress` | `-wordpress` | `~~wordpress` / `-` | `-wordpress` | ## 💡 建议与最佳实践 1. **保持依赖项更新**:搜索引擎的 HTML 布局和 API 经常演变。定期运行 `pip install --upgrade ddgs requests beautifulsoup4 googlesearch-python` 以保持最佳的抓取可靠性。 2. **使用目标域名限制**:在执行漏洞模板时,始终指定目标域名(`site:target.com`),以避免嘈杂的全球结果并保持在授权范围内。 3. **遵守速率限制**:如果在所有引擎上连续进行重度查询,请在搜索会话之间稍作停顿,以避免被搜索引擎边缘防火墙暂时封禁 IP。 ## ⚠️ 免责声明 **DORKY** 的开发严格用于授权的渗透测试、安全研究和防御性 OSINT 分析。作者不对使用此工具进行的任何滥用或未经授权的操作负责。在扫描或评估目标基础设施之前,请务必获得明确许可。
标签:逆向工具