Безопасный код © Александр Швец
SQL инъекция $result = db_query(' SELECT * FROM users WHERE id = '" + $userID + "'; );
$userID = "5;DROP TABLE users";
$result = db_query(' SELECT * FROM users WHERE id = 5;DROP TABLE users; ');
Неправильно $result = db_query(' SELECT * FROM users WHERE id = '" + $userID + "'; );
Правильно $result = db_query(' SELECT * FROM users WHERE id = %d, $userID);
Cross-site scripting (XSS) Основная проблема кража пользовательских cookies, с помощью которых производится неавторизированный вход на сайт.
Как крадутся cookie document.write( );
Уязвимость в реальной жизни $output =. $title. ;
$title = alert(document.cookie) ;
alert(document.cookie)
$url = javascript:alert(document.cookie);
…
Неправильно $output =. $title. ;
Правильно $output =. check_plain($title). ;
Еще лучше $output = l($title, $url);
Фильтрация ввода лечение от XSS check_plain() check_markup() ckeck_url() t() filter_xss_admin()
Подделка межсайтовых запросов (CSRF) Быстро удалить документ
А что если?
Лечение CSRF Управляющий код должен выполняться только в обработчиках форм, либо с проверкой токенов.
Спасибо за внимание! Контакты: Александр Швец Ссылки: