この製品は、信頼できないソースから値を取得し、この値をポインタに変換し、結果のポインタを非参照にする。
攻撃者は、製品が想定していないメモリ位置へのポインタを提供することができる。このポインタが書き込み操作のために再参照されると、攻撃によって重要な状態変数が変更されたり、クラッシュが発生したり、コードが実行されたりする可能性がある。参照解除が読み取り操作の場合、攻撃によって機密データの読み取りやクラッシュの原因になったり、変数に予期しない値が設定されたりする可能性があります(予期しないメモリ位置から値が読み取られるため)。
この弱点には、必ずしもこれらに限定されないが、いくつかの亜種がある:
The product obtains a value from an untrusted source, converts this value to a pointer, and dereferences the resulting pointer.
An attacker can supply a pointer for memory locations that the product is not expecting. If the pointer is dereferenced for a write operation, the attack might allow modification of critical state variables, cause a crash, or execute code. If the dereferencing operation is for a read, then the attack might allow reading of sensitive data, cause a crash, or set a variable to an unexpected value (since the value will be read from an unexpected memory location).
There are several variants of this weakness, including but not necessarily limited to: