資格暗記無料で始める

解放済みメモリの使用(Use After Free)とは?

解放済みメモリの使用(Use After Free)とは、解放した領域を指すポインタを、その後も参照・書き込みしてしまう欠陥。解放された領域が別の用途で再確保された後に使われると、攻撃者が仕込んだデータを本来のオブジェクトとして扱わせることができ、関数ポインタ経由で任意コード実行に至る。

情報処理安全確保支援士試験の過去問では1回出題されています。

かいほうずみめもりのしよう

情報処理安全確保支援士試験の頻出用語/午前II/別名:解放済みメモリ使用、Use-After-Free、UAF、解放済みメモリ使用(Use-After-Free)、解放済みメモリの使用、Use After Free


解放済みメモリの使用(Use After Free)の意味

解放した領域を指すポインタを、その後も参照・書き込みしてしまう欠陥。解放された領域が別の用途で再確保された後に使われると、攻撃者が仕込んだデータを本来のオブジェクトとして扱わせることができ、関数ポインタ経由で任意コード実行に至る。

解放済みメモリの使用(Use After Free)の具体例

ブラウザやドキュメント処理系で、スクリプトから要素を削除した直後に、その要素を指す内部ポインタが使われる。攻撃者は解放と再確保のタイミングを制御して、意図した内容を同じ領域に置き、仮想関数表の参照先を乗っ取る。

解放済みメモリの使用(Use After Free)は試験でどう引っ掛けられる?

解放直後にポインタへ空値を入れる対策は、同じ領域を指す別のコピーが残っていれば効かない。またクラッシュせずに動き続けることが多く、通常のテストでは発覚しない。動的解析ツールを使わないと検出が難しい点も重要。

解放済みメモリの使用(Use After Free)と関連する用語

解放済みメモリの使用(Use After Free)が出た過去問

最終更新:2026-08-25/解説は資格暗記が独自に作成しています。 過去問の出典は各問題に記載のとおりです。