- Поисковые системы
- Практика оптимизации
- Трафик для сайтов
- Монетизация сайтов
- Сайтостроение
- Социальный Маркетинг
- Общение профессионалов
- Биржа и продажа
- Финансовые объявления
- Работа на постоянной основе
- Сайты - покупка, продажа
- Соцсети: страницы, группы, приложения
- Сайты без доменов
- Трафик, тизерная и баннерная реклама
- Продажа, оценка, регистрация доменов
- Ссылки - обмен, покупка, продажа
- Программы и скрипты
- Размещение статей
- Инфопродукты
- Прочие цифровые товары
- Работа и услуги для вебмастера
- Оптимизация, продвижение и аудит
- Ведение рекламных кампаний
- Услуги в области SMM
- Программирование
- Администрирование серверов и сайтов
- Прокси, ВПН, анонимайзеры, IP
- Платное обучение, вебинары
- Регистрация в каталогах
- Копирайтинг, переводы
- Дизайн
- Usability: консультации и аудит
- Изготовление сайтов
- Наполнение сайтов
- Прочие услуги
- Не про работу
В 2023 году Google заблокировал более 170 млн фальшивых отзывов на Картах
Это на 45% больше, чем в 2022 году
Оксана Мамчуева
Все что нужно знать о DDоS-атаках грамотному менеджеру
И как реагировать на "пожар", когда неизвестно, где хранятся "огнетушители
Антон Никонов
Авторизуйтесь или зарегистрируйтесь, чтобы оставить комментарий
В качестве защиты от инъекций многие рекомендуют контроль типов данных перед записью в базу данных, отсев множественных запросов и т.д. Это абсолютно необязательно. Во-первых, MySQL не выполняет никаких множественных запросов функцией mysql_query(). Это заблуждение. phpMyAdmin сам разбивает запросы на несколько. Правило должно быть такое. Все названия полей писать в косых кавычках (`), все данные, даже числовые, писать в одинарных кавычках ('). Сами запросы в php вписывать в двойные кавычки ("). А защита от инъекций пишется в начале общего файла, типа include_all.php:
Конструкция Unset($v) обязательна, т.к. php сохраняет ссылку на переменную и после цикла. И если мы потом напишем $v=1;, то последняя переменная, например, $_COOKIE['user'] станет равна единице.
Конструкция $$k=$v создает переменные, например, из $_COOKIE['user'] создаст $user.
Конструкция if ((strpos($k, '_SERVER') === false) && (strpos($k, '_SESSION') === false)) предотвращает подстановку ложных значений при использовании $$k=$v.
При использовании этой вставки сайт взломать НЕВОЗМОЖНО!
Источник:
http://proksey-net.livejournal.com/942.html
Если понравилось, голосуйте в ЖЖ
Делюсь лучшей защитой от SQL-инъекций: используйте современный PHP фреймворк.
PDO
тоже вариант.
Тут вообще связи не улавливаю.
Конструкция Unset($v) обязательна, т.к. php сохраняет ссылку на переменную и после цикла. И если мы потом напишем $v=1;, то последняя переменная, например, $_COOKIE['user'] станет равна единице.
Посмеялся, если бы это действительно было так ,то Unset($v) удалял бы $_COOKIE['user'] :)
Конструкция $$k=$v создает переменные, например, из $_COOKIE['user'] создаст $user.
А зачем? Если уже есть $_COOKIE['user'], зачем еще переменную создавать? Что бы память кушала?
При использовании этой вставки сайт взломать НЕВОЗМОЖНО!
А если $_COOKIE['user'] или $_POST['user'] является массивом? И в этом массиве возможна инъекция, а Ваша мега защита это пропускает, хотя даже не пропускает, а делает с массива строку ,в общем использование такого скрипта - добавляет гемора и ни отчего не защищает :)
При использовании этой вставки сайт взломать НЕВОЗМОЖНО!
Ага, как же
Особенно такой замене порадуются на украинских сайтах, использующих апостров)
Особенно такой замене порадуются на украинских сайтах, использующих апостров)
как раз это хотел написать. с автора поржал 😂
ТС, что значит mysql_query не делает множество запросов?
Если у этого юзера есть привелегии на UNION, то зловред может сделать объединение запросов(как на многих хакерских форумах учат).
И скажу Вам по секрету, такая конструкция может работать:
2 запроса удачно выполнятся. Но что сделать для этого надо, я Вам не скажу;)
proksey-net, это не защита а УГ. Тогда уж лучше это /ru/forum/774368