безопасность — как избежать «возможной уязвимости управления потоком»; в php?

Я получаю уязвимость системы безопасности — Возможный контроль потока [Уровень серьезности — Низкий] с Checkmarx Scan для следующего кода PHP.
Ошибка при использовании IF или isset ()
введите описание изображения здесь

введите описание изображения здесь

Спасибо !!

1

Решение

Это потому, что вы полагаетесь на необработанное значение переменной POST для управления потоком (то есть решаете, какой код выполнять). Это риск (все это может быть низким), потому что злоумышленник может заставить ваш код выполнять код по своему усмотрению или способами, которые вы, возможно, не ожидали.

Трудно понять, если это действительно проблема для вас, если не увидеть весь код здесь, только вы можете знать наверняка. Это не то, что вам нужно изменить или исправить само по себе, просто что-то, что нужно знать.

3

Другие решения

В первом коде вы должны проверить, что данные $ _POST существуют в индексе, прежде чем вы получите к нему доступ.

if (empty($_POST['maintDetail']))
return;
$myVar = $_POST['mainDetails'];//safe!

Для второго блока кода, который вы разместили, я не уверен. Выглядит хорошо для меня. Хотя вы должны проверить !empty если вы хотите, чтобы там был определенный контент, так как технически будет установлена ​​пустая строка. Взгляни на эта страница если вы хотите больше информации об этом.

0