
Jacob Wilkin(Greenwolf) によるソーシャルメディア列挙および相関ツール
このツールはもはや積極的にメンテナンスされていません。一部の機能はまだ動作する可能性がありますが、最新の状態に保つためのプルリクエストは受け付けます。
警告: Facebookは現在、数百回の検索後にこれを検出します。使い捨てのFacebookアカウントのみを使用してください。
Jacob Wilkin (Greenwolf) による、顔認識を介してプロフィールを関連付けるソーシャルメディアマッピングツール。
Social Mapper は、顔認識を使用して大規模に異なるサイト間のソーシャルメディアプロフィールを関連付けるオープンソースインテリジェンスツールです。ターゲットの名前と写真を人気のソーシャルメディアサイトで自動的に検索し、人物の存在を正確に検出してグループ化し、結果を人間のオペレーターが迅速にレビューできるレポートに出力します。
Social Mapper はセキュリティ業界でさまざまな用途があります。例えば、標的型フィッシングキャンペーンに使用するための大量のソーシャルメディアプロフィールを自動的に収集することなどです。顔認識は検索結果の誤検出を除去することでこのプロセスを支援し、人間のオペレーターがデータをより迅速にレビューできるようにします。
Social Mapper は以下のソーシャルメディアプラットフォームをサポートしています:
Social Mapper は以下のようなさまざまな入力タイプを受け付けます:
Social Mapper は主にペネトレーションテスターとレッドチームを対象としており、彼らがターゲットリストを拡大し、ソーシャルメディアプロフィールを見つけるために使用します。そこから先はあなたの想像力次第ですが、いくつかのアイデアを以下に示します:
(注: Social Mapper はこれらの攻撃を実行するわけではありません。大規模に攻撃を実行するために必要なデータを収集します。)
以下の手順で、Social Mapper を使用するための要件と使用方法を説明します。
注: Kali では、setup ディレクトリから ./kali-installer.sh を実行できるようになりました。
このツールは Python3 ベースであるため、理論上は Linux、ChromeOS(デベロッパーモード)、macOS で動作します。主な要件は Firefox、Selenium、Geckodriver です。ツールをインストールしてセットアップするには、次の4つの手順に従ってください:
https://www.mozilla.org/en-GB/firefox/new/
または Debian/Kali の場合(Ubuntu では不要)、非ESRバージョンの Firefox を以下で入手します:
sudo add-apt-repository ppa:mozillateam/firefox-next && sudo apt update && sudo apt upgrade
新しいバージョンの Firefox がパスに含まれていることを確認してください。手動で追加する必要がある場合があります。
/usr/local/bin、ChromeOS では /usr/local/bin、Linux では /usr/bin に配置できます。Geckodriver の最新バージョンはこちらからダウンロード:
https://github.com/mozilla/geckodriver/releases
Linux では以下の前提条件をインストール:
sudo apt-get install build-essential cmake
sudo apt-get install libgtk-3-dev
sudo apt-get install libboost-all-dev
Linux と macOS では、以下のコマンドでインストールを完了:
git clone https://github.com/Greenwolf/social_mapper
cd social_mapper/setup
python3 -m pip install --no-cache-dir -r requirements.txt
Mac では、setup/setup-mac.txt ファイルを参照して、追加の xcode、brew、xquartz のインストール手順を確認してください。
Open social_mapper.py and enter social media credentials into global variables at the top of the file
Facebook と Instagram については、認証情報を提供したアカウントの言語が実行中に 'English (US)' に設定されていることを確認してください。また、すべてのアカウントが正常に動作し、2要素認証を必要とせずにログインできることを確認してください。
Firefox ブラウザを使用して、各ソーシャルメディアプロフィールに一度ログインし、「未知のブラウザ」や「このブラウザを信頼する」ページを保存・処理してください。
Social Mapper はコマンドラインから、必須パラメータとオプションパラメータを組み合わせて実行します。入力タイプやチェックするサイト、速度と精度に影響を与えるその他のパラメータを指定できます。
ツールを起動するには、入力形式、入力ファイルまたはフォルダ、基本実行モードの4つのパラメータを指定する必要があります:
-f, --format : -i, --input が 'name'、'csv'、'imagefolder'、または 'socialmapper' 再開ファイルのいずれであるかを指定します
-i, --input : 会社名、CSVファイル、画像フォルダ、または Social Mapper HTML ファイルを Social Mapper に提供します
-m, --mode : 'fast' または 'accurate' で、最初の一致候補が見つかった後に潜在的なターゲットをスキップするかどうかを選択します。場合によってはプログラムの速度が最大20倍向上することがあります
さらに、チェックするソーシャルメディアサイトを少なくとも1つ選択する必要があります。以下のオプションを1つ以上含めてください:
-a, --all : 以下のすべてのオプションを選択し、Social Mapper が認証情報を持っているすべてのサイトをチェックします
-fb, --facebook : Facebook をチェック
-tw, --twitter : Twitter をチェック
-ig, --instagram : Instagram をチェック
-li, --linkedin : LinkedIn をチェック
-gp, --googleplus : Google Plus をチェック
-vk, --vkontakte : VKontakte をチェック
-wb, --weibo : Weibo をチェック
-db, --douban : Douban をチェック
追加のオプションパラメータを設定して、Social Mapper の実行方法をさらにカスタマイズできます:
-t, --threshold : 一致の顔認識しきい値をカスタマイズします。これは一致精度として見なせます。デフォルトは 'standard' ですが、'loose'、'standard'、'strict'、'superstrict' に設定できます。例えば 'loose' はより多くの一致を見つけますが、一部が誤っている可能性があります。一方 'strict' は一致数は少なくなるかもしれませんが、最終レポートに含まれる誤検出が少なくなります。
-cid, --companyid : LinkedIn の会社IDを追加するパラメータ。名前検索で正しい会社を選択できない場合に使用します。
-s, --showbrowser : Firefox ブラウザを表示して、実行される検索を確認できるようにします。デバッグに便利です。
-w, --waitafterlogin : ログイン後に Enter キーを押すまで待機し、2FAコードを入力する時間を確保します。-s と併用する必要があります。
-v, --version : 現在のバージョンを表示します。
-vv, --verbose : 詳細モード(デバッグに便利)
-e, --email : "<f><last>@domain.com" のようなあいまいなメール形式を指定して、サイトごとに firstname、lastname、fullname、email、profileURL、photoURL を含む追加の CSV ファイルを生成します。これらは Gophish や Lucy などのフィッシングフレームワークに取り込むことができます。
さまざまなユースケースに対応したいくつかの実行例を以下に示します:
画像フォルダ内のターゲットを Facebook と Twitter で素早く実行し、手動でレビューする予定で誤検出があっても気にしない場合:
python3 social_mapper.py -f imagefolder -i ./Input-Examples/imagefolder/ -m fast -fb -tw
上記と同じですが、ブラウザを表示し、待機を有効にしてユーザーが2FAコードを入力し、変更されたログインプロセスを手動で修正できるようにした場合:
python3 social_mapper.py -f imagefolder -i ./Input-Examples/imagefolder/ -m fast -fb -tw -s -w
大企業に対して誤検出を最小限に抑えながら網羅的に実行する場合:
python3 social_mapper.py -f company -i "Evil Corp LLC" -m accurate -a -t strict
時間の都合で複数のセッションに分割する必要がある大規模な実行。最初のセッションで LinkedIn と Facebook を実行し、2回目のセッションで Twitter、Google Plus、Instagram を再開して補完する場合:
python3 social_mapper.py -f company -i "Evil Corp LLC" -m accurate -li -fb
python3 social_mapper.py -f socialmapper -i ./Evil-Corp-LLC-social-mapper-linkedin-facebook.html -m accurate -tw -gp -ig
顔認識を使用せずに素早く(約5分)実行し、LinkedIn の会社から最大1000人の名前、メールアドレス、プロフィール、写真リンクを含む CSV を生成する。メール形式が "firstname.lastname" であることがわかっている場合:
python3 social_mapper.py -f company -i "Evil Corp LLC" -m accurate -li -e "<first>.<last>@evilcorpllc.com"
ソーシャルメディアサイトは頻繁にページ形式やクラス名を変更します。Social Mapper が特定のサイトで機能しない場合は、docs セクションでトラブルシューティングのアドバイスを確認してください。修正を加えたプルリクエストを送信してください。
Social Mapper の結果を Maltego に読み込むためのガイドは、docs セクションを参照してください。
このツールが役に立ったなら、コーヒーをおごることで感謝の気持ちを示していただけると幸いです :)
[あなたの名前がここに入る可能性があります、ぜひ協力してください!] に感謝します。