| Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате |
| Форум программистов > PHP: Общие вопросы > Что проще и надежней. |
| Автор: Predator199 2.12.2012, 22:22 | ||
Так проверяю на инъекции
Таких строчек скажем 20(разные посты и тд). Скажите что проще и как будит быстрей php читать(какие фильтрации). И в тоже время надежные. |
| Автор: Arantir 2.12.2012, 22:43 |
| Инъекции куда? В базу данных? htmlspecialchars предназначен для вывода HTML-кода на страницу. В частности, для не-выполнения этого кода из, например, комментариев. Для запросов в базу данных следует использовать prepared statements (не в курсе, как на русский красиво перевести). Это надежно. |
| Автор: skyboy 2.12.2012, 22:47 |
это не проверка, а обработка. причем, с вытягиванием из GET'a или POST'a — при том, что обычно GET и POST просто для разных задач и одноименные параметры в них — подозрительно, можешь использовать $_REQUEST как синоним "то ли из $_GET, то ли из $_POST". это раз. htmlspecialchars помогает против XSS, но никак не защищает от SQL-injection. А по контексту не понятно, от какой "инъекции" ты защищаешься. Это два. если ты защищаешься от XSS, то все равно — htmlspecialchars надо применять перед выводом. а не при обработке входных параметров скрипта. иначе, к примеру, будешь по статьям сайта искать не "R&D", а "R&D" и, естественно, поиск ничего не найдет. два с половиной. trim не обязателен в любом случае. это три. |
| Автор: Arantir 2.12.2012, 23:12 |
| Еще должен заметить, что одной функцией от всего вы не спасетесь. Смотрите на свое приложение так, как будто в нем всегда есть где-то дырка о которой вы просто не знаете. И фильтровать желательно по мере потребности, а не в стиле "всенахзаэкранированоитипабезопасно". - Если пользователь при регистрации ввел в логин что-то типа "*&^%$#@", то продолжать что-то с ним делать не имеет смысла. - Если в поле "введите значение от 1 до 5" ввели строку длиннее одного символа, то продолжать что-то с ним делать не имеет смысла. - Если в cookie с unix-меткой последнего визита содержаться буквы, то продолжать что-то с ним делать не имеет смысла. .... |
| Автор: Arantir 3.12.2012, 07:44 | ||
Predator199, например, написать в комментарий:
Не говоря уже о get/post запросах через ajax, которыми можно или положить серв или анти-ддос положит всех юзеров в блек-лист без их ведома. |