- Поисковые системы
- Практика оптимизации
- Трафик для сайтов
- Монетизация сайтов
- Сайтостроение
- Социальный Маркетинг
- Общение профессионалов
- Биржа и продажа
- Финансовые объявления
- Работа на постоянной основе
- Сайты - покупка, продажа
- Соцсети: страницы, группы, приложения
- Сайты без доменов
- Трафик, тизерная и баннерная реклама
- Продажа, оценка, регистрация доменов
- Ссылки - обмен, покупка, продажа
- Программы и скрипты
- Размещение статей
- Инфопродукты
- Прочие цифровые товары
- Работа и услуги для вебмастера
- Оптимизация, продвижение и аудит
- Ведение рекламных кампаний
- Услуги в области SMM
- Программирование
- Администрирование серверов и сайтов
- Прокси, ВПН, анонимайзеры, IP
- Платное обучение, вебинары
- Регистрация в каталогах
- Копирайтинг, переводы
- Дизайн
- Usability: консультации и аудит
- Изготовление сайтов
- Наполнение сайтов
- Прочие услуги
- Не про работу
Переиграть и победить: как анализировать конкурентов для продвижения сайта
С помощью Ahrefs
Александр Шестаков
Авторизуйтесь или зарегистрируйтесь, чтобы оставить комментарий
Вопрос к действительно понимающим людям. Пишу один самописный движек, и конечно же, нет уверенности в том, что в него не закрались дыры.
Поэтому я решил построить безопасность просто: сделать белый список, а не заморачиваться с написанием фильтрации входных параметров. Попросту говоря, сделать так, что будут разрешаться только запросы, содержащие в URL (и переменных на запросах в базу) только значения из диапазона 0-9 и A-Z.
Все остальные символы - запрос не выполняется и логируется.
Комментарии & предложения?
Ну если действительно у вас лишь 0-9 и A-Z то делайте.
Но вообще если у вас Mod_rewrite то это можете там указать и он не пропустит другие.
Эт чего за движок-то такой, где только A-Z и 0-9? 😂
Что, никаких текстов писать в базу не планируете? :)
Не забывайте, что кроме как через GET у Вас ещё через POST, COOKIE, а в ряде случаев и через SESSION может проникнуть всякое )
Фильтровать разумнее непосредственно на входе - то есть перед запросами.
Если Вы хотите как-то систематизировать это, то лучше систематизировать эти самые запросы организовав определенную модель с обработчиками, методы которой уже будут безопасными.
Используйте подготовленные выражения для запросов.
откажитесь от SQL и не будет инъекций.
Научиться писать правильные SQL запросы совсем не сложно, тем более если это php, где всё обсасывалось 100 раз. Если вы хорошо понимайте теорию баз данных, то вникнуть можно за час.
Если это php:
Для чисел на входе всегда intval().
Для строк mysql_real_escape_string(), magic_quotes строго off.
Всё, вы знайте основную информацию, которая спасёт от 70-80% sql-inj атак, если нигде отфильтровать не забудете.
Писать фильтры - полный бред. Есть коммерческие WAF (фаерволы для веб приложений) в которых бывает до 60к правил и даже там людям удаётся найти обходы :)
Другое дело что, помимо иньекций, есть ещё как минимум пару векторов атак, например LFI, RCE, XSS, CSRF и т.д., а вы в SQL-inj упёрлись да ещё и кривым способом :)