Abhayparashar31/KRAKEN

GitHub: Abhayparashar31/KRAKEN

KRAKEN 是一款基于 Streamlit 的向导式 OSINT dork 生成器,帮助用户为多个搜索引擎和社交平台快速构建分类明确的高级搜索查询。

Stars: 0 | Forks: 0

![KRAKEN 横幅](https://static.pigsec.cn/wp-content/uploads/repos/cas/41/4153ec19f9c7712a817e01fec181af2d00521ba7b35abdc0702fde34c7940970.png) # 🐙 KRAKEN: OSINT Dork 生成器 KRAKEN 是一款向导式的引导工具,用于构建高级搜索引擎和社交媒体 **dorks** —— 即精确的 `site:`/`intitle:`/`filetype:` 样式的查询,常用于 OSINT 侦察、内容 发现和手动搜索细化。无需记住每个 引擎和平台的操作符语法,KRAKEN 会引导你回答几个简单的问题,并生成一套完整的、 分类明确且随时可用的查询,并附带可点击的链接。 ## ✨ 功能 - **向导式引导流程** —— 输入一个值,告诉 KRAKEN 它的参数类型(姓名、 用户名、邮箱、电话、网站、关键字),可选择添加日期范围,然后选择要为其生成 dorks 的 搜索引擎和/或社交平台。 - **参数类型感知** —— dorks 会根据你搜索的内容自动调整。用户名 会触发 `@handle`/`from:`/`author:` 样式的操作符;邮箱会提取其本地部分作为 *可能的* 用户名(明确标记为猜测);网站则会将所有内容切换为 `site:`/`url:` 样式的查询,而不是带引号的自由文本。 - **多引擎、多平台** —— 同时为多个搜索引擎和社交 平台生成 dorks,也可以缩小范围至仅一个。 - **模块化、独立的架构** —— 每个搜索引擎和社交平台都存在于 其各自的文件中,并拥有其 *完整的* pipeline:原始操作符语法 **以及** 最终 可点击的 URL。添加新模块无需对主应用进行任何更改(参见 [`instructions.txt`](./instructions.txt))。 - **分类结果** —— dorks 被分组到不同的标签页中(常规、操作符、文件提及、 图像、视频/音频、邮箱、密码、Intitle,以及特定平台的分类如用户、 媒体、互动等),而不是一长串扁平的列表。 - **社交平台的直达链接** —— X 和 Reddit 的 dorks 会直接在 `x.com/search` 和 `reddit.com/search` 上打开,不通过第三方搜索引擎路由。 - **额外的关键字细化** —— 在针对某个社交平台时,可选择添加逗号分隔的 关键字,这些关键字会以 AND(与)逻辑加入到为该平台生成的每个 dork 中。 - **手动 Dork 参考页面** —— 一个单独的、持久的页面,为每个受支持的 引擎/平台提供可点击的卡片。每张卡片都会打开一个模态框,其中包含静态 HTML 参考(操作符、 过滤器、dork 示例和用例),适合那些想手动构建 dorks 的人。 - **原始导出** —— 将生成的所有 dork 下载为纯文本 `.txt` 文件(纯查询字符串, 无标签或 URL —— 随时可以粘贴到任何地方)。 ## 🗂️ 项目结构 ``` KRAKEN/ ├── app.py # Main Streamlit wizard app ├── instructions.txt # Module contract for adding new engines/platforms ├── requirements.txt │ ├── engines/ # Search-engine modules (self-contained) │ ├── __init__.py │ ├── google.py │ ├── duckduckgo.py │ ├── yandex.py │ ├── yahoo.py │ ├── bing.py │ └── startpage.py │ ├── platforms/ # Social-platform modules (self-contained) │ ├── __init__.py │ ├── x.py │ └── reddit.py │ └── pages/ # Streamlit multipage app ├── Dork_Reference.py └── templates/ # Static HTML reference content per source ├── google.html ├── duckduckgo.html ├── yandex.html ├── yahoo.html ├── bing.html ├── facebook.html ├── reddit.html └── x.html ``` ## 🚀 快速开始 ### 前置条件 - Python 3.9+ - pip ### 安装说明 ``` git clone https://github.com//kraken.git cd kraken pip install -r requirements.txt ``` ### 运行 ``` streamlit run app.py ``` Streamlit 会在你的浏览器中打开 KRAKEN(默认:`http://localhost:8501`)。**手动 Dork 参考** 页面可在侧边栏中找到,或通过主 向导页面底部的链接访问。 ## 🧭 如何使用 1. **输入一个值** —— 姓名、用户名、邮箱、电话号码、网站或关键字。 2. **选择参数类型** —— 这会改变 KRAKEN 构建查询的方式(例如,用户名 会使用 `from:`/`author:` 方式处理;网站会使用 `site:`/`url:` 方式处理)。 3. **(可选)添加日期范围** —— 在引擎/平台支持的情况下限制结果范围。 4. **选择是否针对社交平台** —— 选择 **无**、一个、多个或 **全部**。 5. **选择一个或多个搜索引擎** 来生成常规网络 dorks。 6. **查看结果** —— 按类别分组到不同的标签页中,每个标签页都包含原始 dork 和一个可点击的 直接打开搜索的链接。 7. **下载** 原始 dork 列表(`.txt` 文件),如果你想保存或分享它们。 ![KRAKEN 测试图像](https://static.pigsec.cn/wp-content/uploads/repos/cas/8c/8cbd83cfd839de7a25c5ce7c3701e1c101f1f9fbd0391853d7a2e644185bfa02.png) ## 🧩 添加新的引擎或平台 KRAKEN 的设计使得添加对新搜索引擎(例如 Brave、Ecosia)或社交 平台(例如 Facebook、Instagram、LinkedIn)的支持完全无需修改 `app.py` —— 它会 自动发现放入 `engines/` 或 `platforms/` 中的每个模块。 请参阅 **[`instructions.txt`](./instructions.txt)** 了解每个模块必须遵循的完整约定, 包括必需的常量(`NAME` / `DOMAIN`、`DISPLAY_NAME`)、必需的 `generate_dorks(...)` 函数签名,以及预期的返回数据结构 (`dict[category] -> list[(label, raw_dork, full_url)]`)。 简而言之: ``` # engines/newengine.py NAME = "NewEngine" def generate_dorks(value, ptype, date_from=None, date_to=None): ... return { "General-Dorks": [(label, raw_dork, full_url), ...], ... } ``` 放入文件,重启应用,它就会自动出现在引擎/平台 选择器中。 ## 📚 手动 Dork 参考 除了生成器之外,KRAKEN 还为喜欢手动编写 dorks 的用户提供了一个静态参考页面。每张卡片(Google、DuckDuckGo、Yandex、Yahoo、Bing、Startpage、X、Reddit、 Facebook、Instagram)都会打开一个模态框,渲染来自 `pages/dork_references/.html` 的 HTML 文件。如果某个源对应的文件尚未创建,系统会显示一个通用的 占位符 —— 这样你就可以逐个填充这些内容,而无需修改任何 Python 代码。 ## ⚠️ 负责任地使用 KRAKEN 是一款 **查询构建工具**,而不是 scraper、凭证测试工具或自动化 框架。它不会: - 访问、存储或传输任何人的私人数据 - 绕过任何类型的登录、CAPTCHAs、速率限制或身份验证 - 自动化账户创建、抓取或对任何平台进行大规模请求 你有责任: - 仅对你授权研究的目标(你自己、 同意的客户,或在法律和道德范围内的公开信息)使用生成的 dorks - 遵守你查询的每个搜索引擎和平台的服务条款 - 遵守你所在司法管辖区有关 OSINT 和数据收集的适用法律 ## 🛣️ 路线图 - [ ] Facebook dork 模块(用户 / 照片 / 页面 / 地点 / 帖子 / 事件) - [ ] Instagram dork 模块(用户 / 照片 / 页面 / 地点 / 帖子 / 标签 / 短视频) - [ ] 额外的搜索引擎(Brave、Ecosia 等) - [ ] Subreddit 名称和 List-ID 输入字段(目前基于占位符) - [ ] 打包为可安装的 CLI 工具 / Kali 软件包 ## 📄 许可证 *(在发布之前,在此处添加你首选的许可证 —— 例如 MIT、Apache 2.0。)* ## 🤝 贡献 我们欢迎遵循 `instructions.txt` 约定添加新引擎/平台模块的贡献, 或者扩展手动 Dork 参考 HTML 内容的贡献。请提交一个 issue 或 pull request 来描述你的新增内容。
标签:ESC4, Kubernetes, OSINT, 后端开发, 实时处理, 开发辅助工具, 搜索引擎, 逆向工具