Назад | Перейти на главную страницу

Как следует реагировать на продолжающуюся попытку взлома веб-приложения?

У меня проблемы с постоянными согласованными попытками взлома веб-сайта (написанного на php). Основная проблема - попытки sql-инъекции, запущенные на сервере Debian.

Вторичным эффектом проблемы является рассылка или многократная рассылка спама URL-адресами, которые, хотя дыра в безопасности была закрыта, все еще очевидно связаны с попытками взломать сайт и продолжают увеличивать нагрузку на сайт, и поэтому должны быть заблокированы.

Итак, какие меры я могу предпринять, чтобы:

A: блокировать известных злоумышленников / известные атакующие машины (в частности, анонимность через ботнет или ретрансляционные серверы), чтобы их повторный, непрерывный, ограниченный по времени доступ не влиял на нагрузку на сайт,

и B: сообщить об атаке и ответить на нее (я знаю, что сообщение в правоохранительные органы почти наверняка бесполезно, как и сообщение на IP / машину, на которой происходят атаки, но другие ответы будут приветствоваться).

По моему опыту, вы мало что можете сделать, кроме как заблокировать оскорбительные IP-адреса. Вероятно, не помешало бы привлечь внешнюю компанию для проведения аудита безопасности, если вы стали регулярной целью и недостатки были обнаружены в прошлом. Для этого мы использовали компанию 7safe.

Если IP-адрес происходит из вашей страны, и попытка взлома оказалась успешной, привлечь полицию - неплохая идея. Здесь, в Великобритании, нам с этим немного повезло.

Сегодня я наблюдал за попытками взлома моего собственного сайта. Излишне говорить, что они ни к чему не привели! Но взлом - это факт жизни в Интернете.

Для варианта А вы можете исследовать mod_security, однако это то, что вам следует тщательно протестировать, сначала в режиме отчетов.

Я предполагаю, что ваше приложение достаточно защищено:

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

И что компьютер, на котором он работает, полностью исправлен, и все несущественные службы отключены.

Кроме того, вы можете рассмотреть возможность запуска базы данных на другом хосте.

По моему опыту, сообщение о поведении владельцу сетевого блока в вежливом электронном письме, хотя и не очень часто эффективно, все же может иметь более удовлетворительный результат, чем полагаться на местные правоохранительные органы или правоохранительные органы злоумышленника. В частности, если они предоставляют адрес для «злоупотреблений».

Просто предоставьте им записи журнала, показывающие проблему (не забудьте предоставить подробную информацию о любых преобразованиях часовых поясов для дат / времени).

Хотя вы можете начать блокировать доступ с этих адресов, вы можете подумать о реализации чего-то вроде fail2ban с помощью автопредставления PHP - поэтому, если вы обнаружите, что кто-то непослушный, вы можете автоматически заблокировать его доступ с помощью брандмауэра ОС.

Мой стандартный ответ на это остается такой же: Вы не можете помешать людям делать плохие вещи в Интернете. Атаки, которые вы видите, несомненно, автоматизированы и широкополосны: они атакуют не ваш сайт, а любой уязвимый сайт в любом месте.

Вы можете потратить огромное количество усилий на преследование «заведомо плохих» хостов, отслеживание потенциальных клиентов, выполнение детективной части; но единственная полезная вещь, которую вы можете сделать, - это защитить свою систему от ее приложения (приложение работает как непривилегированный пользователь, возможно, chrooted, разумные ulimit, обновленное ядро ​​и т. д.), защитить приложение от его пользователей (надежная аутентификация и авторизация, создание SQL-запросов-заполнителей, тестирование на проникновение с помощью инструментов веб-безопасности) и мониторинг успешный попытки несанкционированного доступа.