最新分岐記録を用いたROPGuard回避防止手法

書誌事項

タイトル別名
  • ROPGuard Bypass Prevention Method Using Last Branch Recording Facilities

抄録

Microsoft の EMET に採用された ROPGuard は,特定の API のリターンアドレスの前の命令が CALL 命令以外のとき,実行を防止する.しかし,CALL 命令の後に続くガジェットを API のリターンアドレスに指定する方法などにより,ROPGuard を回避できる.そこで,本研究は,64 ビットWindows の機能により最新分岐記録を取得し,その最新分岐記録から API の呼び出し命令をチェックし ROP の実行を防止する実装を提案する.最新分岐記録を利用する従来の手法が,Intel の Nehalem 以降のプロセッサーとデバイスドライバを必要とするのに対して,提案手法は,Intel 64 および AMD64 アーキテクチャのプロセッサーに対応し,デバイスドライバを必要としない.

ROPGuard (integrated into Microsoft EMET) was designed to prevent return-oriented programming (ROP) attacks, utilizing evidence that the instruction preceding that at the return address of a critical API is not a CALL instruction. Since CALL-preceded gadgets allow ROP code to elude ROPGuard, we propose a new implementation of retrieving and checking last branch instructions at every critical API call, utilizing a feature of 64-bit Windows. Conventional methods using last branch recording facilities require Intel 64-bit processors later than Nehalem architecture and device drivers, while the proposed method supports both Intel 64 and AMD64 architecture processors and requires no device drivers.

収録刊行物

詳細情報 詳細情報について

  • CRID
    1050574047092557824
  • NII論文ID
    170000151414
  • Web Site
    http://id.nii.ac.jp/1001/00146871/
  • 本文言語コード
    ja
  • 資料種別
    conference paper
  • データソース種別
    • IRDB
    • CiNii Articles

問題の指摘

ページトップへ