|
|
|
| Здравствуйте у меня вопрос по поводу MySQL.
Вот просто мучает меня паранойа взлома через SQL-инъекции
Скажите какие действия необходимо произвести для безопасных операции данными в MySQL
Например пришла к нам переменная host переданная методом POST из некой формы.
Я сразу бросаюсь проверять ее:
1.trim
2.htmlspecialchars
3.addslashes
Вот и не знаю - достаточно ли таких действий?!
При выборке из базы данных применяю функцию stripslashes.
Заранее спасибо! | |
|
|
|
|
|
|
|
для: Alexneo
(14.08.2005 в 16:44)
| | stripslashes надо применять не всегда а только тогда, когда magic quotes включены. или выключены. вроде так. надо вобщем читать онлайн док по stripslashes на пхп.нет. там в коментах все написано | |
|
|
|
|
|
|
|
для: Alexneo
(14.08.2005 в 16:44)
| | >Вот и не знаю - достаточно ли таких действий?!
Нет, взломать всегда смогут... это лишь вопрос времени. | |
|
|
|
|
|
|
|
для: Boss
(14.08.2005 в 17:16)
| | Но все же можно ведь как то! | |
|
|
|
|
|
|
|
для: Alexneo
(14.08.2005 в 17:30)
| | Причем если данные помещены с помощью addslashes. то извлекать надо с stripslashes | |
|
|
|
|
|
|
|
для: Boss
(14.08.2005 в 17:16)
| | Помоему достаточно сделать так:
<?
$data = $_POST['data'];
if(!get_magic_quotes_gpc())
$data = mysql_escape_string($data);
?>
|
А после извлечения из БД нужно пропустить через htmlCpecialChars. На мой взгляд этого будет достаточно, чтобы предотвратить SQL - инъекцию. | |
|
|
|
|
|
|
|
для: Евгений Петров
(14.08.2005 в 17:35)
| | хм...а если в базу будут переданы данные....вот такого вида:
Alexneo'UNION | |
|
|
|
|
|
|
|
для: Alexneo
(15.08.2005 в 18:13)
| | Эта строка будет преобразована в
Alexneo\'UNION | |
|
|
|