你以為在網路上「消失」很容易——刪帳號、換名字、不再登入就好了。

其實不是。

你五年前在某個論壇註冊的帳號還在。你用同一個 username 開的 GitHub、Twitter、Reddit、Medium 全部串得起來。你以為沒人會去翻的那個大頭貼,Google 圖片搜尋找得到。這些散落在各處的碎片,單獨看都無害。串在一起,就是你的完整數位身份。

Maigret 做的事情就是這個:你給它一個使用者名稱,它同時對 3,000 多個網站發請求,然後告訴你這個帳號在哪些地方出現過。

不需要 API key。不需要付費。裝好就能跑。


這不是搜尋引擎做的事嗎?

不一樣。Google 能搜到的是有被索引的頁面。但很多社群平台的個人頁面不會出現在搜尋結果裡——設了隱私、被 robots.txt 擋掉、或者單純是 Google 沒爬到。

Maigret 不靠搜尋引擎。它直接對每個網站發請求,用三種方式判斷帳號存不存在。第一種看 HTML 裡有沒有「此帳號不存在」之類的字串。第二種看 HTTP 狀態碼——200 表示有人,404 表示沒有。第三種追蹤重導向鏈,看最終停在個人頁面還是錯誤頁。

三千多個網站,三種判斷邏輯,同時跑。

它 fork 自比較有名的 Sherlock,但已經大幅超越原版。Sherlock 只告訴你「帳號在這個平台上存在」。Maigret 會用 socid-extractor 從頁面裡把能抓的資訊都抓出來——真實姓名、位置、頭像、關聯帳號。然後用發現的新 ID 自動展開遞迴搜尋。

一個 username 進去,一張完整的數位身份圖譜出來。


怎麼用

裝好 Python 3.10 以上,pip install maigret 就搞定了。

最基本的用法:

1
maigret username

這樣跑的是流量排名前 500 的站點。想搜全部 3,000 多個,加 -a

1
maigret username -a

想要一份好讀的報告:

1
maigret username --html

瀏覽器打開就能看到每個平台的搜尋結果、擷取到的資訊、帳號連結。不用自己整理,它全部幫你排好了。

同時搜多個使用者名稱也行:

1
maigret user1 user2 user3

當你只知道名字,不知道帳號

這是 Maigret 跟 Sherlock 拉開差距的地方之一。

如果你知道目標叫 John Doe,但不確定他的 username 長什麼樣,--permute 會自動產生各種排列組合——johndoe、john.doe、j.doe、jdoe、doejohn——然後每一個都拿去搜。

1
maigret john doe --permute

反過來也行。如果你手上只有一個社群媒體的個人頁面 URL,它可以反向解析出 ID,再拿那個 ID 去搜其他平台:

1
maigret --parse https://example.com/profile/12345

甚至可以接 OpenAI 相容的 API,讓 AI 自動分析搜尋結果產出摘要報告:

1
maigret username --html --with-ai-analysis

這東西誰在用

不只是好奇的人。

Bellingcat 把 Maigret 列在他們的 Online Investigation Toolkit 裡,這是業界認可的調查工具清單。Red Team 在滲透測試的偵察階段用它收集目標的社群帳號——找密碼重用的線索、社交工程的切入點、安全問答的答案。

企業用它做品牌保護。你的公司名稱有沒有被人在其他平台搶注?用 --tags 篩選特定類別或國家的站點,就能監控。

執法機關在合法授權下用它建立嫌疑人的線上身份圖譜。Commercial Links 的 Crimewall、UserSearch.ai 等商業產品已經把 Maigret 整合為底層引擎。

但對大部分人來說,最實用的場景其實是拿來搜自己。


對,搜自己

跑一次 maigret 你的username,你會看到自己在哪些平台上有帳號。有些你記得,有些你完全忘了。

那個十年前註冊的論壇帳號,密碼可能跟你現在用的某個服務一樣。那個早就不用的交友軟體,個人資料還掛在上面。那個用公司信箱註冊的 SaaS 試用帳號,離職後沒人管了。

這些不是隱私問題的假設場景,是你現在就能驗證的事實。跑完 Maigret,決定要不要去把那些不再使用的帳號刪掉。這是成本最低的個人資安行動——你不需要買任何工具,不需要學任何新技能,只需要花十分鐘跑一個指令,然後處理結果。


限制在哪

Cloudflare、CAPTCHA、速率限制會讓部分站點的結果顯示 UNKNOWN。這不是 bug,是對方有防護。全量掃描 3,000 多個站點會比較慢,預設只跑前 500 個是有道理的。

站點資料庫需要持續維護——網站改版、換 URL、加防護是常態。Maigret 內建自動更新機制能緩解,但如果你需要最精確的結果,定期跑 --self-check --auto-disable 清掉已失效的站點。

Tor 和 I2P 站點有支援,但閘道要你自己跑。OnlyFans 之類的平台有動態簽名,大約 1-3 週輪換一次,需要追蹤上游更新。


背後的問題

Maigret 只是一個工具。它揭示的問題比它本身有趣得多。

網路身份的設計預設是「累積」而不是「遺忘」。你在每個平台留下的資料,除非你主動去刪,否則會一直在那裡。而大部分人不會主動去刪——因為他們不知道自己在哪些平台上留了帳號。

這就是 Maigret 真正解決的問題。不是「怎麼偷看別人」,而是「怎麼知道自己暴露了多少」。

22,900 顆 GitHub star、MIT License、Python 寫的、Docker 也能跑。裝一下,搜自己的 username。結果可能會讓你意外。

專案連結:Maigret GitHub(MIT License)
參考來源:Bellingcat Online Investigation Toolkit