核心概念
動的解析回避技術(TADA)を実装したマルウェアの解析を支援するため、LLMを用いてTADA実装箇所を特定し、リバースエンジニアにブレークポイントの設置を提案するワークフローを開発した。
要約
LLMを用いたマルウェアにおける動的解析回避技術の実装箇所特定:論文要約
本稿では、リバースエンジニアリングにおけるマルウェア解析、特に動的解析回避技術(TADA)に対処するための、大規模言語モデル(LLM)を活用した新たなワークフローを提案する。
今日のマルウェア検知システムでは、サンドボックスなどの動的解析が広く用いられている。マルウェア作者もこの動向を認識しており、検知回避のためにTADAを実装するケースが増加している。これにより、サンドボックスによる解析は失敗し、リバースエンジニアによる手動解析が必要となる。しかし、TADAの存在は手動解析の妨げにもなる。
本研究は、リバースエンジニアの負担軽減を目的とし、マルウェアのバイナリ実行ファイルからTADAの実装箇所を特定し、デバッグ用のブレークポイントを提示することを目指す。
提案するワークフローは、静的解析とLLMを組み合わせたものである。まず、マルウェアサンプルから基本ブロック(BB)レベルでの解析を行い、アセンブリ言語、APIコール、文字列情報などの特徴量を抽出する。次に、これらの特徴量を用いて自然言語で記述されたプロンプトを作成し、LLMに入力する。LLMは、各BBがTADAに関連している可能性を0から10の評価値で出力する。