解放済みメモリの使用(Use After Free)とは?
解放済みメモリの使用(Use After Free)とは、解放した領域を指すポインタを、その後も参照・書き込みしてしまう欠陥。解放された領域が別の用途で再確保された後に使われると、攻撃者が仕込んだデータを本来のオブジェクトとして扱わせることができ、関数ポインタ経由で任意コード実行に至る。
情報処理安全確保支援士試験の過去問では1回出題されています。
かいほうずみめもりのしよう
解放済みメモリの使用(Use After Free)の意味
解放した領域を指すポインタを、その後も参照・書き込みしてしまう欠陥。解放された領域が別の用途で再確保された後に使われると、攻撃者が仕込んだデータを本来のオブジェクトとして扱わせることができ、関数ポインタ経由で任意コード実行に至る。
解放済みメモリの使用(Use After Free)の具体例
ブラウザやドキュメント処理系で、スクリプトから要素を削除した直後に、その要素を指す内部ポインタが使われる。攻撃者は解放と再確保のタイミングを制御して、意図した内容を同じ領域に置き、仮想関数表の参照先を乗っ取る。
解放済みメモリの使用(Use After Free)は試験でどう引っ掛けられる?
解放直後にポインタへ空値を入れる対策は、同じ領域を指す別のコピーが残っていれば効かない。またクラッシュせずに動き続けることが多く、通常のテストでは発覚しない。動的解析ツールを使わないと検出が難しい点も重要。
解放済みメモリの使用(Use After Free)と関連する用語
解放済みメモリの使用(Use After Free)が出た過去問
認証処理のうち、FIDO(Fast IDentity Online)UAF(Universal Authentication Framework)1.1に基づい…
正解:SaaS接続時の認証において、スマートフォンで顔認証を行った後、スマートフォン内の秘密鍵でディジタル署名を生成して、そのディジタル署名を認証サーバに送信した。
要点:FIDO UAFは生体照合を端末内で完結させ、署名だけを送る
FIDO UAF はパスワードを使わない認証方式で、生体情報の照合を利用者の手元の端末内だけで完結させる点が最大の特徴である。照合に成功すると、端末内のセキュアな領域に保管された秘密鍵で署名を生成し、その署名だけをサーバへ送る。サーバは登録済みの公開鍵で検証するため、生体情報そのものがネットワークを流れず、サーバ側から生体情報が漏えいするリスクを排除できる。
出典:令和1年度 秋期 情報処理安全確保支援士試験 am2 問1(IPA)
最終更新:2026-08-25/解説は資格暗記が独自に作成しています。 過去問の出典は各問題に記載のとおりです。