跳到主要內容

Sherlock

在 400 多個社交網絡上進行 OSINT(開源情報)用戶名搜索。通過用戶名追查社交媒體賬戶。

技能元數據

來源可選 — 使用 hermes skills install official/security/sherlock 安裝
路徑optional-skills/security/sherlock
版本1.0.0
作者unmodeled-tyler
許可證MIT
標籤osint, security, username, social-media, reconnaissance

參考:完整 SKILL.md

信息

以下是 Hermes 在觸發此技能時加載的完整技能定義。這是技能激活時代理所看到的指令。

Sherlock OSINT 用戶名搜索

使用 Sherlock Project 在 400 多個社交網絡上通過用戶名追查社交媒體賬戶。

何時使用

  • 用戶要求查找與用戶名關聯的賬戶
  • 用戶希望檢查用戶名在各平臺上的可用性
  • 用戶正在進行 OSINT 或偵察研究
  • 用戶詢問“此用戶名在哪裡註冊?”或類似問題

要求

  • 已安裝 Sherlock CLI:pipx install sherlock-projectpip install sherlock-project
  • 或者:可用 Docker(docker run -it --rm sherlock/sherlock
  • 能夠訪問網絡以查詢社交平臺

流程

1. 檢查是否已安裝 Sherlock

在執行任何其他操作之前,驗證 sherlock 是否可用:

sherlock --version

如果命令失敗:

  • 提供安裝選項:pipx install sherlock-project(推薦)或 pip install sherlock-project
  • 不要嘗試多種安裝方法 — 選擇一種並繼續
  • 如果安裝失敗,通知用戶並停止

2. 提取用戶名

如果用戶的消息中明確陳述,直接從中提取用戶名。

以下情況不應使用 clarify(澄清):

  • “查找 nasa 的賬戶” → 用戶名為 nasa
  • “搜索 johndoe123” → 用戶名為 johndoe123
  • “檢查 alice 是否存在於社交媒體上” → 用戶名為 alice
  • “在社交網絡上查找用戶 bob” → 用戶名為 bob

僅在以下情況使用 clarify:

  • 提到多個潛在用戶名(“搜索 alice 或 bob”)
  • 措辭含糊(“搜索我的用戶名”但未具體說明)
  • 完全未提及用戶名(“進行 OSINT 搜索”)

提取時,採用確切的用戶名 — 保留大小寫、數字、下劃線等。

3. 構建命令

默認命令(除非用戶特別要求,否則使用此命令):

sherlock --print-found --no-color "<username>" --timeout 90

可選標誌(僅在用戶明確要求時添加):

  • --nsfw — 包含 NSFW(成人內容)網站(僅在用戶要求時)
  • --tor — 通過 Tor 路由(僅在用戶要求匿名時)

不要通過 clarify 詢問選項 — 直接運行默認搜索。如果需要,用戶可以請求特定選項。

通過 terminal 工具運行。根據網絡狀況和網站數量,命令通常需要 30-120 秒。

終端調用示例:

{
"command": "sherlock --print-found --no-color \"target_username\"",
"timeout": 180
}

5. 解析並呈現結果

Sherlock 以簡單格式輸出找到的賬戶。解析輸出並呈現:

  1. 摘要行: “找到用戶名 'Y' 的 X 個賬戶”
  2. 分類鏈接: 如果有幫助,按平臺類型分組(社交、專業、論壇等)
  3. 輸出文件位置: Sherlock 默認將結果保存到 <username>.txt

輸出解析示例:

[+] Instagram: https://instagram.com/username
[+] Twitter: https://twitter.com/username
[+] GitHub: https://github.com/username

儘可能將發現呈現為可點擊的鏈接。

常見陷阱

未找到結果

如果 Sherlock 未找到任何賬戶,這通常是正確的 — 該用戶名可能未在檢查的平臺上註冊。建議:

  • 檢查拼寫/變體
  • 使用 ? 通配符嘗試類似的用戶名:sherlock "user?name"
  • 用戶可能設置了隱私權限或賬戶已刪除

超時問題

某些網站響應緩慢或阻止自動請求。使用 --timeout 120 增加等待時間,或使用 --site 限制範圍。

Tor 配置

--tor 需要運行 Tor 守護進程。如果用戶希望匿名但 Tor 不可用,建議:

  • 安裝 Tor 服務
  • 使用 --proxy 配合替代代理

誤報

由於某些網站的響應結構,它們總是返回“找到”。將意外結果與手動檢查進行交叉驗證。

速率限制

激進的搜索可能會觸發速率限制。對於批量用戶名搜索,在調用之間添加延遲,或使用 --local 配合緩存數據。

安裝

pipx install sherlock-project

pip

pip install sherlock-project

Docker

docker pull sherlock/sherlock
docker run -it --rm sherlock/sherlock <username>

Linux 軟件包

適用於 Debian 13+、Ubuntu 22.10+、Homebrew、Kali、BlackArch。

道德使用

此工具僅用於合法的 OSINT 和研究目的。提醒用戶:

  • 僅搜索他們擁有或有權調查的用戶名
  • 遵守平臺服務條款
  • 不得用於騷擾、跟蹤或非法活動
  • 在分享結果前考慮隱私影響

驗證

運行 sherlock 後,驗證:

  1. 輸出列出了找到的站點及其 URL
  2. 如果使用文件輸出,則創建了 <username>.txt 文件(默認輸出)
  3. 如果使用了 --print-found,輸出應僅包含匹配項的 [+]

示例交互

用戶: “你能檢查用戶名 'johndoe123' 是否存在於社交媒體上嗎?”

Agent 過程:

  1. 檢查 sherlock --version(驗證是否已安裝)
  2. 已提供用戶名 — 直接繼續
  3. 運行:sherlock --print-found --no-color "johndoe123" --timeout 90
  4. 解析輸出並展示鏈接

響應格式:

找到用戶名 'johndoe123' 的 12 個賬戶:

https://twitter.com/johndoe123https://github.com/johndoe123https://instagram.com/johndoe123 • [... 其他鏈接]

結果已保存至:johndoe123.txt


用戶: “搜索用戶名 'alice',包括 NSFW 站點”

Agent 過程:

  1. 檢查 sherlock 是否已安裝
  2. 已提供用戶名和 NSFW 標誌
  3. 運行:sherlock --print-found --no-color --nsfw "alice" --timeout 90
  4. 展示結果