はじめに
GREM(GIAC Reverse Engineering Malware)は、マルウェア解析の資格です。
この資格について日本語で書かれた記事は少ないので、私が受験した際の勉強法について記載します。
GREMについて
GREMは75問出題され、制限時間は2時間です。ほとんどの問題は4択です。(一部2択、3択もあります)
合格ラインは70.7%の正答率です。(私が受験した時点の合格ライン)
試験の内容は以下と公式サイトに記載されています。
- Analysis of Malicious Document Files
- Analyzing Protected Executables
- Analyzing Web-Based Malware
- Common Windows Malware Characteristics in Assembly
- In-Depth Analysis of Malicious Browser Scripts
- In-Depth Analysis of Malicious Executables
- Malware Analysis Using Memory Forensics
- Malware Code and Behavioral Analysis Fundamentals
- Windows Assembly Code Concepts for Reverse-Engineering
出題範囲は実行ファイルに関するもの以外にも、悪意のあるJavaScriptやOfficeファイル、PDFファイル、メモリフォレンジックも含まれます。
たとえ業務でマルウェア解析をしていても、準備なしで試験を受けるのは厳しく、現実的にはSANS FOR 610のトレーニングを受講すべきでしょう。私もそうしました。
また、GCFAと同様、紙媒体の資料は持ち込みが可能です。自分なりのメモ、カンニングペーパーを作って持ち込みましょう。
事前知識
私はマルウェア解析については多少業務で行ったことがあるとはいえ、アセンブラの読解、マルウェアが実装している耐解析機能、OfficeファイルやPDFファイルのマルウェアなど、SANS FOR 610のトレーニング内容の半分以上は知らない状態からのスタートでした。
一方で、フォレンジックについては長年の経験があるため、メモリフォレンジックの分野についてはすべて既知の内容でした。これは試験において大きなアドバンテージとなったと思います。
勉強方法
まず最初にトレーニングの録画ビデオ(オンライントレーニングだったため録画が見られた)をすべて見直し、実際に手を動かして演習を行いました。これが結果的に合格に繋がったと思います。
一通りの録画ビデオを確認し、演習もこなした後、1回目の模擬試験を受験しました。この時点で76%の正答率だったので、手ごたえは十分でした。
誤答が多かった分野を再度復習し、2回目の模擬試験を受験しました。この時点で8割近く正答できていました。
これで十分準備が整ったと判断し、簡単に復習した後、本番の試験に挑みました。
なお、2回目の模擬試験では、1回目と同じ問題が多数出てきてしまいました。問題の母数が多くないのと、テキストの範囲に限定してしまうと、作成できる問題が少ないのだと思います。
英語について
GIACの試験はすべて英語で行われ、翻訳ツールは紙の辞書や持ち込んだメモ以外は使うことができません。
英語はGREMにおいては比較的理解しやすかったですが、過去に受験したGCFAはやや難しいと感じました。試験によっては英語が大きなネックになる可能性があります。
短期間で英語力を向上させるのは難しいですが、持ち込んだメモにテキストや模擬試験に出てきた知らない英単語の和訳を書いて持ち込むと良いです。
それから非常に重要な点として、試験問題に回答することが目的であり、和訳が目的ではありません。なんとなく問題や選択肢が理解できたのであれば、それでOKとすべきです。7割くらいの理解度であっても、最も正しいと思われる選択肢を選んで先に進んだほうが良いでしょう。
試験を終えて
本番の試験問題について記載することはできませんが、GCFAと同様、模擬試験と似たような問題が出ます。ツールの名前、機能は理解し、カンニングペーパーにも書いておくべきでしょう。ツールの機能については演習をやれば頭に入ると思います。
英語は全体的に難しいとは思いませんでしたが、模擬試験で出てきた英単語は別途メモして和訳表を作っておくと便利です。
それと、実際に手を動かしたからこそ解答できた問題も多々あったので、__演習をやり直すことは非常に重要__だと思います。今後GREMを受検する方には、演習をすべてやり直しておくことを強く推奨します。
また、全体として問題そのものは基本的なレベルが多いと思います。英語なので難しく感じますが、ひっかけ問題だとか、問題文が意味不明ということはありませんでした。トレーニングの内容を理解していれば十分合格できる、合格させるための試験だと思います。
なお、最終的なスコアは82%でした。
次の目標
CompTIA CASP+
CISA
CISM
OSCP
あたりを検討中です。