STRCMP PHP УЯЗВИМОСТИ

Функция strcmp в PHP используется для сравнения двух строк. Однако, несмотря на популярность функции, она может стать причиной уязвимостей в приложении, особенно если не используется безопасное и правильное сравнение строк.

Одна из распространенных уязвимостей связана с особенностями работы функции в PHP и типом данных, с которыми она работает.

$str1 = "100";
$str2 = "1e2";
if (strcmp($str1, $str2) == 0) {
//do something
}

В приведенном выше коде, сравнение будет возвращать true, хотя строки различаются. Это происходит из-за того, что функция сравнения использует тип данных integer и воспринимает строку "1e2" как число 100.

В результате, при использовании strcmp необходимо следить за типами данных и приводить их к соответствующему типу перед сравнением строк. Также можно использовать более безопасную функцию сравнения строк - hash_equals().

Лучший сканер уязвимостей? OWASP ZAP. Как пользоваться?

Bypassing strcmp() pada PHP Comparison - PUCC CTF

Как тестировать сайт? - Уязвимости сайтов - XSS атака - 18+

PHP strcmp Bypass (ABCTF2016 – L33t H4xx0r)

10. Как через strcmp обойти авторизацию.

Поиск уязвимостей веб-сайтов руками и сканерами

Реклама
Новое
Реклама