| |
|
|
| | Здравствуйте у меня вопрос по поводу 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 | |
| |
|
|