セキュリティ・キャンプ全国大会2015でのマルウエア分析講義(2015-09-10)
こんにちは、中津留です。今年のお盆期間、私はセキュリティ・キャンプ全国大会2015に参加していました。学生を対象としたトップガン発掘トレーニング中のマルウエア分析の講義を担当したからです。セキュリティ・キャンプの詳細については、参考URL[*]をご参照ください。
セキュリティ・キャンプで用いたマルウェア分析の講義資料を次のとおり公開しており、今回はそれを紹介したいと思います。
セキュリティ・キャンプ全国大会2015においてのマルウエア分析講義資料 | ||||
公開日 | タイトル | ファイル | PGP署名 | |
2015-09-10 | 「10-D: Understanding Malware」 ・JPCERT/CC 分析センター 中津留 勇 |
3.23MB デジタル署名付 |
PGP 署名 | |
「13-D, 14-D: Understanding Malware 」 |
974KB デジタル署名付 |
PGP 署名 | ||
「Understanding Malware Exercises」 ・JPCERT/CC 分析センター 中津留 勇 |
zip 1.08MB |
PGP 署名 |
「コードから読み解くマルウエアの真実」
5日間に渡るセキュリティ・キャンプの中で、私が担当したのは6時間分の講義でした。マルウエア分析をするためにはOSやネットワークといった多岐にわたる知識が必要となりますし、分析手法に関しては環境構築方法や様々なツールの使い方を知る必要があります。しかしながら、短い時間の講義にあれこれを詰め込むのは難しいため、セキュリティ・キャンプでは人気の高い「静的分析手法(リバースエンジニアリング)」を主に取り上げることにしました。静的分析手法はマルウエアに含まれるコードを読む手法であり、他の分析手法よりも難しく、分析に長い時間を要しますが、より詳細にマルウエアの挙動を明らかにすることができます。
講義は次の2部構成で行いました。
- 前半2時間
マルウエアの現状と分析手法についての基礎知識を説明してから、静的分析の基礎(アセンブリ言語や効率的なコードの読み方など)をハンズオン形式で解説しました。 - 後半4時間
Windowsの仕組みやマルウエアが使用するテクニックなどの、実際にマルウエアを分析するために必要な知識を説明しながら、受講生に自分の力でマルウエアのコードを読み解いていただきました。
この講義を通じて、受講生がマルウエアを正しく理解し、静的分析手法を習得するとともに、マルウエア分析における課題を認識し、それらの知識・技術を今後に活用してもらうことを目的としています。なお、JPCERT/CCは海外でトレーニングを実施する機会が多いため、講義資料はすべて英語で作成しています。
受講生の中に中学生も含まれていたセキュリティ・キャンプでは、高度な技術力を要求されるマルウエア分析講義を英語資料で学ぶのは、若干ハードルが高かったかもしれません。それでも、受講生は真剣にマルウエアのコードを読み解き、マルウエアが実際にどのような挙動をしているのかを明らかにすることができていました。最後に、受講生から「ためになった」、「難しかったけど楽しかった」、「もっと読めるようになりたい」などの感想をいただくことができ、受講生の将来に貢献することができたことを嬉しく思っています。
おわりに
受講生だけでなく、マルウエア分析に興味をもつ皆様のお役に立てることを願い、講義資料を公開しています。ご感想やフィードバックをお待ちしています。
分析センター 中津留 勇
「セキュリティ・キャンプ全国大会2015」:IPA 独立行政法人 情報処理推進機構
https://www.ipa.go.jp/jinzai/camp/2015/zenkoku2015.html
セキュリティ・キャンプ実施協議会
http://www.security-camp.org/camp/index.html