公開:2022.12.26 10:00 | 更新: 2022.12.26 06:09
本記事では、OSINT調査でどのような情報が得ることができ、それらをどのように活用することができるのかを解説していきます。
OSINT調査には、以前に別記事で解説されている「Google Dorks」「SHODAN」や「theHarvester」など様々なものがありますが、本記事ではGUIで直感的に触りやすい「SpiderFoot」を使用します。
OSINT(Open Source Intelligence)についての詳細は割愛しますが、インターネット上や紙媒体など一般に公開されている情報からデータを収集・分析する諜報活動の一種で、HPで公開されている連絡先や過去のイベントなどで配布したデータや資料など、ターゲットに関する情報はすべて対象となります。
戦う際には敵を知り、己を知ることが大切であるという内容で、サイバー攻撃においても攻撃者がどのようにして攻め込んでくるのかを知り、自社がどのような状態にあるのかを知っておくことは重要です。
「攻撃者がどのようにして攻め込んでくるのか」という点においては、サイバー攻撃を仕掛けてくる攻撃者の行動を構造化して整理した「Cyber Kill Chain」が参考になります。
Cyber Kill Chainの第1フェーズでは「偵察(Reconnaissance)」フェーズがあり、ターゲットである個人または組織に関する情報を収集するところからスタートします。
その後、偵察フェーズで得た情報を基に弱点を突くためのシナリオを考え、実際に攻撃を仕掛けていきます。
「自社がどのような状態にあるのか」という点においては、ターゲットを自社のサービスや環境に合わせた「Webサイトの脆弱性診断」「ネットワークの脆弱性診断」などの脆弱性診断を実施することが効果的である一方、自社で実施するにはスキルも必要となるため、診断サービスを実施している企業へ外注するケースが多く、コストがかかってしまいます。
そのため、今回は自社で実施しやすいかつ攻撃者が実際に第1フェーズとして実施する「偵察=OSINT」を自分自身(自社)に対して実施することで、攻撃者からどのように見られているのかを客観的に把握し、攻撃に対して身構えられるようにします。
※なぜ、身構えるという表現をしているのかというと、OSINT調査で得られる情報自体は基本的に公的に開示されている情報であり、非公開にすることが難しい情報も含まれているため、攻撃者に知られてしまうのを必ずしも防ぐことができないからです。
今回、OSINT調査で利用するSpiderFootはオープンソースのOSINT自動化ツールです。
※クラウド版のSpiderFoot HXも存在します。
クラウド版ではアカウントを作成することで無償利用することができますが、今回はSpiderFootが標準インストールされているKali Linuxを使用します。
※Kali Linuxの導入が難しい方はクラウド版のSpiderFoot HXをご利用ください。
SpiderFootを起動するためKali Linuxのメニュー画面から「01 - Information Gathering > spiderfoot」をクリックします。
コンソール画面が開き、SpiderFootを利用するためのヘルプが表示されます。
以下のコマンドを入力してSpiderFootを起動します。
sudo spiderfoot -l 127.0.0.1:5000
SpiderFootが起動したので、ブラウザ(Firefox)を起動して「http://localhost:5000」へアクセスします。
SpiderFootのメニューで「New Scan」を選択し、「Scan Name」に任意のタスク名を入力、「Scan Target」に自社のドメインやIPアドレス、メールアドレス等を入力します。入力例は画面の右に表示されています。
※「Scan Target」に入力する値は自社の情報に限定してください。他社の情報を入力してスキャンを行った場合、または他社の許可が得られていない場合は違法になる可能性がありますので、取扱いには十分注意して行ってください。
「By Use Case」では以下を選択できますが、今回は「Footprint」を選択します。
「By Required Data」「By Module」でOSINT調査に使用するサイトやモジュールを細かく選択できますが、今回はそのままにして「Run Scan Now」を実行します。
All | ターゲットに関するあらゆるものを入手する場合に利用します。 | SpiderFootのモジュールはすべて有効(低速)ですが、ターゲットに関するありとあらゆる情報が取得・分析します。 |
Footprint | ターゲットがインターネットに公開している情報を把握します。 | 多くのウェブクローリングと検索エンジンの使用によって得られる、ターゲットのネットワーク周辺、関連するIDなどについて収集・分析します。 |
Investigate | ターゲットが悪意あるものであると疑われるが、より詳細な情報が必要な場合に利用します。 | 「ブラックリストやターゲットの悪意に関する情報を持っている可能性のある他のソースへの問い合わせに加えて、いくつかの基本的なフットプリントが実行されます。 |
Passive | ターゲットに調査されていることを疑われたくない場合に利用します。 | ターゲットやその関係者に触れずに多くの情報を収集するため、ターゲットに触れないモジュールのみを有効化します。 |
実行中の画面は以下の構成になります。
実行完了までには時間がかかるため、一度停止をするために「Scans」をクリックしてトップ画面に戻ります。
Action列にある停止ボタンをクリックしてスキャンを停止します。
スキャン結果(スキャン中)の画面は以下の構成となっているので、「Browse」で詳細を確認していきます。
Summary | 取得したデータのタイプ別件数グラフを表示する画面 |
Correlations | 相関ルールの結果を確認できる画面 |
Browse | Summaryで見れたデータの詳細が確認できる画面 |
Graph | マインドマップのようにデータを表示する画面 |
Scan Settings | Scanに使用した設定を確認できる画面 |
Log | Scan実行時のログを確認できる画面 |
「Internal Name」の項目を開くとScan Targetに指定したドメインのサブドメインが確認できます。
また、「Similar Domain」の項目を開くとScan Targetに指定したドメインの類似ドメインが確認できます。
このようにOSINT自動化ツールを使用することで、インターネット上からかき集められた様々なデータが容易に確認できます。
今回は途中でスキャンをやめているため攻撃の手掛かりとなる大きな情報は得られていませんが、スキャン結果によっては前述した「Internal Domain」に公開予定のないテスト用のサブドメインが見つかるケースや「Similar Domain」に自社のドメインに類似したドメインが見つかり、既に攻撃者が自社の顧客へフィッシング攻撃の準備または実行をしている可能性が分かるケースもあります。
繰り返しとなりますが、攻撃者(特に標的型攻撃を仕掛ける攻撃者)は、今回得られたような情報を悪用して巧妙に攻撃を仕掛けてくるため、定期的に己の状態を知ることは重要となります。
情報資産の棚卸となる年末や年度末にかけてセルフチェックも実施いただけるとより強固なセキュリティ対策につながりますので、本記事の情報をご活用ください。
LOADING...