ANTICHAT.XYZ    VIDEO.ANTICHAT.XYZ    НОВЫЕ СООБЩЕНИЯ    ФОРУМ  
Баннер 1   Баннер 2
Antichat снова доступен.
Форум Antichat (Античат) возвращается и снова открыт для пользователей. Здесь обсуждаются безопасность, программирование, технологии и многое другое. Сообщество снова собирается вместе.
Новый адрес: forum.antichat.xyz
Вернуться   Форум АНТИЧАТ > Программирование > PHP, PERL, MySQL, JavaScript
   
Ответ
 
Опции темы Поиск в этой теме Опции просмотра

Статья про защиту от SQL-inj
  #1  
Старый 05.01.2007, 20:01
Аватар для nerezus
nerezus
Pagan Heart
Регистрация: 12.08.2004
Сообщений: 3,791
Провел на форуме:
6490435

Репутация: 2290


Отправить сообщение для nerezus с помощью ICQ
Post Статья про защиту от SQL-inj

Статья про защиту от SQL-inj

Что такое SQL-inj?
Сам знаешь. Иначе бы не читал. Так что сиди и читай дальше ;)

Как проводятся SQL-inj?
Вбивай в гугл и ищи статьи всяких разных хакеров. Если искать не умеешь - то дальше не читай, все равно не поймешь.

Как защититься?
Что, нагуглил статей? Может и про защиту написано?
Какие-нибудь леменги вроде Михуила Фленова. фильтровать советуют? Шли нах.
Ничего, повторяю еще раз для альтернативно-одаренных: НИЧЕГО фильтровать не надо. СУБД - на то она и СУБД, а не херня какая-то, чтобы нормально любые данные принимать.
Наша задача - просто правильно эти данные преподнести.
Защищаться надо так(применительно к PHP и mysql):
1) Если поле в базе числовое, то: (int) (ну или intval()). Можно по модулю взять при использовании в LIMIT, но это не секурити-дырка.
2) Если текстовое, то просто mysql_real_escape_string()
3) Всякие magic quotes и подобные затычки отключены. Кто не отключил - ССЗБ(что это означает - смотрите на LOR'е)
И ВСЕ! Больше ничего не надо. Ибо запрос испортить левыми данными нельзя.
Повторю еще раз: НИКАКИХ ФИЛЬТРАЦИЙ.
LIKE/RLIKE/AGAINST/etc - это частный случай, и рассматривается отдельно.
Примера не будет. Если не понял - значит это тебе не надо.

ORM
Что это такое, написано здесь: http://ru.wikipedia.org/wiki/ORM
Защита от SQL-inj - это побочный результат применения данной технологии.

Что касательно защиты от XSS, то никаким образом к БД это не относится.
Так что те, кто хотел это все объединить в 1 функцию(да к тому же и с проверкой) - идите лесом. Это кардинально разные вещи и они друг к другу не относятся.

И да пребудет с вами сила(не со всеми)!

nerezus, 5.01.07-2.01.08

Последний раз редактировалось nerezus; 02.01.2008 в 16:13..
 
Ответить с цитированием

  #2  
Старый 05.01.2007, 20:22
Аватар для max_pain89
max_pain89
Постоянный
Регистрация: 11.12.2004
Сообщений: 592
Провел на форуме:
2260903

Репутация: 345


По умолчанию

хм довольно странный, даже не статья, а пост.

В защиту magic quotes скажу что если ставишь двиг, не собственно ручно написаный, смысла отключать не вижу, больше риск.
 
Ответить с цитированием

  #3  
Старый 05.01.2007, 21:06
Аватар для nerezus
nerezus
Pagan Heart
Регистрация: 12.08.2004
Сообщений: 3,791
Провел на форуме:
6490435

Репутация: 2290


Отправить сообщение для nerezus с помощью ICQ
По умолчанию

Я сначала хотел что-то из строчек восьми написать )
Но написал больше.
Причина - тема http://forum.antichat.ru/thread30506.html

Ну а чтьо касается magic quotes - то нефиг юзать кривые движки
 
Ответить с цитированием

  #4  
Старый 05.01.2007, 21:28
Аватар для blaga
blaga
Постоянный
Регистрация: 23.03.2006
Сообщений: 977
Провел на форуме:
2976185

Репутация: 694


Отправить сообщение для blaga с помощью ICQ
По умолчанию

intval() например при -12 выводит -12. Это не дырка? А вот насчет mysql_real_escape_string() это ты в точку! Нхрена писать невпупенные функции когда можно одной строчкой обойтись.
 
Ответить с цитированием

  #5  
Старый 05.01.2007, 21:39
Аватар для nerezus
nerezus
Pagan Heart
Регистрация: 12.08.2004
Сообщений: 3,791
Провел на форуме:
6490435

Репутация: 2290


Отправить сообщение для nerezus с помощью ICQ
По умолчанию

Цитата:
intval() например при -12 выводит -12. Это не дырка?
Я даже приписал:
"Можно по модулю взять в LIMIT, но это не секурити-дырка."
 
Ответить с цитированием

  #6  
Старый 05.01.2007, 21:40
Аватар для blaga
blaga
Постоянный
Регистрация: 23.03.2006
Сообщений: 977
Провел на форуме:
2976185

Репутация: 694


Отправить сообщение для blaga с помощью ICQ
По умолчанию

Извини, пойду лучше учебник по скулю почитаю.
 
Ответить с цитированием

  #7  
Старый 05.01.2007, 21:49
Аватар для _Great_
_Great_
Флудер
Регистрация: 27.12.2005
Сообщений: 2,372
Провел на форуме:
5339610

Репутация: 4360


Отправить сообщение для _Great_ с помощью ICQ
По умолчанию

Цитата:
intval() например при -12 выводит -12. Это не дырка?
не-а =)
 
Ответить с цитированием

  #8  
Старый 05.01.2007, 22:10
Аватар для Zadoxlik
Zadoxlik
Постоянный
Регистрация: 28.02.2005
Сообщений: 853
Провел на форуме:
3369632

Репутация: 749


По умолчанию

Это все ясно, только ты не раскрыл тему=) Например при Selectе с Like надо экранировать еще пару символов, хотя логика очень здравая и самому ни раз мысль такая приходила при прочтении описаний разного рода фильтраций =)

Последний раз редактировалось Zadoxlik; 05.01.2007 в 22:12.. Причина: русский язык не говорить
 
Ответить с цитированием

  #9  
Старый 06.01.2007, 00:15
Аватар для guest3297
guest3297
Banned
Регистрация: 27.06.2006
Сообщений: 1,614
Провел на форуме:
3887520

Репутация: 2996


По умолчанию

А если админы эту статью прочитают ведь все sql иньекции закроют?
Статью в приват!
 
Ответить с цитированием

  #10  
Старый 06.01.2007, 06:44
Аватар для blaga
blaga
Постоянный
Регистрация: 23.03.2006
Сообщений: 977
Провел на форуме:
2976185

Репутация: 694


Отправить сообщение для blaga с помощью ICQ
По умолчанию

2[ cash ], тебя как самого умного в подполье работать на сопротивление.
 
Ответить с цитированием
Ответ



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Обнаружение Sql инъекций в Oracle, часть вторая k00p3r Чужие Статьи 0 13.06.2005 11:26
Sql инъекция и Oracle, часть первая k00p3r Чужие Статьи 0 13.06.2005 11:23
Внедрение Sql кода с завязанными глазами k00p3r Чужие Статьи 0 12.06.2005 20:48
SQL Injection в Oracle k00p3r Чужие Статьи 0 12.06.2005 12:41



Здесь присутствуют: 1 (пользователей: 0 , гостей: 1)
 


Быстрый переход




ANTICHAT.XYZ