6章マルウェアのデバッグ
デバッグ(Debugging)は、制御された環境で攻撃コードを実行する手法です。デバッガは、攻撃コードを、より詳細なレベルで検査する機能を提供します。マルウェア実行時の動作を完全に制御し、マルウェアのすべてのアクションを1つずつ調査しながら、単一もしくは複数の命令を実行したり、(プログラム全体を実行する代わりに)特定の関数のみを選択して実行することができます。
この章では、IDA Pro(市販の逆アセンブラ/デバッガ)、およびx64dbg(オープンソースのx32/x64デバッガ)が提供する機能について学びます。デバッガが提供する機能、そしてプログラム実行中の挙動を分析する手法を学習します。マルウェアを分析するため、予算に応じて複数のデバッガを組み合わせることもできます。マルウェアをデバッグする時は、システム上で攻撃コードを実行するため、適切な注意を払う必要があります。そのため、隔離された解析環境で、デバッグを実行することを強くお勧めします(詳しくは、1章を参照してください)。この章の最後では、.NET用のデコンパイラ兼デバッガであるdnSpy(https://github.com/0xd4d/dnSpy)を利用して、.NETアプリケーションをデバッグする手法についても説明します。
その他、一般的な逆アセンブラ兼デバッガとして、以下が挙げられます。
|
Get 初めてのマルウェア解析 ―Windowsマルウェアを解析するための概念、ツール、テクニックを探る now with the O’Reilly learning platform.
O’Reilly members experience books, live events, courses curated by job role, and more from O’Reilly and nearly 200 top publishers.