Kirozaku/Wiwok

GitHub: Kirozaku/Wiwok

一款无需 API Key 即可对用户名、邮箱、电话和全名进行多维度 OSINT 调查并自动构建统一档案的开源情报工具。

Stars: 37 | Forks: 5

# WiwoK DetoK — OSINT 工具 ``` __ __.___ __ __________ ____ __. / \ / \ / \ / \_____ \ | |/ _| \ \/\/ / \ \/\/ // | \| < \ /| |\ // | \ | \ \__/\ / |___| \__/\ / \_______ /____|__ \ \/ \/ \/ \/ ``` ![Python](https://img.shields.io/badge/Python-3.x-blue?style=flat-square) ![Platform](https://img.shields.io/badge/Platform-Kali_Linux-red?style=flat-square) ![License](https://img.shields.io/badge/License-GPLv3-blue?style=flat-square) ![API Key](https://img.shields.io/badge/API_Key-Not_Required-brightgreen?style=flat-square) ![Version](https://img.shields.io/badge/Version-6.0.0--db2-orange?style=flat-square) 用于调查**用户名**、**邮箱**、**电话号码**和**全名**的 OSINT 工具 —— 无需 API Key,无需登录,无需额外设置。 ## 功能 - **零 API Key** —— 安装即可运行,无需任何配置 - **多目标** —— 用户名、邮箱、电话、全名 - **智能 OSINT 模式** —— 自动进行多层 pivot,带有置信度评分和统一档案构建器 - **自动 Pivot** —— 调查结果会自动串联成新的调查目标 - **并行扫描** —— 所有模块通过线程池并发运行 - **4 种扫描模式** —— `quick`、`standard`、`deep`、`smos` - **三重输出** —— JSON、TXT 和交互式 HTML 报告 - **68 个原生模块** —— 内置检查覆盖社交、学术、开发和公开记录来源 - **置信度评分** —— 根据来源可靠性将调查结果标记为 `HIGH`、`MEDIUM` 或 `LOW` - **误报过滤** —— 自动屏蔽 CDN URL、API endpoint 和签名 token - **插件系统** —— 通过 `.json` 文件添加自定义模块 - **支持 Kali Linux** ## 安装 ``` git clone https://github.com/kirozaku/wiwok cd wiwok python3 wiwok.py --setup ``` `--setup` 会自动处理一切:apt 包、pip 工具和二进制文件安装。 ### 验证 ``` python3 wiwok.py --check ``` ## 使用方法 ``` # 用户名 python3 wiwok.py johndoe # 电子邮件 python3 wiwok.py john@example.com # 电话 (E.164 format) python3 wiwok.py +6281234567890 # 全名 python3 wiwok.py -t name "John Doe" # 深度扫描 python3 wiwok.py -m deep johndoe # 深度扫描 + auto pivot python3 wiwok.py -m deep -P johndoe # 智能 OSINT 模式 (多层 auto pivot) python3 wiwok.py -m smos johndoe # 带自定义深度和目标限制的智能 OSINT python3 wiwok.py -m smos --depth 3 --max-targets 20 johndoe # 仅运行特定模块 python3 wiwok.py -r sherlock,maigret johndoe # 安静模式 (无实时输出,结果保存至文件) python3 wiwok.py -q johndoe ``` ### 选项 ``` -t force target type [username|email|phone|name] -m scan depth [quick|standard|deep|smos] -r comma-separated module list -P auto-investigate all discovered pivots -q quiet mode (no live output) --depth pivot depth for smos mode (default: 2, max: 4) --max-targets total target cap for smos mode (default: 12) --no-color disable colors --setup install all dependencies --update update all tools --check check module status ``` ## 扫描模式 | 模式 | 描述 | |------|-------------| | `quick` | 仅运行高权重模块 —— 速度最快,覆盖率较低 | | `standard` | 核心模块 —— 速度与覆盖率的默认平衡 | | `deep` | 包括外部工具在内的所有模块 | | `smos` | 智能 OSINT —— 自动多层 pivot,带有统一档案和置信度评分 | ### 智能 OSINT (`-m smos`) smos 会调查种子目标,提取 pivot(在结果中发现的邮箱、用户名、姓名),并自动重新调查每个 pivot —— 深度可配置。所有调查结果会跨目标去重,并合并为一个带有置信度级别的**统一档案**: - `[H]` **HIGH** —— 结构化 API 数据(GitHub、ORCID、HIBP 等) - `[M]` **MEDIUM** —— 已验证的 HTML 抓取(Instagram、TikTok、Mastodon 等) - `[L]` **LOW** —— 由外部工具推断(Sherlock、Maigret) ## 模块 ### 用户名 (40) | 模块 | 描述 | |--------|-------------| | sherlock | 在 300+ 社交平台上追踪用户名 | | maigret | 从 2000+ 个站点获取深度档案 | | socialscan | 在主要平台上进行可用性检查 | | whatsmyname | 在 17 个平台上进行内容验证检查 | | instagram_check | Instagram 原生检查 | | facebook_check | Facebook 原生检查 | | tiktok_check | TikTok 原生检查 | | snapchat_check | Snapchat 原生检查 | | youtube_check | YouTube 频道检查 | | twitch_check | Twitch 频道检查 | | steam_check | Steam 个人档案检查 | | pinterest_check | Pinterest 原生检查 | | telegram_check | Telegram 用户 / 频道 / 机器人(多层防误报) | | github_profile | GitHub 档案、代码库和关注者 | | github_emails | 从公开提交历史中提取邮箱 | | gitlab_profile | GitLab 公开档案和项目 | | codeberg_profile | Codeberg (Gitea) 公开档案 | | keybase | Keybase 上的身份证明 | | reddit_profile | 公开的 Reddit 档案和统计数据 | | bluesky_profile | Bluesky / AT Protocol 档案 | | mastodon_search | 跨核心实例的 Mastodon 账户查找 | | hackernews_profile | HackerNews —— karma、简介、提交计数 | | stackexchange_profile | StackOverflow / StackExchange 档案查找 | | lobsters_profile | Lobsters 技术社区 —— 信任链 & GitHub 链接 | | npm_profile | NPM 包 & 邮箱提取 | | pypi_profile | PyPI 包 —— 作者、邮箱、主页 | | cratesio_profile | Crates.io Rust 开发者档案 | | rubygems_profile | RubyGems 拥有的 gems & GitHub 链接 | | dockerhub_profile | Docker Hub —— 加入日期、公司、位置 | | devto_profile | Dev.to 档案 —— Twitter/GitHub 链接、位置 | | hashnode_profile | Hashnode 开发者博客档案 | | chesscom_profile | Chess.com —— 真实姓名、国家、Twitch | | lichess_profile | Lichess —— 简介、链接、位置 | | discogs_profile | Discogs 音乐收藏家 —— 真实姓名、位置 | | myanimelist_profile | 通过 Jikan 查询 MyAnimeList —— 性别、生日、位置 | | anilist_profile | 通过 GraphQL 查询 AniList 档案 | | pinboard_profile | Pinboard 公开书签 —— 兴趣 & 行为模式 | | unavatar | 用于反向图片搜索的个人头像 URL | | linkedin_dorks | LinkedIn 专属 Google dorks | | username_variants | 生成常见的用户名变体 | ### 邮箱 (9) | 模块 | 描述 | |--------|-------------| | holehe_full | 在 121 个平台上进行注册检查 | | emailrep | 邮箱信誉、泄露状态 & 社交足迹 | | hibp | Have I Been Pwned —— 泄露 & 粘贴检查 | | xposedornot | 通过 XposedOrNot 进行泄露检查 | | gravatar | 从邮箱哈希获取 Gravatar 档案 | | github_by_email | 链接到此邮箱的 GitHub 账户 | | email_sherlock | 从邮箱本地部分运行 Sherlock | | email_maigret | 从邮箱本地部分运行 Maigret | | wayback_check | Wayback Machine 快照 | ### 电话 (4) | 模块 | 描述 | |--------|-------------| | ignorant | WhatsApp、Instagram、Snapchat 检查 | | phoneinfoga | 运营商、位置和在线档案 | | phone_meta | 运营商、时区、号码类型 | | phone_format | 自动格式化号码变体(E.164、本地格式等) | ### 全名 (11) | 模块 | 描述 | |--------|-------------| | orcid_search | ORCID 研究员 ID —— 结构化作者查询 | | openalex_search | OpenAlex 作者 —— 作品、引用、h-index、机构 | | semanticscholar_search | Semantic Scholar —— 论文、引用、所属机构 | | crossref_search | CrossRef —— 带有作者验证过滤的出版物 | | openlibrary_search | Open Library —— 图书作者档案、作品、出生日期 | | opencorporates_search | 180+ 个国家的企业高管记录 | | opensanctions_search | 制裁名单、PEP、Interpol/OFAC 观察名单 | | fec_search | 美国政治捐款记录(地址、雇主) | | wikidata_search | Wikidata —— 出生、职位、外部 ID | | gdelt_news | GDELT —— 100+ 种语言的全球新闻报道 | | name_dorks | 针对全名的定向 Google dorks | ### 通用(4 —— 在所有目标类型上运行) | 模块 | 描述 | |--------|-------------| | wayback_check | Wayback Machine 快照 | | pastebin_search | 公开 pastebin 转储搜索 | | google_dorks | 即用型 Google dorks | | duckduckgo_search | DuckDuckGo 即时回答 | ## 输出 结果会自动保存到 `~/wiwok_results/`: ``` ~/wiwok_results/ ├── target_20240101_120000.json ├── target_20240101_120000.txt ├── target_20240101_120000.html └── target_smos_20240101_120000.json ← Smart OSINT unified profile ``` HTML 报告是交互式的 —— 每个模块的结果都可以折叠。 ## 插件系统 将 `.json` 文件放入 `~/.wiwok_plugins/` 即可添加自定义模块,无需修改源码: ``` { "my_module": { "type": "username", "weight": 7, "desc": "my custom module", "check": "my_tool", "cmd": "my_tool -u {s}", "timeout": 30, "install": "pip install my_tool" } } ``` 支持的 `type` 值:`username`、`email`、`phone`、`name`、`any` 权重范围:`0`(禁用)到 `10`(在 quick 模式下总是运行) ## 环境要求 - Python 3.8+ - Kali Linux(推荐)或任何基于 Debian 的发行版 通过 `--setup` 安装的工具: ``` sherlock apt holehe pip maigret pip socialscan pip ignorant pip phonenumbers pip phoneinfoga curl (binary) ``` ## 免责声明 本工具仅供教育目的和合法的安全研究使用。作者不对任何滥用行为负责。在调查任何个人或组织之前,请确保您已获得适当的授权。 部分内容借助了 AI 工具编写。 ## 许可证 Copyright (C) 2026 Kirozaku 本程序为自由软件:您可以重新分发和/或修改它,前提是遵守自由软件基金会发布的 GNU 通用公共许可证条款,或者使用该许可证的第 3 版,或(由您自行选择)任何更高版本。 分发本程序的目的是希望它能有用,但不提供任何保证;甚至不提供适销性或特定用途适用性的暗示保证。详情请参阅 [LICENSE](LICENSE) 文件。
标签:ESC4, ESC8, OSINT, Python, 二进制模式, 实时处理, 无后门, 社会工程学, 网络侦查, 逆向工具