このステップでは exec-only ページについて説明します. exec-only ページは 読み込み, 書き込み不許可, 実行のみ許可に設定されます. 実行許可かつ書き込み不許可に設定するデータ実行防止は最近では一般的ですが, 実行許可かつ読み込み不許可とする設定はあまり見られません. x86の場合, ページは書き込み許可・不許可を選択可能ですがその後, 実行許可・不許可を追加で選択することが可能となりましたが, 読み出しを不許可とする設定はありません.
実行許可のみが設定されたページは読み込みができないということになりますがこの設定は, Return-oriented programming (=ROP) 攻撃を緩和することに効果があると考えます.
ROP 攻撃は何らかのバグが存在する環境に対して 1. gadgets を集める, 2. gadgets を注入する, という順番で攻撃を行いますが, もし gadgets を集めることができなければ攻撃は成立しません. 攻撃対象のバイナリがすでに公開されていて(e.g. apt-getで取得できる)で誰でもディスアセンブルできる環境であれば gadgets を集めることは攻撃無しで可能となりますが, 攻撃対象のバイナリが公開されていない場合, そのバイナリの実行領域をダンプし gadgets を集める必要があります. exec-only ページは攻撃者が実行領域をダンプすることを防ぎます.