[ Поиск ] - [ Пользователи ] - [ Календарь ]
Полная Версия: Обсуждение темы безопасности
Страницы: 1, 2, 3, 4, 5, 6, 7, 8, 9
Pinoplast
PHP
$res mysql_query("SELECT * FROM `table` WHERE login='"$login ."'");
Вроде бы всё в порядкепеременная $login обрамлена апострофамиа значит все что есть в нейне может попасть в тело запросаТо есть такой запрос не страшен:

PHP
$res mysql_query("SELECT * FROM `table` WHERE `login`='my DELETE  FROM `table` '");

Потому что жуткая команда на удаление будет записана в ячейку таблицы и ничем навредить не сможет. Так что всегда обрамляйте литеральные константы (текстовые данные) в запросе апострофами.
Но. Другое дело, если сделать как то так:


А всегда ли это делать или когда переменая беретьс из строк или при пересылкем методом POST и GET?

А если просто запрос на вывод на страницу статистики, или картинки нужнол и это делать?
twin
Всегда.
Даже тогда, когда данные берутся не из POST и GET. Допустим такой вариант - в базе записан текст, берем из одной таблицы и вставляем в другую. Если в тексте есть апострофы - как минимум будет ошибка, как максимум инъекция. По этому нельзя совать в базу необработанный текст.
Вообще нельзя.

_____________
Если вам недостаточно собственных заблуждений, можно расширить их мнениями экспертов.

Нужно уважать мнение оппонета. Ведь заблуждаться - его святое право.

Настаивал, настаиваю и буду настаивать на своем. На кедровых орешках.

user posted image
Pinoplast
А как луше обрабатывать в самом запросе в селекте или через переменую? выше запроса, или разницы нет просто кода больше?
Pinoplast
И еще вопрос если в базе есть таблица1 и таблица2 то я так понял если хоть одна таблица открыта под угрозой все?
bret
Цитата (Pinoplast @ 2.11.2009 - 17:21)
А как луше обрабатывать в самом запросе в селекте или через переменую? выше запроса, или разницы нет просто кода больше?

На мой взгляд, лучше сделать специальныю функцию, которая будеть чистить в отправляем тексте всё подозрительное (например, всё, что не буквы и не цифры) - лучше лишний раз перепараноиться и зарезать безобидный текст, чем не учесть нестандартное использование нестандартных символов

_____________
Бывает, ты ешь медведя, а бывает, что медведь ест тебя (с)
twin
Ну и получаются в итоге смешные и глупые сайты, в которых нельзя пользоваться знаками препинания, нельзя писать формулы, такие например: a > b + c, вообще ничего нельзя, только буквы и цифры.
Полная чушь.

_____________
Если вам недостаточно собственных заблуждений, можно расширить их мнениями экспертов.

Нужно уважать мнение оппонета. Ведь заблуждаться - его святое право.

Настаивал, настаиваю и буду настаивать на своем. На кедровых орешках.

user posted image
bret
twin
Т.е. ты считаешь, что проще зарубить все опасные символы, чем разрешить все безопасные? Дай список всех опасных символов, потому как видел примеры только с кавычкой, а по факту хакерский мозг может быть куда изобретательней sad.gif


_____________
Бывает, ты ешь медведя, а бывает, что медведь ест тебя (с)
twin
Почитай внимательно первый пост. Я именно с этого и начал тему.
Тут важно разобраться в механизмах, тогда не станет страшно. Ведь пугает неизвестность, а вовсе не символы. Нет опасных символов.

_____________
Если вам недостаточно собственных заблуждений, можно расширить их мнениями экспертов.

Нужно уважать мнение оппонета. Ведь заблуждаться - его святое право.

Настаивал, настаиваю и буду настаивать на своем. На кедровых орешках.

user posted image
twin
Дописал чуток про файлы, в следующий раз про формы напишу.
А то достали грабители smile.gif

_____________
Если вам недостаточно собственных заблуждений, можно расширить их мнениями экспертов.

Нужно уважать мнение оппонета. Ведь заблуждаться - его святое право.

Настаивал, настаиваю и буду настаивать на своем. На кедровых орешках.

user posted image
Pinoplast
Твини про защиту сесий и куков где моно почитать?
twin
Что ты имеешь ввиду?

_____________
Если вам недостаточно собственных заблуждений, можно расширить их мнениями экспертов.

Нужно уважать мнение оппонета. Ведь заблуждаться - его святое право.

Настаивал, настаиваю и буду настаивать на своем. На кедровых орешках.

user posted image
Pinoplast
ну их че перехватывать нельзя?
twin
Можно. Получить то, что в сессии нельзя, но при определенном стечении обстоятельств можно подменить значение сессии. Куки очень просто перехватываются и их содержимое не такой уж и секрет.
Подробно можно почитать пока в гугле smile.gif попозже распишу.

_____________
Если вам недостаточно собственных заблуждений, можно расширить их мнениями экспертов.

Нужно уважать мнение оппонета. Ведь заблуждаться - его святое право.

Настаивал, настаиваю и буду настаивать на своем. На кедровых орешках.

user posted image
phz
twin Скажи пожалуйста, на сколько такая защита хорошая, я понимаю в ёё неудобстве, но всё же интересно:

AuthType Basic  
AuthName "hello admin"
AuthUserFile /home/sites/shop.ua/public/admin/.htpasswd
require valid-user</span>


Спасибо за статью в первом посте, очень многое дала понять.
twin
Нормальная защита.. Ничем не отличается от любой другой. Тут дело не в защите (по большому счету рзницы нет, как отбиваться, php или аппачем), тут дело в передаче данных. А они передаются одинаково, если это HTTP протокол. Так что тут нужно смотреть на удобство, по надежности они идентичны. Вернее если на php грамотно написана, то идентичны.
Кто не уверен в своих силах, лучше пользоваться аппачем. Но она не очень удобна. А кто уверен - пишет свою.

_____________
Если вам недостаточно собственных заблуждений, можно расширить их мнениями экспертов.

Нужно уважать мнение оппонета. Ведь заблуждаться - его святое право.

Настаивал, настаиваю и буду настаивать на своем. На кедровых орешках.

user posted image
Быстрый ответ:

 Графические смайлики |  Показывать подпись
Здесь расположена полная версия этой страницы.
Invision Power Board © 2001-2024 Invision Power Services, Inc.