Цикл, управляемый значением из небезопасного источника
Этот дефект возникает, когда цикл ограничен значениями, полученными из небезопасных источников. Чтобы считать все входные данные вне текущего периметра анализа небезопасными, используйте -consider-analysis-perimeter-as-trust-boundary.
Запятнанное значение может привести к закольцовыванию или бесконечному закольцовыванию. Злоумышленники могут использовать эту уязвимость, чтобы прервать вашу программу или вызвать другое непреднамеренное поведение.
Перед началом цикла проверьте неизвестные значения границ и итератора путем проверки их нижних и верхних границ. Цикл выполняется только в том случае, если проверяются как нижняя, так и верхняя границы запятнанных значений. Явно проверьте, что допустимы как нижняя, так и верхняя границы запятнанного значения. Либо насыщайте или зажимайте запятнанное значение.
| Группа: Запятнанные данные |
| Язык: C | C++ |
| По умолчанию: Откл. |
Синтаксис командной строки: TAINTED_LOOP_BOUNDARY |
| Воздействие: среднее |
| CWE ID: 606 |
-consider-analysis-perimeter-as-trust-boundary | Array access with tainted index | Find defects (-checkers) | Pointer dereference with tainted offset