.rodata セグメント 読み取り専用の文字列とポインタは .text セグメントに格納されている これらのオブジェクトは PROT_READ | PROT_EXEC になってしまう 意味のある定数データを実行できる (攻撃者が使用する恐れのあるコードになる可能性がある) これは ELF であり a.out ではないため、.rodata と呼ばれる 新しいセグメントを作成することができる これらのオブジェクトを PROT_READ にする (PROT_EXECを外せる) これを !X と呼ぶ 基本的に以上はベース システム アドレス空間作成のコンポーネントすべてに 最小限のパーミッションを設定する技術 実際のオーバヘッドはない