最新分岐記録によりROPGuard回避を防止する手法の提案

書誌事項

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

この論文をさがす

抄録

MicrosoftのEMETに採用されたROPGuardは,特定のAPIのリターンアドレスの前の命令がCALL命令以外のとき,実行を防止する.しかし,CALL命令の後に続くガジェットをAPIのリターンアドレスに指定する方法などにより,ROPGuardを回避できる.そこで,本研究は,64ビット向けWindowsから導入された機能を利用して最新分岐記録からAPIの呼び出し命令を取得し,その命令がCALL命令(一部のJMP命令を含む)以外のとき,実行を防止する手法を提案する.最新分岐記録を利用する従来の手法が,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 cannot detect ROP code using short gadget chains, while the proposed method can support both Intel 64 and AMD64 architecture processors and can detect ROP code using short gadget chains.

収録刊行物

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

  • CRID
    1050845762837330176
  • NII論文ID
    170000131042
  • NII書誌ID
    AN00116647
  • ISSN
    18827764
  • Web Site
    http://id.nii.ac.jp/1001/00174625/
  • 本文言語コード
    ja
  • 資料種別
    journal article
  • データソース種別
    • IRDB
    • CiNii Articles

問題の指摘

ページトップへ