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-project或pip 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 詢問選項 — 直接運行默認搜索。如果需要,用戶可以請求特定選項。
4. 執行搜索
通過 terminal 工具運行。根據網絡狀況和網站數量,命令通常需要 30-120 秒。
終端調用示例:
{
"command": "sherlock --print-found --no-color \"target_username\"",
"timeout": 180
}
5. 解析並呈現結果
Sherlock 以簡單格式輸出找到的賬戶。解析輸出並呈現:
- 摘要行: “找到用戶名 'Y' 的 X 個賬戶”
- 分類鏈接: 如果有幫助,按平臺類型分組(社交、專業、論壇等)
- 輸出文件位置: 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(推薦)
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 後,驗證:
- 輸出列出了找到的站點及其 URL
- 如果使用文件輸出,則創建了
<username>.txt文件(默認輸出) - 如果使用了
--print-found,輸出應僅包含匹配項的[+]行
示例交互
用戶: “你能檢查用戶名 'johndoe123' 是否存在於社交媒體上嗎?”
Agent 過程:
- 檢查
sherlock --version(驗證是否已安裝) - 已提供用戶名 — 直接繼續
- 運行:
sherlock --print-found --no-color "johndoe123" --timeout 90 - 解析輸出並展示鏈接
響應格式:
找到用戶名 'johndoe123' 的 12 個賬戶:
• https://twitter.com/johndoe123 • https://github.com/johndoe123 • https://instagram.com/johndoe123 • [... 其他鏈接]
結果已保存至:johndoe123.txt
用戶: “搜索用戶名 'alice',包括 NSFW 站點”
Agent 過程:
- 檢查 sherlock 是否已安裝
- 已提供用戶名和 NSFW 標誌
- 運行:
sherlock --print-found --no-color --nsfw "alice" --timeout 90 - 展示結果