Смещение из небезопасного источника, и разыменуйте, может выйти за пределы
Указатель разыменовывает с испорченным смещением, обнаруживает разыменование указателя, или чтение или запись, с помощью переменной смещения из неизвестного или небезопасного источника.
Эта проверка фокусируется на динамически выделенных буферах. Для статических буферных смещений смотрите Array access with tainted index
.
Индекс может быть вне допустимой области значений массивов. Если испорченный индекс вне области значений массивов, он может вызвать:
Недостаточное наполнение буфера / подписывает, или пишущий в память перед началом буфера.
Переполнение буфера, или пишущий в память после конца буфера.
По чтению буфера или доступу к памяти после конца целенаправленного буфера.
Под чтением буфер или память доступа перед началом целенаправленного буфера.
Атакующий может использовать недопустимое чтение или записать, чтобы поставить под угрозу вашу программу.
Подтвердите индекс, прежде чем вы будете использовать переменную, чтобы получить доступ к указателю. Проверяйте, чтобы убедиться, что переменная в допустимой области значений и не переполняется.
Группа: испорченные данные |
Язык: C | C++ |
Значение по умолчанию: 'off' |
Синтаксис командной строки: TAINTED_PTR_OFFSET |
Влияние: низко |
ID CWE: 122, 124, 129, 823 |
Array access with tainted index
| Find defects (-checkers)
| Use of tainted pointer