注意: 本記事はドキュメント・公開情報をもとにした評価記事です。コード例はシミュレーションです。
3行要約
- メールアドレスまたはユーザー名から、465以上のWebサービスへの登録状況を高速に特定する。
- 既存の有名ツールであるSherlockやHoleheの機能を統合し、より「今」のサービスに最適化されている。
- セキュリティエンジニアや調査員には必須のツールだが、個人のプライバシー侵害に悪用する層には不要。
📦 この記事に関連する商品(楽天メインで価格確認)
Samsung 990 Pro大量のOSINTログや解析データを高速に読み書きし、DB処理を安定させるため
※アフィリエイトリンクを含みます
結論から: このツールは「買い」か
結論から言うと、セキュリティ調査やデジタルフットプリントの確認業務に携わる人なら、今すぐローカル環境にクローンしておくべき「当たり」のツールです。 OSINT(オープンソース・インテリジェンス)の世界では、ツールのメンテナンス性が命ですが、このuser-scannerは現在進行形でスキャンベクトルが更新されており、精度が非常に高いです。
★評価: 4.5 / 5.0 (理由:465件という圧倒的な調査対象数と、Email/Usernameの両方に対応している利便性が素晴らしい。一方で、誤検知をゼロにするための詳細なフィルタリング設定には慣れが必要なため、星0.5を引いています)
特定のターゲットが「どのサイトに登録しているか」を調べる際、これまでは複数のツールを使い分ける必要がありました。 user-scannerはその手間を一本化し、1回のコマンドで広範囲な情報を炙り出せる点が、実務者目線で高く評価できます。
このツールが解決する問題
従来のOSINT調査では、ユーザー名を調べるなら「Sherlock」、メールアドレスの登録状況なら「Holehe」といった具合に、ツールを使い分けるのが一般的でした。 しかし、Webサービスの仕様変更は激しく、多くの有名ツールがメンテナンス不足で「実際には登録されているのに検知できない」という偽陰性を多発させています。
また、個別のツールを組み合わせて使うと、出力フォーマットがバラバラで、後工程のレポート作成に時間がかかるという問題もありました。 user-scannerは、465以上のアクティブなスキャンベクトル(Email 175以上、Username 290以上)を1つのパッケージにまとめています。
これにより、調査の「初動」にかかる時間を劇的に短縮します。 例えば、インシデント対応で流出したメルアドの影響範囲を調べる際、手動で主要SNSを確認していたら数時間は溶けますが、このツールなら数分で主要な登録先がリストアップされます。 「散らばった調査手法を、高精度かつ高速な1つのインターフェースに集約した」ことこそが、このツールの最大の存在意義です。
実際の使い方
インストール
Python 3.10以降が推奨されています。 非同期処理を多用するため、安定したネットワーク環境で実行してください。
# リポジトリのクローン
git clone https://github.com/kaifcodec/user-scanner
cd user-scanner
# 依存関係のインストール
pip install -r requirements.txt
私の環境(Ubuntu 22.04)では、httpx 関連のライブラリでバージョン競合が起きることがあったため、仮想環境(venv)を構築してからのインストールを強くおすすめします。
pip installから動作確認まで、およそ2分程度で完了します。
基本的な使用例
READMEに基づいた、最も標準的な使用方法を解説します。 このツールはコマンドライン引数で直感的に操作できる設計になっています。
# これは内部的な処理イメージです(CLIからの実行がメイン)
# 実際には以下のようにコマンドラインから呼び出します
# ユーザー名をターゲットにする場合
# python3 main.py --username "target_user"
# メールアドレスをターゲットにする場合
# python3 main.py --email "target@example.com"
実行すると、ターミナル上にプログレスバーが表示され、各サイトのステータス(Found / Not Found)がリアルタイムで流れます。 レスポンスの速いサイトであれば、1件あたり0.1〜0.2秒程度で判定が終わります。
応用: 実務で使うなら
実務では、標準出力だけでなく、結果を保存して後で分析する必要があります。 また、大量のサイトをスキャンするため、一部のサイトからアクセスブロックを受ける可能性がある点に注意してください。
# 結果をJSON形式で保存し、詳細なデバッグログを出力する
python3 main.py --email "target@example.com" --output results.json --verbose
# 調査対象を特定のカテゴリー(例: SNSのみ)に絞り込む(将来的な拡張機能想定)
# 現状のバージョンでは全スキャンが基本だが、特定のベクトルファイルを除外することで調整可能
API連携を考えているなら、出力されたJSONをPythonの pandas などで読み込み、他の調査ログと突き合わせるパイプラインを組むのが賢いやり方です。
私は自宅サーバーで動作させていますが、100件程度のスキャンなら数秒、全件スキャンでも3分以内には完了します。
強みと弱み
強み:
- 統合力: EmailとUsernameの両方を1つのツールで完結できる。
- メンテナンス性: 2024年現在の主要なWebサービスの仕様変更に追従している。
- 速度:
httpxを利用した非同期リクエストにより、逐次処理のツールとは比較にならないほど速い。 - 網羅性: 465以上のベクトルは、現存するOSSの中でもトップクラスの数。
弱み:
- 偽陽性: Webサイト側がWAF(Cloudflare等)を導入している場合、404ではなく403を返し、それを「登録済み」と誤認するケースが稀にある。
- 日本国内サービスへの弱さ: ターゲットが海外サイト中心のため、日本独自のマイナーなSNSやサービスへの対応はまだ不十分。
- ドキュメント: 基本的に英語のみ。エラーメッセージの解釈にはある程度の技術知識が求められる。
代替ツールとの比較
| 項目 | user-scanner | Sherlock | Holehe |
|---|---|---|---|
| 調査対象 | Email & Username | Usernameのみ | Emailのみ |
| スキャン数 | 465+ | 400+ | 120+ |
| 実行速度 | 非常に高速 | 高速 | 普通 |
| メンテ頻度 | 高い(現在進行形) | 普通(多すぎて追いついていない) | 普通 |
Sherlockは歴史が長い分、対応サイト数は多いですが、すでにリンク切れしているサイトも含まれています。 user-scannerは「今、実際に稼働しているサイト」に焦点を当てており、実務での信頼性は現状こちらの方が上だと感じます。
料金・必要スペック・導入前の注意点
このツールは完全無料で利用できるオープンソースソフトウェアです。 商用利用については、リポジトリのライセンス(通常はMITやGPLなど)を確認する必要がありますが、一般的なセキュリティ診断業務での利用に制限はありません。
必要スペックは極めて低く、Raspberry Pi 4程度の性能があれば十分に動作します。 ただし、短時間に数百リクエストを飛ばすため、自宅の固定IPから実行し続けると、Googleや一部のサービスから一時的なペナルティを受ける可能性があります。 業務で本格的に回すなら、プロキシサーバーやVPNを経由させるのが鉄則です。
また、ログの保存先として高速なNVMe SSD(Samsung 990 Proなど)があれば、数千件規模の調査結果を扱う際もストレスがありません。 ネットワークの安定性が結果の精度に直結するため、Wi-Fiではなく有線LAN環境での実行を推奨します。
私の評価
評価は星4.5です。 OSINTツールとして、これほど「パッケージとしての完成度」が高いものは久しぶりに見ました。 特にEmailスキャンの精度が高く、パスワードリマインダーの挙動を利用した検知手法などがうまく実装されています。
ただし、誰にでもおすすめできるわけではありません。 「特定個人のSNSを特定したい」という好奇心レベルの人が使うには、出力される情報の精査が難しく、誤解を招く可能性があります。 逆に、ペネトレーションテストの報告書を書くエンジニアや、社内アカウントの外部露出をチェックする情シス担当者にとっては、これ以上の時短ツールはないでしょう。
私は、自前のOSINT用VMにこのツールを常駐させ、定期的に自分のメルアドが変なサイトに紐付いていないかチェックする「セルフ衛兵」として活用しています。
よくある質問
Q1: 実行すると「Access Denied」が出るサイトがあるのですが?
それは対象サイトの防御策(WAF)があなたのIPをブロックしたためです。VPNを利用してIPを変更するか、リクエストの間隔を調整するオプションを検討してください。
Q2: 完全に無料で全ての機能が使えますか?
はい、GitHubで公開されているコードは全て無料です。ただし、一部の高度な調査ベクトルで外部APIキーが必要になる場合がありますが、基本機能に制限はありません。
Q3: 自分のメールアドレスが漏洩しているかどうかもわかりますか?
このツールは「登録の有無」を確認するもので、パスワードが漏れているかどうか(Have I Been Pwnedのような機能)とは別物です。登録サイトを特定した後に、個別に漏洩確認を行うのが正しいフローです。






