СМС-ки
   
Пейджер выключен!
Страницы: (4) 1 2 [3] 4  ( Перейти к первому непрочитанному сообщению ) Ответ в темуСоздание новой темыСоздание опроса

> Мой первый проект )), оцените
arvitaly  
Дата
Цитировать сообщение
Offline



Благотворец
******

Профиль
Журнал
Группа: Форумчанин
Завсегдатай форума
Сообщений: 841
Пользователь №: 23302
На форуме: 2 месяца, 23 дня
Репутация: +24/-2

Трезвый :
23 года, 1 месяц, 26 дней


$id= '1 union select * from users';
$result=mysql_query("select * from users where user_id=" . mysql_real_escape_string($id) . "");

Цитата
В смысле, чтоб не было возможности провести MySQL-инъекцию


ОПять таки дайте определение MySQL-инъекцие


--------------------
Казань: путеводитель, гостиницы, афиша, новости, транспорт
PMПисьмо на e-mail пользователюСайт пользователя
Для быстрого поиска похожих сообщений выделите 1-2 слова в тексте и нажмите сюда Для быстрой цитаты из этого сообщения выделите текст и нажмите сюда
Invis1ble  
 ۩  Дата
Цитировать сообщение
Offline



Кофейник
******

Профиль
Журнал
Группа: Форумчанин
Завсегдатай форума
Сообщений: 461
Пользователь №: 23195
На форуме: 3 месяца, 1 день
Репутация: +10/-1

Трезвый :
1 год, 2 месяца


arvitaly
Цитата
ОПять таки дайте определение MySQL-инъекцие

MySQL-инъекция - страшная хрень, состоящая из определенного набора символов, которую вводит злой хацкер с целью навредить ресурсу (украсть данные, удалить данные, попортить их структуру и т.п.), и нарушающая в итоге логику SQL-запроса..
как-то так biggrin.gif


--------------------
Всё приходит с опытом...

Если у Вас выдалась свободная минутка - зацените мой первый проект
PMПисьмо на e-mail пользователю
Для быстрого поиска похожих сообщений выделите 1-2 слова в тексте и нажмите сюда Для быстрой цитаты из этого сообщения выделите текст и нажмите сюда
arvitaly  
Дата
Цитировать сообщение
Offline



Благотворец
******

Профиль
Журнал
Группа: Форумчанин
Завсегдатай форума
Сообщений: 841
Пользователь №: 23302
На форуме: 2 месяца, 23 дня
Репутация: +24/-2

Трезвый :
23 года, 1 месяц, 26 дней


Цитата
MySQL-инъекция - страшная хрень, состоящая из определенного набора символов, которую вводит злой хацкер с целью навредить ресурсу (украсть данные, удалить данные, попортить их структуру и т.п.)
как-то так


Правда непонятно куда вводит, ну тогда как видишь mysql_real_escape_string не является абсолютной защитой.
Главное - правильное определение и грамотный вопрос (может он и не возникнет тогда)


--------------------
Казань: путеводитель, гостиницы, афиша, новости, транспорт
PMПисьмо на e-mail пользователюСайт пользователя
Для быстрого поиска похожих сообщений выделите 1-2 слова в тексте и нажмите сюда Для быстрой цитаты из этого сообщения выделите текст и нажмите сюда
Michael  
Дата
Цитировать сообщение
Online



Здесь живет
******

Профиль
Журнал
Группа: Эксперт
Группа переписки
Сообщений: 1689
Пользователь №: 18498
На форуме: 1 год, 2 месяца, 28 дней
Репутация: +43/-2




Цитата (Invis1ble @ 17.10.2010 - 13:46)
Вопрос ко всем: mysql_real_escape_string корректно обрабатывает любые запросы?

Тут читай
PMICQ
Для быстрого поиска похожих сообщений выделите 1-2 слова в тексте и нажмите сюда Для быстрой цитаты из этого сообщения выделите текст и нажмите сюда
Invis1ble  
 ۩  Дата
Цитировать сообщение
Offline



Кофейник
******

Профиль
Журнал
Группа: Форумчанин
Завсегдатай форума
Сообщений: 461
Пользователь №: 23195
На форуме: 3 месяца, 1 день
Репутация: +10/-1

Трезвый :
1 год, 2 месяца


Michael
читал уже два раза, сейчас третий перечитал - изменений не обнаружил по сравнению с прошлым разом.
очень хорошая статья, но twin упоминает только об апострофах, но про -- , /* и ; ничего там не сказано.. Хотя ; я так понимаю в mysql не катит, а вот что насчет комментариев (-- , /* */) ? Потому как паранойя у меня (надеюсь здоровая)...


--------------------
Всё приходит с опытом...

Если у Вас выдалась свободная минутка - зацените мой первый проект
PMПисьмо на e-mail пользователю
Для быстрого поиска похожих сообщений выделите 1-2 слова в тексте и нажмите сюда Для быстрой цитаты из этого сообщения выделите текст и нажмите сюда
DmitryOpalev  
Дата
Цитировать сообщение
Online



Здесь живет
******

Профиль
Журнал
Группа: Форумчанин
Завсегдатай форума
Сообщений: 277
Пользователь №: 23907
На форуме: 1 месяц, 13 дней
Репутация: +3/-0




А почему ; не катит?


--------------------
Цитата
Лучше беребздеть, чем недобздеть
PMПисьмо на e-mail пользователюСайт пользователяICQ
Для быстрого поиска похожих сообщений выделите 1-2 слова в тексте и нажмите сюда Для быстрой цитаты из этого сообщения выделите текст и нажмите сюда
Invis1ble  
 ۩  Дата
Цитировать сообщение
Offline



Кофейник
******

Профиль
Журнал
Группа: Форумчанин
Завсегдатай форума
Сообщений: 461
Пользователь №: 23195
На форуме: 3 месяца, 1 день
Репутация: +10/-1

Трезвый :
1 год, 2 месяца


DmitryOpalev
потому как не прокатывают запросы такого вида, насколько я знаю
SELECT * FROM `table`; DELETE FROM `table`

хотя может я и ошибаюсь... В общем, ждем комментарии от экспертов по этому поводу


--------------------
Всё приходит с опытом...

Если у Вас выдалась свободная минутка - зацените мой первый проект
PMПисьмо на e-mail пользователю
Для быстрого поиска похожих сообщений выделите 1-2 слова в тексте и нажмите сюда Для быстрой цитаты из этого сообщения выделите текст и нажмите сюда
DmitryOpalev  
Дата
Цитировать сообщение
Online



Здесь живет
******

Профиль
Журнал
Группа: Форумчанин
Завсегдатай форума
Сообщений: 277
Пользователь №: 23907
На форуме: 1 месяц, 13 дней
Репутация: +3/-0




А насколько я знаю, так можно делать biggrin.gif
Хотя, никогда так не делал, кто знает blink.gif


--------------------
Цитата
Лучше беребздеть, чем недобздеть
PMПисьмо на e-mail пользователюСайт пользователяICQ
Для быстрого поиска похожих сообщений выделите 1-2 слова в тексте и нажмите сюда Для быстрой цитаты из этого сообщения выделите текст и нажмите сюда
kirik  
Дата
Цитировать сообщение
Offline



Жадный квантификатор
******

Профиль
Журнал
Группа: Эксперт
***
Группа переписки
Сообщений: 4228
Пользователь №: 4795
На форуме: 2 года, 6 месяцев, 16 дней
Репутация: +14/-1




Цитата (Invis1ble @ 17.10.2010 - 09:43)
потому как не прокатывают запросы такого вида

На сколько я помню не прокатят со стандартным phpшным расширением mysql. Расширения mysqli и postgre вроде отрабатывают.


--------------------
The Internet is for Pron.
PMСайт пользователя
Для быстрого поиска похожих сообщений выделите 1-2 слова в тексте и нажмите сюда Для быстрой цитаты из этого сообщения выделите текст и нажмите сюда
Invis1ble  
 ۩  Дата
Цитировать сообщение
Offline



Кофейник
******

Профиль
Журнал
Группа: Форумчанин
Завсегдатай форума
Сообщений: 461
Пользователь №: 23195
На форуме: 3 месяца, 1 день
Репутация: +10/-1

Трезвый :
1 год, 2 месяца


Вот откопал цитату из книжки, по которой я учусь (Д.Котеров, А.Костарев. PHP 5 в подлиннике.)
Цитата
За один вызов mysql_query() можно выполнить только одну команду MySQL. В некоторых других языках программирования, а также в интерфейсе командной строки сервера MySQL...  ...разрешено использование сразу нескольких команд, разделенных точкой с запятой, однако в PHP данный способ не работает.


--------------------
Всё приходит с опытом...

Если у Вас выдалась свободная минутка - зацените мой первый проект
PMПисьмо на e-mail пользователю
Для быстрого поиска похожих сообщений выделите 1-2 слова в тексте и нажмите сюда Для быстрой цитаты из этого сообщения выделите текст и нажмите сюда
Invis1ble  
 ۩  Дата
Цитировать сообщение
Offline



Кофейник
******

Профиль
Журнал
Группа: Форумчанин
Завсегдатай форума
Сообщений: 461
Пользователь №: 23195
На форуме: 3 месяца, 1 день
Репутация: +10/-1

Трезвый :
1 год, 2 месяца


kirik
А что насчет комментариев? Не подскажешь?


--------------------
Всё приходит с опытом...

Если у Вас выдалась свободная минутка - зацените мой первый проект
PMПисьмо на e-mail пользователю
Для быстрого поиска похожих сообщений выделите 1-2 слова в тексте и нажмите сюда Для быстрой цитаты из этого сообщения выделите текст и нажмите сюда
kirik  
Дата
Цитировать сообщение
Offline



Жадный квантификатор
******

Профиль
Журнал
Группа: Эксперт
***
Группа переписки
Сообщений: 4228
Пользователь №: 4795
На форуме: 2 года, 6 месяцев, 16 дней
Репутация: +14/-1




Цитата (Invis1ble @ 17.10.2010 - 10:19)
А что насчет комментариев?

Там в чате писал уже.
Люди, читайте чаще php.net там все написано (а если не все в тексте, то в комментах точно будет). Смотрим mysql_real_escape_string():
Цитата (http://php.net/manual/en/function.mysql-real-escape-string.php)
mysql_real_escape_string() calls MySQL's library function mysql_real_escape_string, which prepends backslashes to the following characters: \x00, \n, \r, \, ', " and \x1a.

Тоесть эта функция экранирует только символы \x00 (злостный нуллбайт), \n (перенос строки), \r (возврат каретки), \ (обратный слэш), ' (апостроф), " (кавычка) и \x1a (че-то). На все остальные символы ей глубоко наплевать.

А по поводу коммента. Прикинем логически: если у нас запрос:
SELECT * .... WHERE `id` = $_GET[id]

то тут конечно коммент станет частью SQL запроса, пройдет и отработается mysql'ом. Но стоит заключить переменную в апострофы:
SELECT * .... WHERE `id` = '$_GET[id]'

как опасный коммент станет лишь текстом для SQL и база не обратит на него никакого внимания. (это же верно и для -- и для ;)


--------------------
The Internet is for Pron.
PMСайт пользователя
Для быстрого поиска похожих сообщений выделите 1-2 слова в тексте и нажмите сюда Для быстрой цитаты из этого сообщения выделите текст и нажмите сюда
twin  
Дата
Цитировать сообщение
Online



Глухой нуб
******

Профиль
Журнал
Группа: Эксперт
**
Группа переписки
Сообщений: 7035
Пользователь №: 6543
На форуме: 2 года, 21 день
Репутация: +74/-1




Invis1ble
Цитата
но twin упоминает только об апострофах, но про -- , /* и ; ничего там не сказано..

Там много о чем не сказано... Ты вот увидел, что комментариями можно накуралесить и паника. А я вот тебе еще сейчас подкину:
' OR 1='1

И еще много чего есть... Если будешь циклиться на каждом частном случае - жизни не хватит.

Главное правильно обработать данные, тогда можно не думать об этих опасностях.
Как - я написал в статье. И поверь, этого достаточно.


--------------------
Спорно конечно, но попробуйте почитать это.
Может тогда вопросы пропадут сами по себе.

И еще, уважайте отвечающих. Пишите листинг читабельно. Кто не хочет или не умеет, пользуйтесь хотя бы этим
PMСайт пользователяICQ
Для быстрого поиска похожих сообщений выделите 1-2 слова в тексте и нажмите сюда Для быстрой цитаты из этого сообщения выделите текст и нажмите сюда
Invis1ble  
 ۩  Дата
Цитировать сообщение
Offline



Кофейник
******

Профиль
Журнал
Группа: Форумчанин
Завсегдатай форума
Сообщений: 461
Пользователь №: 23195
На форуме: 3 месяца, 1 день
Репутация: +10/-1

Трезвый :
1 год, 2 месяца


twin
спасибо, в принципе я все обрабатываю, как ты описывал. Просто тут товарищ один подал повод для паники, а у тебя там не было указано про комменты - вот я и выпал на измену... smile.gif


--------------------
Всё приходит с опытом...

Если у Вас выдалась свободная минутка - зацените мой первый проект
PMПисьмо на e-mail пользователю
Для быстрого поиска похожих сообщений выделите 1-2 слова в тексте и нажмите сюда Для быстрой цитаты из этого сообщения выделите текст и нажмите сюда
arvitaly  
Дата
Цитировать сообщение
Offline



Благотворец
******

Профиль
Журнал
Группа: Форумчанин
Завсегдатай форума
Сообщений: 841
Пользователь №: 23302
На форуме: 2 месяца, 23 дня
Репутация: +24/-2

Трезвый :
23 года, 1 месяц, 26 дней


Цитата
Но стоит заключить переменную в апострофы:


Не надо этого делать. В базе храниться число и сравнивать его нужно с числом, а не пихать апострофы из за боязни.


--------------------
Казань: путеводитель, гостиницы, афиша, новости, транспорт
PMПисьмо на e-mail пользователюСайт пользователя
Для быстрого поиска похожих сообщений выделите 1-2 слова в тексте и нажмите сюда Для быстрой цитаты из этого сообщения выделите текст и нажмите сюда
1 Пользователей читают эту тему (1 Гостей и 0 Скрытых Пользователей)
0 Пользователей:

  Быстрый ответ
Информация о Госте
Введите Ваше имя
Кнопки кодов
Для вставки цитаты, выделите нужный текст и
НАЖМИТЕ СЮДА
Введите сообщение
Смайлики
:huh:  :o  ;) 
:P  :D  :lol: 
B)  :rolleyes:  <_< 
:)  :angry:  :( 
:unsure:  :blink:  :ph34r: 
     
Показать всё

Опции сообщения  Включить смайлики?
 Включить подпись?
 
Опции темыСтраницы: (4) 1 2 [3] 4  Ответ в темуСоздание новой темыСоздание опроса