AWSクラウド周りのセキュリティネタ多数、第7回勉強会に潜入してきたレポート
ハニーポットから負荷試験の失敗事例まで、Security-JAWS勉強会
2017年11月29日 07時00分更新
Security-JAWSは、Amazon Web Services(AWS)を安全に、安心して使うために集い、さまざまな観点から専門的なナレッジを共有するセキュリティ専門のコミュニティだ。そのSecurity-JAWSが主催する第7回勉強会が、11月13日に開催された。
今回は、オープンソースの脆弱性スキャナ「vuls」の開発者である神戸康多さんなどが在籍するフューチャーアーキテクトを会場に、不正アクセス対策や認証/認可、ログ管理に脆弱性管理、さらには一見セキュリティとはあまり関係なさそうに思える「負荷試験」に至るまで、さまざまな知見が紹介された。
世界各地のリージョンでハニーポットを構築してみた結果は……?
トップバッターを務めたのは、フューチャーアーキテクトの前原応光さんだ。「経済的にハニーポットとログ分析をするためのベストプラクティス?」と題し、AWS上に2種類のハニーポットを構築して、攻撃者の動向を観察してみた結果を紹介した。
「ハニーポット」とは、サイバー攻撃の動向や手法を探るために使われるセキュリティツールの総称だ。あえて攻撃者に攻撃を実行させる「おとり」のシステムで、攻撃が成功したように見せかけつつ、実際には被害が出ない仕掛けになっている。これにより、セキュリティ側は攻撃者が不正ログインを図る手口を観察したり、マルウェアや攻撃コードを収集したりして、攻撃者の最新動向や流行している攻撃手法を把握する一助とする。
ただし、おとりのつもりで設置したシステムが本当に侵害され、被害を出してしまっては元も子もない。そのため、ハニーポットの運用には十分に注意しなければならない。AWSでもハニーポット運用に関しては一定のルールが定められており、基本的にはOSやアプリケーションをエミュレートするタイプの、比較的リスクの低い「低対話型ハニーポット」のみが設置できると考えるべきだろう。
今回、前原さんが利用したのは、HTTPやFTP、SMBなどのサーバーをエミュレートしてWebサイト攻撃の観測やマルウェア収集ができる「Dionaea(ディオネア)」と、SSHサーバーのエミュレートに特化した「Cowrie(カウリ)」という2種類の低対話型ハニーポットである。
ただし、せっかくAWSを使うのだからと、前原さんは世界各国のリージョンにハニーポットを設置していった。具体的にはバージニア、カリフォルニア、カナダ、東京、シンガポール、サンパウロ、アイルランドの7リージョンだ。ちなみに「バージニアを基準にした場合、サンパウロの料金はすごく高くて163%になる。東京も割と高いので、もしも検証程度ならばバージニアなど安いリージョンで使うほうがいいのでは」(前原さん)とのこと。
こうして前原さんは、リージョンごとの攻撃動向の違いを見ると同時に、Dionaeaを使って攻撃者のドメイン名を取得し、そのドメイン名を「Pastebin」に貼り付ける(さらす)ことで、攻撃側のアクティビティに変化が見られるかどうかも確認した。またマルウェアの検知には、無料で利用できる「VirusTotal」のAPIを活用した。もうひとつのCowrieでは、SSHサーバーへの不正ログイン攻撃で試されるユーザー名やパスワードの傾向把握を目的とした。
前原さんが特に工夫を凝らしたのは、ハニーポットで取得したログを収集するためのシステム構成だ。一般的にはfluentdなどが用いられるところだが、前原さんは「ElasticStack」を採用した。ElasticStackは、インデキシングを行う「Elasticsearch」を中心に、その可視化を担う「Kibana」、さまざまなログを取り込む「Logstash」なども含むツール群(ツールスタック)である。DionaeaのログはいったんS3バケットに、CowrieのログはCloudWatch Logsに保存し、任意のタイミングでElasticStackから取りにいく仕組みだ。
「常にElasticStackを起動しておくとお金がかかる。だが、なるべくログの取りこぼしはなくしたいし、ログはいつでも取り出せるようにしたい。そうした観点から考えた結果、こういう構成になった。要は、なるべくAWS側に寄せる(なるべくAWSのサービスを利用する)構成にしている」(前原さん)
こうして2週間ほどハニーポットを運用した結果、Cowrieへのアクセス件数は、アイルランドやサンパウロ、シンガポールの各リージョンが多かったという。面白いことに「南米の場合、なぜかはわからないが(不正ログイン試行時の)ユーザー名に『mother』と入力してくるケースが多い。国や言語、リージョンによってけっこう違いがあることがわかる」(前原さん)。
またDionaeaでは、ドメイン名の有無やPastebinへの書き込みの有無など、4つの異なるタイプで運用してみた。「ドメイン名を取得して、それをPastebinに貼り付けることで、マルウェアの取得率がかなり変わることが分かった」(前原さん)。また、攻撃者が送りつけてくるマルウェアファイルをVirusTotalでスキャンした結果、8~9割がランサムウェアの「WannaCry」で埋め尽くされていることもわかった。
ちなみに、4台のDionaeaのうち2台は「スポットフリート」を使いスポットインスタンスで運用したところ、コストが非常に安く済んだという。また、VirusTotalのAPIコールは「1分間に4回まで」という上限があること、8GB程度のディスク容量では2週間はもたず、これ以上攻撃を受けられない状態になってしまうことなどにも注意が必要だという。
前原さんは最後に、AWS上でのハニーポット運用について「ログをAWS側に寄せることがけっこう重要だと感じた。可用性やログの保管という観点に加え、コストも安く済む。好きなときにElasticStackを立ち上げてストアし、ビジュアライズできる」とまとめた。人に迷惑をかけないよう運用には細心の注意が必要だが、「こういったものをうまく活用することで、面白い結果が得られるのではないか」と振り返った。