メモリ安全性
メモリ安全性 とは何ですか?
メモリ安全性メモリ安全性とは、プログラムが正当に確保していないメモリを読み書きしたり実行したりしないという性質で、脆弱性のクラスをまとめて排除できます。
メモリ安全性には、空間安全性(範囲外アクセスがない)、時間安全性(use-after-free や double-free がない)、型安全性、初期化安全性が含まれます。C や C++ は既定でメモリ安全ではなく、バッファオーバーフロー、UAF、型混乱が重大な CVE の大半を占めます。Microsoft、Google Project Zero、米国 ONCD の 2024 年報告などの統計では、大規模 C/C++ コードベースの重大脆弱性の 60〜70% がメモリ安全性の欠陥に起因します。ASLR、DEP、CFI、サニタイザなどの緩和策は攻撃コストを上げますが、メモリ安全言語や形式検証済みサブセットによって根本からバグを取り除くことが、最終的な解決策となります。
● 例
- 01
範囲外書き込みでヒープチャンクを攻撃者制御のオブジェクトに変える。
- 02
use-after-free で解放した JavaScript オブジェクトのポインタが JIT キャッシュに残る。
● よくある質問
メモリ安全性 とは何ですか?
メモリ安全性とは、プログラムが正当に確保していないメモリを読み書きしたり実行したりしないという性質で、脆弱性のクラスをまとめて排除できます。 サイバーセキュリティの アプリケーションセキュリティ カテゴリに属します。
メモリ安全性 とはどういう意味ですか?
メモリ安全性とは、プログラムが正当に確保していないメモリを読み書きしたり実行したりしないという性質で、脆弱性のクラスをまとめて排除できます。
メモリ安全性 からどのように防御しますか?
メモリ安全性 に対する防御は通常、上記の定義で述べたとおり、技術的統制と運用上の実践を組み合わせます。
メモリ安全性 の別名は何ですか?
一般的な別名: メモリ安全性の不具合。