
Curated guide to becoming a malware analyst, covering essential knowledge, reverse engineering, analysis tools, and LLM-assisted learning with practical exercises and resources.
これは@PINKSAWTOOTHの私見で、必ずしもあなたにとって一番良い方法ではないかもしれません。勉強方法の一例として参照してもらえれば幸いです。
これを読む前に、私が尊敬するマルウェア解析者の@hasherezade氏がマルウェア解析の勉強をどのように始めたらよいかをブログにまとめています。 重複する部分があると思いますが、一読することをおすすめします。また、以下のブログは英語のソースが中心なので、可能な限り日本語を中心にしたソースを紹介したいと思います。
[!NOTE]
2026年追記: LLM時代のマルウェア解析学習
このページを書き始めた当時は、LLMやAI Agentが今のように日常的に使える時代ではありませんでした。 2026年現在、マルウェア解析やリバースエンジニアリングを勉強するのであれば、書籍やWeb上の資料に加えてLLMを積極的に利用することをおすすめします。特に、学習用プログラムの作成、コードやアセンブリの説明、解析、解析スクリプトの作成、解析結果の整理などでは非常に有用です。
一方で、多くの解析技術においてLLMが人間を上回る場面が増えてきました。しかし、だからといって基礎知識が不要になったわけではありません。LLMの出力を理解し、自分自身でその根拠や正しさを確認するためには、専門知識を持っていることが重要です(その作業に意味がなくなる日も近いかもしれませんが・・・)。本稿では、LLMを「答えを出す装置」ではなく「一緒に学習する教師、解析時の助手」として利用することを前提にしています。
まず、マルウェア解析の前提となる知識について簡単に説明します。 マルウェア解析について学ぶ前に、最低限コンピュータサイエンス(計算機科学)の知識が必要になります。
これらについては、大学や専門学校で履修する内容が理解できていればよいかと思います。 (どこかの大学のオンラインシラバス等を確認することで、より具体的な内容を知れるかと思います。) 本稿では、プログラミング言語やコンピュータサイエンスをどのように学ぶかはスコープ外としますが、以下がおすすめの資料です。
マルウェア解析に必要となる知識を大きく以下の5つに分けます。
まずはマルウェアとはなにか、マルウェア解析とは何を行う作業なのかを学ぶ必要があります。 マルウェア解析全般について学ぶのにおすすめの資料、書籍を紹介します。
マルウェア解析のオンライントレーニングもおすすめです。
マルウェアの挙動、悪用するテクニックについてまとめられているページを紹介します。