■ダブル・フリー(double free)
メモリの同一エリアを2度以上開放してしまうバグ、またはそれによって生じる脆弱性のこと。メモリ・ダブル・フリーとも呼ばれる。
ダブル・フリーのバグでは、アプリケーションが異常終了したり、単にエラーが発生したりすることが多い。しかし場合によっては、ダブル・フリーが起きた後のメモリの割り当てで、同じポインタが異なるプログラムに返される可能性があるため、一方のプログラムが攻撃コードをそのメモリ領域に書き込むことで、別のプログラムに攻撃コードを実行させることが可能になる。このような攻撃が可能な場合、ダブル・フリーはバグではなく、脆弱性として扱われる。
|