Как мне отслеживать потенциальные угрозы моему сайту?
Вопрос
Глядя на нашу DB's
В журнале ошибок мы обнаружили, что существует постоянный поток почти успешных атак с использованием SQL-инъекций.Некоторое быстрое программирование позволило избежать этого, но как я мог настроить монитор как для БД, так и для веб-сервера (включая запросы POST), чтобы проверить это?Под этим я имею в виду, что если существуют готовые инструменты для скрипт-кидди, есть ли готовые инструменты, которые предупредят вас об их внезапном случайном интересе к вашему сайту?
Решение
Как ни странно, у Скотта Генсельмана был опубликовать на UrlScan сегодня это то, что вы могли бы сделать, чтобы отслеживать и минимизировать потенциальные угрозы.Это довольно интересное чтение.
Другие советы
URLScan кажется хорошим вариантом для iis6 и 7;Я также нашел: dotDefender за оплату, которая также включает Apache или IIS 5-7, и я нашел Очистка ISAPI от SQL-инъекций
Также стоит отметить в свете недавней широко распространенной попытки SQL-инъекции, что запретить учетной записи пользователя db вашего веб-приложения запрашивать системные таблицы (в MS SQL Server это системные объекты и системные столбцы) является хорошей идеей.
Я думаю, что эта тема требует больше бесплатных решений для Apache и других веб-серверов.
К сожалению, обнаружение вторжений — это не то, что я имел в виду, поэтому sgfree — это не совсем монитор атак на веб-сайты, если только я не понимаю, как он работает.
Если бы вы могли вернуться и изменить код своего приложения, я бы предложил интегрировать log4j/log4net в приложение.Отсюда вы можете написать код, который будет проверять поле формы или URL-адрес (скажем, на уровне global.asax для приложений .NET) и делать запись в журнале при обнаружении вредоносного кода.
Хорошая особенность log4j/log4net заключается в том, что вы можете настроить приложение типа электронной почты/пейджера/SMS, чтобы, как только вредоносная попытка была обнаружена, вы были уведомлены.
Я нахожусь в процессе объединения некоторого кода log4net с нашей системой CMS и собираюсь сделать это в свете наплыва атак ASPROx, которые происходят на нашем пути.
Мониторинг журналов доступа к сети и базе данных должен предупреждать вас о подобных вещах, но если вам нужна более полнофункциональная система оповещений, я бы предложил какой-нибудь IDS/IPS.Однако вам понадобится запасная машина и коммутатор, который может зеркалировать порты.Если они у вас есть, то IDS — это дешевый способ мониторинга вашего трафика на предмет множества попыток вторжения (их будет много).IDS на базе Snort (www.snort.org) превосходны, и существует несколько бесплатных полностью упакованных версий.Я использовал StrataGuard (http://sgfree.stillsecure.com/), и его можно настроить как IDS (систему обнаружения вторжений) или как IPS (систему предотвращения вторжений).Его можно использовать бесплатно, если ваш трафик не превышает 5 Мбит/с.Если вы все же используете IDS/IPS, я бы посоветовал вам дать ему поработать как простой IDS в течение месяца или около того, прежде чем разрешить ему предотвращать атаки.
Это может быть излишним, но если у вас есть запасная машина, пассивная работа IDS не повредит.
Вы можете настроить свою систему так, чтобы она выдавала какое-либо сообщение об ошибке, которое затем отправляло JSON или HTTP-вызов в систему, которая будет отслеживать, составлять отчеты (регистрировать) и отправлять любые оповещения, такие как SMS/электронная почта или телефонный звонок.
Посетите сайт Developer.alertcaster.com.
Особенно, если вам нужно отслеживать несколько одновременных событий, которые, похоже, у вас происходят, это может быть хорошим решением.