Типы атак и уязвимостей¶
Нода Вебмониторэкс способна обнаружить множество атак и уязвимостей. Их список приведен ниже.
Для каждого элемента в списке указаны:
-
Пометка о том, является он атакой или уязвимостью.
Названия некоторых атак могут совпадать с названием уязвимости, которую они эксплуатируют. В этом случае элемент в списке будет иметь пометку Уязвимость/Атака.
-
Код Вебмониторэкс, соответствующий уязвимости или атаке.
Для большинства атак и уязвимостей также указаны один или несколько кодов, соответствующих уязвимости или атаке из списка распространенных слабых мест в безопасности программного обеспечения (англ. Common Weakness Enumeration, CWE).
Кроме этого, нода Вебмониторэкс использует несколько особых типов атак и уязвимостей в служебных целях для маркировки обработанного трафика. Для таких атак и уязвимостей нет кода CWE и их список приведен отдельно.
Основной список атак и уязвимостей¶
Атака на внешние XML‑сущности (XML External Entity, XXE)¶
Уязвимость/Атака
Код CWE: CWE-611
Код Вебмониторэкс: xxe
Описание:
Уязвимость к атаке XXE заключается в том, что злоумышленник способен внедрить внешние сущности в структуру XML‑документов, которые будут обработаны XML‑парсером и выполнены на целевом веб-сервере.
В результате реализации атаки злоумышленник будет иметь возможности для:
-
Получения доступа к конфиденциальным данным веб‑приложения
-
Осуществления атаки SSRF
-
Сканирования внутренней сети
-
Чтения локальных файлов на веб-сервере
-
Осуществления DoS-атак
Данная уязвимость существует из‑за отсутствия запрета на разрешение внешних сущностей XML в веб‑приложении.
Рекомендации по устранению:
Вы можете последовать следующим рекомендациям:
-
Отключить разрешение внешних XML‑сущностей при работе с пользовательскими XML‑документами
-
Воспользоваться рекомендациями из OWASP XXE Prevention Cheatsheet
Брутфорс (англ. Bruteforce attack)¶
Атака
Код CWE: CWE-307, CWE-521, CWE-799
Код Вебмониторэкс: brute
Описание:
Брутфорс атака (также известна как "атака перебором" и "метод грубой силы") предполагает отправку множества запросов к серверу с предопределенными значениями (значения могут быть сгенерированы автоматически или взяты из словаря) и анализ ответа сервера с целью подбора необходимых данных.
В результате успешной реализации такой атаки злоумышленник может обойти механизмы аутентификации и авторизации, обнаружить скрытые ресурсы веб‑приложения (директории, файлы, разделы сайта и т.п.) и выполнять иные вредоносные действия.
Рекомендации по устранению:
Вы можете последовать следующим рекомендациям:
-
Ввести ограничения на количество поступающих запросов к веб‑приложению в единицу времени
-
Ввести ограничения на количество попыток аутентификации или авторизации в единицу времени
-
Блокировать дальнейшие попытки аутентификации и авторизации после нескольких неудачных попыток
-
Установить минимально возможные права на доступ к директориям и файлам веб‑приложения
-
Ограничить доступ приложения к другим директориям и файлам сервера, на котором выполняется веб‑приложение
Как настроить Вебмониторэкс WAF для защиты от брутфорса →
Изучение ресурса сторонним сканером¶
Атака
Код CWE: нет
Код Вебмониторэкс: scanner
Описание:
Такой код присваивается HTTP‑запросу, если обнаруживается факт атаки на защищаемый ресурс или изучения этого ресурса с помощью стороннего сканера (запросы Сканера Вебмониторэкс не считаются атакой).
Рекомендации по устранению:
Вы можете последовать следующим рекомендациям:
-
Использовать фильтрацию по IP‑адресу, белые или черные списки, различные механизмы аутентификации и авторизации для снижения вероятности сканирования периметра злоумышленником
-
Минимизировать плоскость сканирования путем установки файервола для защиты сетевого периметра
-
Оставлять открытым минимально возможный набор сетевых портов
-
Ограничить использование протокола ICMP в сети
-
Проводить своевременное обновление компонентов ИТ-инфраструктуры, в том числе:
- Прошивок серверов и другого оборудования
- Операционных систем
- Прочего программного обеспечения
Инъекция шаблона на стороне сервера (англ. Server Side Template Injection, SSTI)¶
Уязвимость/Атака
Код Вебмониторэкс: ssti
Описание:
Уязвимость к атаке типа "Server-Side Template Injection" позволяет злоумышленнику внедрить в форму пользовательского ввода исполняемую конструкцию, которая в результате будет обработана шаблонизатором на стороне веб-сервера.
В результате эксплуатации данной уязвимости злоумышленник имеет возможность создавать произвольные запросы к веб-серверу, обращаться к его файловой системе, а также при определенных условиях удаленно выполнять произвольный код (атака RCE).
Уязвимость к атакам данного типа возникает из‑за некорректной фильтрации входных пользовательских данных.
Рекомендации по устранению:
Вы можете последовать следующей рекомендации: параметры, получаемые веб‑приложением, должны проходить процессы санитизации (англ. sanitization) и фильтрации для предотвращения исполнения управляющих конструкций.
Информационная бомба (англ. Data Bomb)¶
Атака
Код Вебмониторэкс: data_bomb
Описание:
Вебмониторэкс отмечает запрос как информационную бомбу, если обнаруживает в запросе Zip‑бомбу или XML‑бомбу:
-
Zip-бомба реализуется с помощью рекурсивного ZIP-архива, который распаковывается сам в себя и заполняет все свободное место на носителе.
-
XML-бомба (billion laughs attack) — тип DoS-атаки, направленный на перегрузку парсера XML и отказ в обслуживании веб-приложения. Для реализации данной атаки используются сущности XML.
Например: сущность
entityOne
может быть определена как 20 сущностейentityTwo
, а сущностьentityTwo
— как 20 сущностейentityThree
. Если вложенность продолжается до 8-го уровня (entityEight
), парсер XML развернет появлениеentityOne
до 1 280 000 000entityEight
. Этот процесс может занять 5Гб памяти и заполнить все свободное место на носителе, что приведет к отказу работы веб-приложения.
Рекомендации по устранению:
Органичить максимальный размер входящих запросов до значения, которое не может навредить системе.
Межсайтовый скриптинг (англ. Cross-site Scripting, XSS)¶
Уязвимость/Атака
Код CWE: CWE-79
Код Вебмониторэкс: xss
Описание:
Межсайтовый скриптинг — это вид атаки на клиентов веб‑приложения, при которой в браузере клиентов может быть исполнен произвольный код, подготовленный злоумышленником.
Различают несколько видов XSS:
-
Хранимый XSS (англ. Stored XSS).
Вредоносный код заранее внедрен на страницу приложения.
Уязвимость к данной атаке позволяет злоумышленнику внедрить вредоносный код в HTML-страницу веб‑приложения с возможностью постоянного отображения этого кода в браузере всех клиентов, обратившихся к данной странице.
-
Отраженный XSS (англ. Reflected XSS).
Для произведения атаки злоумышленнику необходимо спровоцировать пользователя перейти по специально сформированной ссылке.
-
DOM-based XSS.
Уязвимость к DOM-based XSS-атакам появляется в случаях, когда JavaScript-код страницы веб‑приложения обрабатывает отправляемые данные, и из‑за ошибок в коде реализации может попытаться исполнить полученный набор данных в качестве команд языка JavaScript.
В результате реализации любой из вышеперечисленных атак в браузере клиента будет выполнен произвольный JavaScript-код, который может позволить злоумышленнику украсть пользовательскую сессию, производить запросы от имени пользователя, получить пользовательские учетные данные и выполнять иные вредоносные действия.
Уязвимость к атакам данного типа возникает из‑за некорректной фильтрации входных пользовательских данных.
Рекомендации по устранению:
Вы можете последовать следующим рекомендациям:
-
Параметры, получаемые веб‑приложением, должны проходить процессы санитизации (англ. sanitization) и фильтрации для предотвращения исполнения управляющих конструкций.
-
При формировании страницы веб‑приложения проводить санитизацию и экранирование управляющих конструкций из динамически собирающихся данных.
-
Рекомендации из OWASP XSS Prevention Cheatsheet.
Небезопасная прямая ссылка на объект (англ. Insecure Direct Object References, IDOR)¶
Уязвимость
Код CWE: CWE-639
Код Вебмониторэкс: idor
Описание:
Функции авторизации приложения не препятствуют тому, чтобы один пользователь не мог получить доступ к данным или ресурсам другого пользователя.
Данная уязвимость возникает из‑за того, что веб‑приложение предоставляет возможность, изменив значение ключа, получить прямую ссылку на объект, например, файл, каталог или запись в базе данных и не осуществляет соответствующий контроль доступа.
В процессе эксплуатации уязвимости злоумышленник за счёт манипуляций с параметрами запроса может получить несанкционированный доступ к конфиденциальной информации веб‑приложения и пользователей.
Рекомендации по устранению:
Вы можете последовать следующим рекомендациям:
-
Реализовать корректную проверку контроля доступа к ресурсам веб‑приложения
-
Реализовать механизм контроля доступа к ресурсам и разграничивать доступ к ним в соостветствии с правами пользователя
-
Использовать косвенные ссылки на объекты
-
Воспользоваться рекомендациями из OWASP IDOR Prevention Cheatsheet
Небезопасное перенаправление (англ. Open Redirect)¶
Атака
Код CWE: CWE-601
Код Вебмониторэкс: redir
Описание:
Небезопасное перенаправление - это атака, в результате которой злоумышленник может перенаправить пользователя на вредоносную страницу от имени легитимного веб‑приложения.
Уязвимость к атакам данного типа возникает из‑за некорректной фильтрации входных данных URL-адреса.
Рекомендации по устранению:
Вы можете последовать следующим рекомендациям:
-
Параметры, получаемые веб‑приложением, должны проходить процессы санитизации (англ. sanitization) и фильтрации для предотвращения исполнения управляющих конструкций.
-
Следует уведомлять пользователя о всех перенаправлениях и запрашивать их подтверждение для перехода по ссылке.
Подделка запросов на стороне сервера (англ. Server-Side Request Forgery, SSRF)¶
Уязвимость
Код CWE: CWE-918
Код Вебмониторэкс: ssrf
Описание:
SSRF - вид атаки на веб-сервер, которая позволяет злоумышленнику выполнять запросы от имени веб-сервера. Реализация данной атаки может привести к получению информации о локальных портах веб‑приложения, сканированию внутренней сети, а также обходу ограничений доступа.
Рекомендации по устранению:
Вы можете последовать следующим рекомендациям:
-
Параметры, получаемые веб‑приложением, должны проходить процессы санитизации (англ. sanitization) и фильтрации для предотвращения исполнения управляющих конструкций.
-
Рекомендации из OWASP SSRF Prevention Cheatsheet.
Принудительный просмотр ресурсов веб‑приложения (англ. Forced Browsing)¶
Атака
Код CWE: CWE-425
Код Вебмониторэкс: dirbust
Описание:
Эта атака является одной из разновидностей bruteforce-атак. Она направлена на обнаружение скрытых ресурсов веб‑приложения, а именно директорий и файлов. Атака достигает своей цели путем перебора различных имен файлов и директорий, причем эти имена могут быть как сгенерированы на основе заданного шаблона, так и взяты из предварительно подготовленного словаря.
В результате реализации атаки злоумышленником может быть получен доступ к скрытым ресурсам, на которые веб‑приложение не ссылается явно, но которые доступны при обращении к ним напрямую.
Рекомендации по устранению:
Вы можете последовать следующим рекомендациям:
-
Запретить или максимально ограничить доступ ко всем ресурсам веб‑приложения, к которым пользователь не должен иметь прямого доступа (например, с помощью механизмов аутентификации и авторизации)
-
Ввести ограничения на количество поступающих запросов к веб‑приложению в единицу времени
-
Ввести ограничения на количество попыток аутентификации или авторизации в единицу времени
-
Блокировать дальнейшие попытки аутентификации и авторизации после нескольких неудачных попыток
-
Установить минимально возможные права на доступ к директориям и файлам веб‑приложения
Как настроить Вебмониторэкс WAF для защиты от брутфорса →
Раскрытие информации (англ. Information Exposure)¶
Уязвимость/Атака
Код CWE: CWE-200 (смотрите также: CWE-209, CWE-215, CWE-538, CWE-541, CWE-548)
Код Вебмониторэкс: infoleak
Описание:
Защищаемое приложение раскрывает чувствительную информацию субъекту, который явно не уполномочен иметь доступ к этой информации.
Уязвимость этого типа может быть обнаружена только методом пассивного обнаружения уязвимостей. Если ответ на запрос содержит чувствительную информацию, Вебмониторэкс записывает инцидент и активную уязвимость типа Раскрытие информации. Вебмониторэкс распознает следующую информацию как чувствительную:
-
Статус системы и среды (например: stack trace, фатальные ошибки, предупреждения)
-
Статус и настройки сети
-
Код приложения
-
Метаданные (например: лог подключений к приложению)
Рекомендации по устранению:
Вы можете последовать следующей рекомендации: исключить вывод чувствительной информации на страницах веб‑приложения.
Удаленное выполнение кода (англ. Remote Code Execution, RCE)¶
Уязвимость/Атака
Коды CWE: CWE-78, CWE-94 и другие
Код Вебмониторэкс: rce
Описание:
Злоумышленник может внедрить вредоносный код в запрос к веб‑приложению, который затем будет исполнен веб‑приложением.
Также злоумышленник может попытаться выполнить определенные команды операционной системы, в которой запущено уязвимое веб‑приложение.
В результате реализации атаки злоумышленнику может стать доступен широкий спектр действий, включающий в себя:
-
Влияние на целостность, доступность и конфиденциальность данных веб‑приложения
-
Получение контроля за операционной системой и сервером, которые обеспечивают выполнение веб‑приложения
-
Иные возможности
Уязвимость к атакам данного типа возникает из‑за некорректной фильтрации входных пользовательских данных.
Рекомендации по устранению:
Вы можете последовать следующей рекомендации: параметры, получаемые веб‑приложением, должны проходить процессы санитизации (англ. sanitization) и фильтрации для предотвращения исполнения управляющих конструкций.
Уязвимость в механизмах аутентификации (англ. Authentication Bypass)¶
Уязвимость
Код CWE: CWE-288
Код Вебмониторэкс: auth
Описание:
Программное обеспечение реализует механизм аутентификации пользователей, но приложение имеет альтернативные каналы аутентификации, позволяющие обойти основной механизм или воспользоваться его недочетами, для получения доступа с правами пользователя или администратора.
В результате наличия данной уязвимости, потенциальный злоумышленник может получить доступ к конфиденциальным данным пользователей или получить доступ к управлению приложением с правами администратора.
Рекомендации по устранению:
Вы можете последовать следующим рекомендациям:
-
Устранить недочеты существующего механизма аутентификации
-
Устранить любые сторонние каналы аутентификации, позволяющие потенциальным злоумышленникам получать доступ к приложению без прохождения корректного процесса аутентификации
-
Воспользоваться рекомендациями из OWASP Authentication Cheatsheet
CRLF-инъекция (англ. CRLF Injection)¶
Атака
Код CWE: CWE-93
Код Вебмониторэкс: crlf
Описание:
CRLF-инъекции — это класс атак, который позволяет злоумышленнику внедрить символы возврата каретки (англ. Carriage Return, CR) и перевода строки (англ. Line Feed, LF) в запрос к серверу (например, с помощью протокола HTTP).
В совокупности с другими факторами это может привести к эксплуатации различных уязвимостей (например, "HTTP Response Splitting" CWE-113, "HTTP Response Smuggling" CWE-444).
Успешная атака такого типа может позволить злоумышленнику обходить файервол, отравлять кеш, подменять легитимные страницы на страницы с вредоносным кодом, реализовывать атаки типа "Open Redirect" и выполнять иные вредоносные действия.
Уязвимость к атакам данного типа возникает из‑за некорректной фильтрации входных пользовательских данных.
Рекомендации по устранению:
Вы можете последовать следующей рекомендации: параметры, получаемые веб‑приложением, должны проходить процессы санитизации (англ. sanitization) и фильтрации для предотвращения исполнения управляющих конструкций.
LDAP-инъекция (англ. LDAP Injection)¶
Уязвимость/Атака
Код CWE: CWE-90
Код Вебмониторэкс: ldapi
Описание:
LDAP-инъекции — это класс атак, который позволяет злоумышленнику внедрить мета‑символы фильтров поиска в запрос к структуре LDAP, хранящейся на сервере.
В результате реализации атаки злоумышленник может получить доступ к чтению/изменению конфиденциальной информации о пользователях и узлах, представленных в структуре LDAP.
Уязвимость к атакам данного типа возникает из‑за некорректной фильтрации входных пользовательских данных.
Рекомендации по устранению:
Вы можете последовать следующим рекомендациям:
-
Параметры, получаемые веб‑приложением, должны проходить процессы санитизации (англ. sanitization) и фильтрации для предотвращения исполнения управляющих конструкций.
-
Рекомендации из OWASP LDAP Injection Prevention Cheatsheet.
NoSQL‑инъекция (англ. NoSQL Injection)¶
Уязвимость/Атака
Код CWE: CWE-943
Код Вебмониторэкс: nosqli
Описание:
NoSQL‑инъекции — это класс атак, которые позволяют злоумышленнику получить возможность доступа к конфиденциальным данным веб‑приложения. Атаки этого типа реализуются из‑за недостаточной фильтрации входных пользовательских данных, путем внедрения специально сконструированного запроса к NoSQL‑базе данных.
Рекомендации по устранению:
Вы можете последовать следующей рекомендации: параметры, получаемые веб‑приложением, должны проходить процессы санитизации (англ. sanitization) и фильтрации для предотвращения исполнения управляющих конструкций.
Path Traversal¶
Уязвимость/Атака
Код CWE: CWE-22
Код Вебмониторэкс: ptrav
Описание:
Path Traversal - это тип атаки, которая позволяет злоумышленнику получить доступ к конфиденциальным файлам и каталогам, хранящимся в файловой системе веб‑приложения с помощью изменения существующих путей к файлам через параметры веб‑приложения.
Уязвимость к данному типу атак возникает из‑за некорректной фильтрации пользовательских данных при запросе пользователем файлов или директорий через веб‑приложение.
Рекомендации по устранению:
Вы можете последовать следующим рекомендациям:
-
Параметры, получаемые веб‑приложением, должны проходить процессы санитизации (англ. sanitization) и фильтрации для предотвращения исполнения управляющих конструкций.
-
Дополнительные рекомендации по предотвращению данного типа атак доступны здесь.
SQL‑инъекция (SQL Injection)¶
Уязвимость/Атака
Код CWE: CWE-89
Код Вебмониторэкс: sqli
Описание:
Атака этого типа реализуется из‑за недостаточной фильтрации входных пользовательских данных, путем внедрения специально сконструированного SQL‑запроса.
Уязвимость к атаке типа "SQL‑инъекция" позволяет злоумышленнику внедрить в выполняемый запрос к базе данных произвольный SQL‑код, получив возможность доступа к конфиденциальным данным, их изменению, а также выполнению операций по администрированию СУБД.
Рекомендации по устранению:
Вы можете последовать следующим рекомендациям:
-
Параметры, получаемые веб‑приложением, должны проходить процессы санитизации (англ. sanitization) и фильтрации для предотвращения исполнения управляющих конструкций.
-
Рекомендации из OWASP SQL Injection Prevention Cheatsheet.
Email-инъекция (англ. Email Injection)¶
Уязвимость/Атака
Код CWE: CWE-20, CWE-150, CWE-88
Код Вебмониторэкс: mail_injection
Описание:
Email-инъекция — вредоносное IMAP/SMTP‑выражение, которое изменяет стандартное поведение почтового сервера. Чаще всего выражение вводится в контактной форме веб-приложения.
Уязвимость к данной атаке возникает из-за отсутствия или неполноты валидации данных, введенных в контактную форму. Атака позволяет обойти ограничения почтовых клиентов, получить данные пользователей и отправить спам.
Рекомендации по устранению:
-
Параметры, получаемые веб-приложением, должны проходить процессы санитизации и фильтрации для предотвращения исполнения управляющих конструкций.
-
Рекомендации из OWASP Input Validation Cheatsheet.
SSI-инъекция (англ. Server Side Include Injection)¶
Уязвимость/Атака
Код Вебмониторэкс: ssi
Описание:
SSI (Server Side Includes — включения на стороне сервера) — язык для динамической сборки веб-страниц на сервере из отдельных составных частей и выдачи клиенту полученного HTML-документа. Реализован в веб-серверах Apache, NGINX.
SSI-инъекция (Server Side Include Injection) - техника атаки на веб-приложение, при которой злоумышленник вставляет вредоносный код в элементы синтаксиса SSI и отправляет полученный запрос на сервер.
Пример:
Злоумышленник может изменять сообщения, которые возвращаются пользователю приложения, и влиять на поведение пользователя. Пример SSI-инъекции:
<!--#config errmsg="Access denied, please enter your username and password"-->
Рекомендации по устранению:
-
Параметры, получаемые веб-приложением, должны проходить процессы санитизации и фильтрации для предотвращения исполнения управляющих конструкций.
-
Рекомендации из OWASP Input Validation Cheatsheet.
Список особых атак и уязвимостей¶
Виртуальный патч (англ. Virtual Patch)¶
Атака
Код Вебмониторэкс: vpatch
Описание:
Такой код присваивается атакам, которые были отражены с помощью механизма виртуальных патчей.
Использование небезопасного XML‑заголовка¶
Атака
Код Вебмониторэкс: invalid_xml
Описание:
Запрос помечается как атака такого типа, если тело запроса представляет собой XML‑документ и замечено несоответствие между кодировкой этого документа и кодировкой, указанной в заголовке XML‑документа.
Превышение лимита вычислительных ресурсов¶
Атака
Код Вебмониторэкс: overlimit_res
Описание:
Нода Вебмониторэкс отмечает запрос как атаку типа overlimit_res
в следующих случаях:
-
Время обработки запроса нодой Вебмониторэкс превышает заданный лимит. Нода Вебмониторэкс настроена так, что на обработку одного входящего запроса должно тратиться не более
N
миллисекунд (значение по умолчанию:1000
). Если обработка запроса не будет выполнена за установленный квант времени, то она будет прекращена, а сам запрос будет помечен как атака типа "превышение лимита вычислительных ресурсов".Вы можете задать лимит времени для обработки запроса и изменить поведение ноды при превышении лимита с помощью правила Настроить обработку атак типа overlimit_res.
Ограничение времени на обработку одного запроса позволяет защитить ноду Вебмониторэкс от атак. В некоторых случаях причиной долгой обработки запросов может быть недостаточное количество ресурсов, выделенное для модулей Вебмониторэкс на сервере.
-
Запрос загружает файл gzip размером более 512 Мбайт.