Размер массива переменной длины (VLA) из небезопасного источника и может быть нулем, отрицательным, или слишком большим
Этот дефект происходит, когда размер массива переменной длины (VLA) получен из небезопасного источника. Чтобы рассмотреть весь вход снаружи текущего аналитического периметра как небезопасный, используйте -consider-analysis-perimeter-as-trust-boundary
.
Если атакующий изменил размер вашего VLA к неожиданному значению, это может заставить вашу программу отказывать или неожиданно вести себя.
Если размер неположителен, поведение VLA не определено. Ваша программа не выполняет как ожидалось.
Если размер неограничен, VLA может вызвать исчерпание памяти или переполнение стека.
Подтвердите свой размер VLA, чтобы убедиться, что это положительно и меньше, чем максимальное значение.
Группа: испорченные данные |
Язык: C | C++ |
Значение по умолчанию: Off |
Синтаксис командной строки: TAINTED_VLA_SIZE |
Удар: Средняя |
ID CWE: 128, 131, 770, 789 |
-consider-analysis-perimeter-as-trust-boundary
| Find defects (-checkers)
| Memory allocation with tainted size