
パッシブ偵察用のBashスクリプト。ペネトレーションテストの情報収集フェーズにおいて、RIRやBGPルートサーバーにクエリを送信し、対象組織のネットブロック、ASN、CIDRレンジを発見します。
ペネトレーションテストの情報収集フェーズにおいて、標的組織が所有するネットブロック(CIDR表記のレンジ)を発見するためのLinux Bashスクリプトです。この情報は、5つの地域インターネットレジストリ(RIR)によって管理されています。
ARIN (北米)
RIPE (欧州・アジア・中東)
APNIC (アジア太平洋)
LACNIC (ラテンアメリカ)
AfriNIC (アフリカ)
ネットブロックやIPアドレスに加えて、自律システム番号(ASN)も関心の対象です。ASNは、インターネット上の各ネットワークを一意に識別するためにボーダーゲートウェイプロトコル(BGP)の一部として使用されます。標的組織は、ネットワークの規模やピアリングサービスプロバイダーからの冗長サービス経路の結果として、独自のASNを持っている場合があります。これらのASNにより、組織が所有する追加のネットブロックが明らかになります。
ipcalc(RIPE、APNIC、LACNIC、AfriNICのクエリ用)
使用方法に入る前にLACNICに関する注意点です。LACNICは、ネットワークレンジ、ASN、組織ハンドル、またはPoCハンドルのいずれかのクエリしか許可していません。これは、組織名に基づいてこれらの値を特定するのに役立ちません。しかし、LACNICは、割り当てられたすべてのレンジのリストを公にアクセス可能なFTPサーバー上に公開しており、レート制限のしきい値も公開しています。そのため、スクリプトがチェックする付属のデータファイルがあり、これを使用してLACNICクエリをローカルで実行します。スクリプトには更新オプション**-r**が含まれており、これを任意の間隔でデータを更新するために使用できます。実行時間は約28時間弱です。
オプションを指定せずにスクリプトを実行すると、ARINとBGPルートサーバーのプールにクエリを実行します。ルートサーバーは実行時にランダムに選択されます。-hオプションでヘルプが表示されます。

オプションは任意の組み合わせ、すべて、またはまったくなしで使用できます。残念ながら、「その他の」RIRはレンジの実際のCIDR表記を記録していないため、この機能を実行するにはipcalcを使用します。システムにインストールされていない場合、スクリプトが自動的にインストールします。
プロンプトで、組織名、電子メールドメイン、および電子メールに国コードが使用されているかどうかを入力します。国コードにYと回答した場合、それらがドメイン名の前にあるのか、TLDの後に追加されているのかを尋ねられます。出力ファイル用のディレクトリは/tmp/に作成されます。ディレクトリがすでに存在する場合は、上書きするかどうかを尋ねられます。Nと回答した場合、タイムスタンプがディレクトリ名に追加されます。

スクリプトは各RIRとBGPルートサーバーにクエリを実行し、レコードが見つかったかどうかをその都度確認します。完了すると、3つのファイルが生成されます:組織ハンドルに基づくCSV、PoCハンドルに基づくCSV、および検出されたすべてのレンジをCIDR表記で行区切りにしたファイルです。

スクリプトをいつでもキャンセルすると、一時的な作業ファイルと結果出力ファイル用に作成されたディレクトリが削除されます。

一部の組織名に類似性があるため、標的に関係のない結果が返される可能性があることに注意してください。CSVファイルは、必要に応じてさらに検証するための関連ハンドルとURLを提供します。また、標的組織の従業員が自身のドメインを登録するために会社の電子メールアドレスを使用している可能性もあります。これらも結果に含まれます。
docker build -t hardcidr .
hardcidrイメージのビルド
docker run -v $(pwd):/tmp -it hardcidr
コンテナの実行。出力はカレントディレクトリに保存されます
詳細については、TrustedSecのWebサイトのブログ記事をご覧ください: Classy Inter-Domain Routing Enumeration