Core Concepts
LightFAtは、プロセッサのパフォーマンスモニタユニット(PMU)の読み取り値を活用し、教師なし機械学習モデルを用いて、リモートデバイスの制御フローが不正に改変されていないかを検証する軽量な手法を提案する。
Abstract
本論文では、LightFAtと呼ばれる新しい制御フロー検証手法を提案している。従来の制御フロー検証手法は、各実行パスに対して暗号化ハッシュ値を計算する必要があり、制御フローが複雑なアプリケーションでは計算コストが非常に高くなるという問題があった。
LightFAtでは、代わりにプロセッサのパフォーマンスモニタユニット(PMU)から取得したIPC(Instruction Per Cycle)やキャッシュアクセス情報を用いて、教師なし機械学習モデルによる異常検知を行う。これにより、制御フローの複雑性に依存せずに軽量な検証が可能となる。
具体的な評価では、自作の脆弱なアプリケーションを用いて、コード注入攻撃やデータ漏洩攻撃を模擬した。その結果、LightFAtは95%を超える高い検出精度を達成し、低い偽陽性率と偽陰性率を示した。さらに、検証側の処理コストも非常に低いことが確認された。
以上より、LightFAtは制御フローの複雑性に依存せずに軽量な制御フロー検証を実現できる新しい手法であり、IoTデバイスなどの制約の厳しい環境でも適用可能な優れたソリューションといえる。
Stats
LightFAtの検証精度は95.62%に達し、偽陰性率は1.18%、偽陽性率は5.61%と低い値を示した。
検証側の処理時間は、前処理が0.991マイクロ秒、予測が2.335マイクロ秒と非常に高速であった。