Постоянный рост хакерской активности и отсутствие контроля за безопасностью веб-приложений сопровождается массовой компрометацией ресурсов. Как злоумышленник может атаковать сайт на примере интернет-магазина, к каким последствиям это приводит и как противодействовать таким атакам, особенно в период повышенной нагрузки, мы поделимся в этой статье.

Для поддержания высокого уровня защищенности сайта в период, когда усилия персонала направлены на решение ряда дополнительных задач, связанных с переходом на удаленный режим работы, необходимо задуматься об автоматизации вопросов, связанных с информационной безопасностью. Рассмотрим распространенные ошибки разработки и недостатки веб-ресурсов:

RCE

Remote code execution – критичная уязвимость, входящая в список угроз категории А1 по версии OWASP, позволяет злоумышленнику выполнить произвольный код на удаленном сервере. В случае обнаружения подобной уязвимости атакующий может выполнить произвольный код через командную оболочку (например, Bash) на сервере, получить доступ к базе данных и исходному коду, изменить выводимые страницы, атаковать посетителей сайта и многое другое.

Информация предоставлена исключительно в ознакомительных целях. Не нарушайте законодательство!

Для демонстрации мы развернули стенд с интернет-магазином, содержащим распространенные уязвимости и ошибки конфигурации. Используя RCE-уязвимость, мы меняем исходный код веб-приложения, после чего все его посетители перенаправляются на вредоносный сайт:

О перенаправлении в данном случае становится понятно по HTTP-заголовку «referer», информация о котором доступна в правом нижнем углу изображения:

SQLi

SQL Injection - другой способ получить доступ к содержимому базы данных, основанный на внедрении в запрос произвольного SQL-кода. Эта критичная уязвимость также входит в список угроз A1 по версии OWASP и позволяет получить доступ к ПДн пользователей и другой конфиденциальной информации, клиентским аккаунтам, панели управления сайтом (для последующей компрометации веб-сервера). Для демонстрации, как эксплуатируется такая уязвимость, и к каким последствиям это приводит, мы будем использовать все тот же стенд.

Используя SQLMap, популярный инструмент для эксплуатации SQL-инъекций, мы получаем доступ к содержимому таблиц базы данных интернет-магазина. В таблицах, помимо служебной и коммерческой информации, мы находим персональные данные пользователей и хеш паролей:

XXS

Cross Site Scripting – вектор атаки на посетителей веб-приложения, связанный с возможностью внедрения HTML-кода в уязвимую страницу. Успешная эксплуатация уязвимости может позволить злоумышленникам перехватывать сессии пользователей или получать другую критичную информацию в таком контексте.

Наш интернет-магазин "богат" на уязвимости, поэтому нам удалось выявить и такой недостаток. Атакующий, обнаружив возможность выполнения XSS в поле для комментариев, размещает вредоносный код и перехватывает "cookie" администратора, когда последний производит модерацию оставленного комментария:

После успешной атаки злоумышленник получает доступ к сайту с правами "администратор":

Brute-force

Атаки методом перебора - еще один популярный способ компрометации веб-ресурсов, целью которого является подбор значений. Чаще всего таким атакам подвергаются пароли или другая конфиденциальная информация. Метод перебора - один из часто используемых при атаке на веб-ресурсы, и часто - самый незаметный, позволяет получить доступ к персональным данным пользователей, бонусам и различным преимуществам программ лояльности. В нашей практике мы сталкиваемся с распределенными brute-force атаками с использованием > 60.000 источников одновременно. Без качественной системы выявления подобных атак они могут вывести веб-сервер из строя за несколько минут. Но чаще всего такие атаки остаются незамеченными для владельцев ресурса и выявляются либо случайно, либо после внедрения специализированного инструментария. Для блокирования атак методом перебора в Nemesida WAF мы используем принцип, основанный на расстоянии Левенштейна и нечеткой логике:

Мы рассмотрели наиболее распространенные вектора атаки на веб-приложения, но есть еще множество других. Для защиты интернет-магазинов, личных кабинетов, порталов, сайтов и API от хакерских атак рекомендуем использовать Nemesida WAF. Используя комплексный анализ на основе сигнатур и машинного обучения, Nemesida WAF выявляет в том числе новые виды атак, обеспечивая защиту веб-приложений в том числе от атак методом перебора.

Nemesida WAF прост в установке и использовании. При попытке выполнить эксплуатацию уязвимостей, например, RCE, нелегитимный запрос будет заблокирован Nemesida WAF:

Попытки "раскрутить скулю" для получения доступа к базе данных также будут заблокированы:

Информация об атаке доступна в Личном кабинете Nemesida WAF и позволяет лучше разобраться в инциденте. Личный кабинет, представленный в виде установочного пакета, содержит различный инструментарий для визуализации информации об инцидентах и генерации статистики и отчетов.

Используя Burp Suite - популярный инструмент для анализа защищенности веб-приложений, воспроизведем передачу злоумышленником вредоносного кода в поле комментария сайта (левая часть изображения), а в правой части получим результат работы Nemesida WAF - блокирование такого запроса:

А так выглядит заблокированная попытка выполнить эксплуатацию XSS (красным цветом автоматически выделяется вредоносный пейлоад):

Nemesida WAF доступен в виде установочных пакетов для популярных Linux-систем: Debian, CentOS и Ubuntu, а также в виде облачного сервиса Nemesida WAF Cloud с защитой от DDoS-атак.

Модуль машинного обучения, сканер уязвимостей, система виртуального патчинга и другие возможности Nemesida WAF обеспечат качественную защиту интернет-магазинов, личных кабинетов, порталов, сайтов и API от хакерских атак, особенно в период перегрузки технических специалистов.

Просто посчитайте, сколько будет стоить устранение последствий успешной атаки злоумышленника. Используйте Nemesida, оставайтесь здоровыми и защищенными. Более подробная информация доступна на официальном сайте.