情報をつなげて関係をみつける:セキュリティ分野の分析(2)
2022年04月01日 金曜日
CONTENTS
おはようございます。こんにちは。こんばんは。ふぇにっくちゅん です。
本記事は、連載記事で「Introduction/分析はパズル感覚で!」からの続編となります。
こちらの1記事目から順に読んで頂けると嬉しいです。
前回の記事では、目隠し を解いた上で 見える から 視える ようにする分析の流れを説明しました。
今回はもう少し具体的に、ふぇにっくちゅん が分析で活用してるツールとあわせて、ボットネットの関係 を明らかにする方法を紹介していきます。
本日の“テーマ”は“情報連鎖”として、パチパチフェーズの具体的な様子を紹介していきます。
集めた情報をつなげてみよう
以前の連載記事で、分析の際にDDoS攻撃用のボットを解析することを紹介しました。
解析から得られるIPアドレスやドメインの情報などを例に上げましたが、一体どのようにして集めた情報が繋がるのでしょうか?
疑問に答える前に、インターネットを支える仕組みの一つである 名前解決 について説明しておきます。
簡単に説明すると 名前解決 は、ドメインとIPアドレスを変換する仕組みのことです。
たとえば、IIJのホームページは www.iij.ad.jp というドメインになっていますが、このドメインにはIPアドレスが紐付いているのです。
記事執筆時点で、このドメインに紐付いているIPアドレスは 202.232.2.180 です。
つまり 名前解決 は「〇〇のドメインに紐付いているIPアドレスはなんですか?」と問い合わせると、答えが返ってくる仕組みです。
この問い合わせに答えてくれるサーバがインターネット上には存在しており、DNS(Domain Name System)サーバと呼びます。
この名前解決によって、異なる種類のボットの関係が見えることがあります。
上図は異なる種類のボットを2つ解析したときを表したものです。
たとえば、それぞれのボットを解析することで以下の情報が得られたとします。
- ボット1
- example.com というドメインの情報
- ボット2
- 203.0.113.1 というIPアドレスの情報
これらの情報が関係しているかどうかは、各ボットの解析を終えた時点ではわかりません。
そこで名前解決の仕組みを利用することで、ボット1の解析からボット2のIPアドレスであることがわかるようになります。
ここで紹介したのは名前解決を利用した一例ですが、情報が直接結びつくこともあれば、様々な情報を数珠つなぎにして関係が見えてくるものもあります。
これを“情報連鎖”でわかる関係と呼んでいます。
“情報連鎖”によって関係を見つけるためには、よりたくさんの情報を集める必要があります。
たくさんの情報を集めておくことで、見えにくい関係が“情報連鎖”によって 見える ようになっていきます。
たくさんの情報を効率良く繋げるツール
先程の例は簡単に2つのボットを例にしましたが、DDoS攻撃用のボットは日々多くの種類が見つかります。
そのため、毎日たくさんのボットを解析することが必要になります。
また、解析したボットの関係はその時点で明らかにならないものもあるため、解析することで入手した情報を蓄えておく必要があります。
名前解決な関係だけを取り上げたとしても、新しく一つの情報を入手した時点で、過去の情報に対してすべての組み合わせで関係を調べ直すという現実が待っています。
先程の“情報連鎖”によって 見える 状況に変えていくため仕方がないことなのですが、たくさんの情報を扱えば扱うほど時間が足りなくなるのです。
その課題に対して、わたしは CHAGE というツールを駆使してなんとか分析が行えています。
答えを出してくれる夢のようなツールではなく、CHAGE は時間的な課題をサポートしてくれるツールです。
例えば、以下のようなサポート機能が備わっています。
- 名前解決などを代行
- 情報の関係を“情報連鎖”で表示
CHAGE は一言でいうと、関係がある情報を高速に検索して示してくれるツールです。
これらのサポートがあるからこそ、ふぇにっくちゅん はボットの解析に専念でき、CHAGE が示してくれる関係をより深く調査できる時間が確保できます。
関係をみつけよう
ここでは CHAGE を使って関係を見つける様子を紹介します。
例として、3つのボットを解析し以下の情報を入手したとします。
- ボット1(下図 bot1)の解析から入手した情報
- 203.0.113.1
- 203.0.113.10
- 203.0.113.100
- ボット2(下図 bot2)の解析から入手した情報
- example.com
- example.org
- ボット3(下図 bot3)の解析から入手した情報
- example.org
ボットの解析結果に加え CHAGE に 名前解決 を代行してもらい、以下の情報を入手したとします。
- CHAGE が代わりに 名前解決 で入手した情報
- 203.0.113.1(example.comに紐付いている)
これらの情報を CHAGE で表示した図は以下です。
上図のうち、赤い文字の 203.0.113.1 があることがわかります。
これは CHAGE が表示する情報の一つにマウスカーソルを当てることで、関係がある部分を赤くして教えてくれる機能です。
これでボット1とボット2が関係していることがわかりました。
※ 読者の皆さんも他にも関係がないか上図から探してみてください
ここで紹介した図は、今回の説明のためにサンプルとして作成したものです。
実際には 名前解決 以外にも、情報をたくさん集めて画面いっぱいに表示してくれます。
たくさんの情報の中から関係を見つけていくことで、ボットの纏まり(ボットネット)が見えてくるようになります。
関係の理由をしらべよう
CHAGE は関係を見つけてるサポートをしてくれますが、その理由までは教えてくれません。
先程までは 名前解決 を例に挙げていたので、情報同士が紐付いた理由が 名前解決 とわかりやすかったのですが、実際にDDoS攻撃用のボット同士の関係はわかりにくいものがほとんどです。
つまり、“情報連鎖”はしているのですが「なんで?」の情報が欠けているのです。
心配ありません。この連載を読んでくださっている方なら大丈夫だと思います。
そうです。ここで 分析者魂 の出番です。
「なんで?」と思ったらまずは調べて 目隠し をできるだけ取れば良いのです。
ボット1とボット2の情報がなぜ“情報連鎖”したのか? これを検索エンジンなどを駆使して調べ上げます。
実はこの調査が、連載の最初に紹介した「マルウェア開発者や販売者の動向」を明らかにするための調査に相当します。
なぜ「マルウェア開発者や販売者の関係性」が明らかになるのか?は次回の記事で取り上げます。
次回のお話へ
連載記事を通して、分析で大事なポイントである“目隠し”と“情報連鎖”をテーマとして取り上げ紹介してきました。
わたしの分析は、ボットの解析からはじまり、情報連鎖を駆使してボットネットの関係を見ることによって「マルウェア開発者や販売者の動向」を視えるようにするものです。
次回は本記事で紹介できなかった「マルウェア開発者や販売者の動向」が、なぜ明らかになるのか?について少し触れて、連載を終えようと思います。
- Introduction/分析はパズル感覚で!:セキュリティ分野の分析(1)
- 情報をつなげて関係をみつける:セキュリティ分野の分析(2) ※本記事です
- もう一歩踏み込もう:セキュリティ分野の分析(3)
なお、3は後日公開します。公開時にはTwitter@IIJ_ITSで告知しますので、もしよろしければフォローください。