Warning: Cannot use a scalar value as an array in /home/admin/public_html/forum/include/fm.class.php on line 757

Warning: Invalid argument supplied for foreach() in /home/admin/public_html/forum/include/fm.class.php on line 770

Warning: Invalid argument supplied for foreach() in /home/admin/public_html/forum/topic.php on line 737
Форумы портала PHP.SU :: Защита от sql ing и xss уязвимостей

 PHP.SU

Программирование на PHP, MySQL и другие веб-технологии
PHP.SU Портал     На главную страницу форума Главная     Помощь Помощь     Поиск Поиск     Поиск Яндекс Поиск Яндекс     Вакансии  Пользователи Пользователи


 Страниц (1): [1]   

> Без описания
Edward
Отправлено: 08 Марта, 2011 - 00:16:28
Post Id



Новичок


Покинул форум
Сообщений всего: 19
Дата рег-ции: Нояб. 2010  
Откуда: Украина, Харьков


Помог: 0 раз(а)




Здравствуйте, сейчас делаю сайт, на котором от пользователей будут приниматсья данные при регистрации, при входе в аккаунт, подскажите какими функциями PHP нужно фильтровать данные от ковычек и подобной ерести для защиты от sql инъекций ?

(Отредактировано автором: 08 Марта, 2011 - 00:17:06)

 
 Top
molchun201
Отправлено: 08 Марта, 2011 - 00:18:59
Post Id



Посетитель


Покинул форум
Сообщений всего: 295
Дата рег-ции: Февр. 2011  
Откуда: Менеск


Помог: 5 раз(а)






-----
Обрамляйте код тегами и читайте
 
 Top
Мелкий Супермодератор
Отправлено: 08 Марта, 2011 - 00:23:56
Post Id



Активный участник


Покинул форум
Сообщений всего: 11926
Дата рег-ции: Июль 2009  
Откуда: Россия, Санкт-Петербург


Помог: 618 раз(а)




Если используется в качестве БД mysql, то для защиты от инъекций предназначена функция mysql_real_escape_string.

Для защиты от XSS можно использовать htmlspecialchars и htmlentities


-----
PostgreSQL DBA
 
 Top
koka
Отправлено: 08 Марта, 2011 - 00:25:43
Post Id



Гость


Покинул форум
Сообщений всего: 115
Дата рег-ции: Июнь 2010  
Откуда: Россия, Ижевск


Помог: 1 раз(а)




Edward, от sql инъекций вроде помогает

Ещё, может быть, помогает url rewrite.

Если написать что-то такое,
RewriteRule ^([a-zA-Z]+)/?$ file.php?name=$1 [QSA,L], то вроде в адресную строку уже ввести SQL запрос не получится, а угадать GET переменную может быть сложно...
(Добавление)
Мелкий пишет:
Если используется в качестве БД mysql, то для защиты от инъекций предназначена функция mysql_real_escape_string.

Для защиты от XSS можно использовать htmlspecialchars и htmlentities



Мелкий, а для защиты от XSS обязательно использовать обе функции или можно какую-нибудь одну???


-----
http://rulevoi[dot]net - запчасти для иномарок в Ижевске
 
 Top
Edward
Отправлено: 08 Марта, 2011 - 00:29:50
Post Id



Новичок


Покинул форум
Сообщений всего: 19
Дата рег-ции: Нояб. 2010  
Откуда: Украина, Харьков


Помог: 0 раз(а)




Спасибо всем за ответы, вот например мне приходит в сценарий вот такая штука
PHP:
скопировать код в буфер обмена
  1.  
  2. $login = $_POST['login'];
  3. $login = mysql_real_escape_string($login);
  4. $login = htmlentities($login);
  5.  

да и почему то на этот код ошибку выдает
CODE (htmlphp):
скопировать код в буфер обмена
  1.  
  2. Warning: mysql_real_escape_string() [function.mysql-real-escape-string]: Access denied for user 'ODBC'@'localhost' (using password: NO) in C:\Program Files\VertrigoServ\www\partner\test.php on line 3
  3.  
  4. Warning: mysql_real_escape_string() [function.mysql-real-escape-string]: A link to the server could not be established in C:\Program Files\VertrigoServ\www\partner\test.php on line 3
  5.  

(Отредактировано автором: 08 Марта, 2011 - 00:30:36)

 
 Top
Мелкий Супермодератор
Отправлено: 08 Марта, 2011 - 00:52:30
Post Id



Активный участник


Покинул форум
Сообщений всего: 11926
Дата рег-ции: Июль 2009  
Откуда: Россия, Санкт-Петербург


Помог: 618 раз(а)




koka пишет:
а для защиты от XSS обязательно использовать обе функции или можно какую-нибудь одну???

Одну. Не, можно и обе, конечно, использовать. У них в описании написано, чем они различаются.

Edward пишет:
да и почему то на этот код ошибку выдает

mysql_real_escape_string должен вызываться уже после установки соединения с БД, он в своей работе использует некоторые параметры соединения, такие как кодировка. А если соединения нет, то пытается его создать.


-----
PostgreSQL DBA
 
 Top
DeepVarvar Супермодератор
Отправлено: 08 Марта, 2011 - 01:16:52
Post Id



Активный участник


Покинул форум
Сообщений всего: 10377
Дата рег-ции: Дек. 2008  
Откуда: Альфа Центавра


Помог: 353 раз(а)




Мелкий пишет:
mysql_real_escape_string должен вызываться уже после установки соединения с БД, он в своей работе использует некоторые параметры соединения, такие как кодировка. А если соединения нет, то пытается его создать.

Оппа!!!!!
Спасибочки )))))) Закатив глазки
(Добавление)
mysql_escape_string() такой ошибки не вызывает до подключения и выбора кодировки

(Отредактировано автором: 08 Марта, 2011 - 01:17:10)

 
 Top
Edward
Отправлено: 08 Марта, 2011 - 01:51:54
Post Id



Новичок


Покинул форум
Сообщений всего: 19
Дата рег-ции: Нояб. 2010  
Откуда: Украина, Харьков


Помог: 0 раз(а)




Мелкий, спасибо, буду пробовать завтра на свежую голову.
 
 Top
JustUserR
Отправлено: 08 Марта, 2011 - 15:10:38
Post Id



Активный участник


Покинул форум
Сообщений всего: 8715
Дата рег-ции: Июнь 2009  


Помог: 17 раз(а)




Edward пишет:
Какими функциями PHP нужно фильтровать данные от ковычек и подобной ерести для защиты от sql инъекций
Для осуществления внедрения защиты целевого PHP-приложения от потенциального проведения SQL-запроса на основании передачи специфических информационных полей, необходимо проведение разделения уровня трактования и кодовой таблицы, используемой в процессе перевода информационных полей из слоя вложенного описания константных данных в область производимых ассоциированных действий, основанных на реальной модификации уровня элементного трактования; в качестве конкретных целевых мероприятий для обеспечения предполагаемой безопасности, возможно использование функции mysql_real_escape_string, выполняющей действия по инкрементации уровня вложенности описываемых инфомационных полей относительно разделительных объектов, и выделяемых областей хранения локальных константных данных


-----
Сделать можно все что угодно - нужно только старание, терпение и хороший поисковик Улыбка
Безлимитный web-хостинг от 15 рублей за 40 МБ дискового пространства - http://ihost[dot]oks71[dot]ru/
 
 Top
Страниц (1): [1]
Сейчас эту тему просматривают: 0 (гостей: 0, зарегистрированных: 0)
« Программирование на PHP »


Все гости форума могут просматривать этот раздел.
Только зарегистрированные пользователи могут создавать новые темы в этом разделе.
Только зарегистрированные пользователи могут отвечать на сообщения в этом разделе.
 



Powered by PHP  Powered By MySQL  Powered by Nginx  Valid CSS  RSS

 
Powered by ExBB FM 1.0 RC1. InvisionExBB