
OSINTツール: LinkedIn上の企業向けにユーザー名リストを生成
OSINT ツール: LinkedIn 上の企業からユーザー名リストを生成します。
これは純粋な Web スクレイパーであり、API キーは必要ありません。有効な LinkedIn のユーザー名とパスワードを使用してログインし、指定した企業の全従業員に対して考えられるユーザー名形式のリストを複数作成します。
作成されるものは以下の通りです:
オプションで、ツールはユーザー名に @domain.xxx を追加します。

LinkedIn アカウントがレート制限にかかったり、最悪の場合停止されても、私は責任を負いません。これはセキュリティ研究ツールです。コードを読み、その動作を完全に理解した上でのみ使用してください。
ツール作成以来、アカウント停止の報告はありませんが、「商用検索制限」に達するとレート制限が時々発生します。これまでのところ、それは一時的なものです(月単位で測定)。
uv をインストールし、リポジトリのルートから以下を実行します:
uv sync
これにより仮想環境が作成され、すべての依存関係が自動的にインストールされます。ツールは次のように実行します:
uv run python linkedin2username.py -c targetco
また、Chrome、Chromium、Firefox が Selenium によって検出可能な標準的なパスにインストールされている必要があります。ログイン処理のために一時的に Web ブラウザが起動されます。
usage: linkedin2username.py [-h] -c COMPANY [-n DOMAIN] [-d DEPTH]
[-s SLEEP] [-x PROXY] [-k KEYWORDS] [-g] [-o OUTPUT]
指定された企業の LinkedIn ページから推定ユーザー名のリストを生成する OSINT ツール。
LinkedIn がサイトを変更すると、このツールは動作しなくなる可能性があります。
不具合があれば GitHub で Issue を開いて報告してください。
オプション引数:
-h, --help このヘルプメッセージを表示して終了
-c COMPANY, --company COMPANY
企業の LinkedIn プロフィールページの URL に表示されている通りの会社名。
-n DOMAIN, --domain DOMAIN
ユーザー名出力にドメイン名を追加します。
[例: "-n targetco.com" の場合、出力は [email protected]]
-d DEPTH, --depth DEPTH
検索深度(25 件のループを何回行うか)。未設定の場合はすべて取得しようとします。
-s SLEEP, --sleep SLEEP
検索ループ間のスリープ秒数。デフォルトは 0。
-x PROXY, --proxy PROXY
使用するプロキシサーバー。警告: SSL 検証が無効になります。
[例: "-p https://localhost:8080"]
-k KEYWORDS, --keywords KEYWORDS
カンマ区切りのキーワードリストで結果をフィルタリングします。
各キーワードごとに個別のループを実行し、
1,000 件の記録制限を回避できる可能性があります。
[例: "-k 'sales,human resources,information technology']
-g, --geoblast 地理的領域に分割して複数の検索を実行することで、1,000 件の検索制限を回避しようとします。
-o OUTPUT, --output OUTPUT
出力ディレクトリ。デフォルトは li2u-output
ツールには LinkedIn 上の会社名を指定する必要があります。会社のページの URL を見ればわかります。https://linkedin.com/company/targetco のような形式です。会社の正確な名前と単純に一致する場合もあれば、そうでない場合もあります。
targetco の全従業員を取得する例:
$ python linkedin2username.py -c targetco
より短いリストを取得し、ドメイン名 @targetco.com を追加する例:
$ python linkedin2username.py -c targetco -d 5 -n 'targetco.com'
多くのコネクションがあるアカウントを使用してください。そうしないと結果が悪くなります。対象企業にいくつかコネクションを追加すると役立つでしょう。このツールは第3度のコネクションまで機能します。LinkedIn は検索結果を最大 1000 人の従業員に制限することに注意してください。'--geoblast' または '--keywords' 機能を使用してこの制限を回避できます。詳細は以下のヘルプをご覧ください。
LinkedIn が変更を行うと、ツールが動作しなくなる可能性があります。ここで使用されている API は文書化されておらず、再度動作させるには多少の調整が必要になるかもしれません。何かおかしい点に気づいたら Issue を開いてください。
次のようにして、お使いのマシンで Selenium が動作することを確認できます:
$ python3
from selenium import webdriver
driver = webdriver.Firefox() # or webdriver.Chrome()
driver.get("https://linkedin.com/login")
--proxy フラグを使用して、Burp でトラフィックを検査することもできます。現時点では、Selenium ブラウザからのログインは検査していません。そこで何が起こっているかは明確に確認できます。
これはセキュリティ研究ツールです。ネットワーク所有者から明示的な許可を得た場合にのみ使用してください。