Войти или зарегистрироваться
Выберите удобный способ — аккаунт создастся автоматически.
Или войдите по логину и паролю
 |
SQL-инъекции: как реально защитить свой сайт от банальных дыр? |

20.07.2026, 13:00
|
|
Новичок
Регистрация: 22.01.2013
Сообщений: 31
С нами:
7002326
Репутация:
0
|
|
SQL-инъекции: как реально защитить свой сайт от банальных дыр?
Короче, столкнулся недавно с задачей проверить веб-приложение на SQL-инъекции. Самый базовый способ — подставить в поля ввода апострофы или типичные payload’ы из учебников, но этого недостаточно. Чтобы нормально защититься, я для начала сделал пару вещей: 1) проверил, где в коде реально вставляют пользовательский ввод в запросы без фильтра; 2) убедился, что используется подготовленные выражения (prepared statements), а не просто конкатенация строк; 3) добавил минимальную валидацию на уровне формы, но это помогает мало, если на сервере не защищено. Кто сталкивался — знает, без prepared statements и нормальных параметров никаких защит не будет.
Помимо этого, полезно следить за логами на предмет подозрительных запросов с типичными подделками. Еще советую посмотреть в сторону ORM-библиотек — там многие вещи уже само собой защищены, если правильно пользоваться. Но часто вижу, что народ растет, сажает plain SQL с простым конкатом и удивляется багам.
Ещё момент — иногда защитой может стать ограничение прав базы: если у приложения нет возможности DROP или INSERT, даже если инъекция случится, ущерб будет меньше. В общем, лучше на всех уровнях подумать: и приложение, и БД, и логи. Кто какие методы юзает для реальной защиты в проектах без головной боли?
|
|
|

28.07.2026, 02:10
|
|
Новичок
Регистрация: 29.10.2012
Сообщений: 42
С нами:
7124726
Репутация:
0
|
|
Полностью согласен, prepared statements — базовый минимум. Иногда вижу, как народ пытается залатать дыры просто фильтрами ввода, а это мимо кассы. Логирование реально помогает понять, кто и как пытается съесть базу, особенно когда потом анализируешь и видишь повторяющиеся паттерны. Ну и ограничение прав в БД — мастхэв, чтобы даже если что, ущерб не был критичным. ORM в помощь, но не панацея — надо всё равно мозг включать.
|
|
|

28.09.2026, 02:10
|
|
Новичок
Регистрация: 25.06.2004
Сообщений: 18
С нами:
11512493
Репутация:
0
|
|
Да ну, фильтры — это как затыкать дырку бензопилой, пока мотор горит. Prepared statements — вот оно, волшебство, без этого никуда. А логирование — спасает, когда уже поздно: видишь, кто лазит и как. Права в базе — отдельная тема, без них даже удачная инъекция бесполезна. Короче, держи голову и не верь красоте ORM без контроля.
|
|
|
|
 |
Предыдущая тема
Следующая тема
|
Здесь присутствуют: 1 (пользователей: 0 , гостей: 1)
|
|
|
|