379
0
0
Скопировать ссылку
Telegram
WhatsApp
Vkontakte
Одноклассники
Назад

Классика кибератак: как защититься от XXE-инъекций

Время чтения 4 минуты
Нет времени читать?
Скопировать ссылку
Telegram
WhatsApp
Vkontakte
Одноклассники
379
0
0
Нет времени читать?
Скопировать ссылку
Telegram
WhatsApp
Vkontakte
Одноклассники

Привет, меня зовут Константин Тютюнник, я руководитель компании IT For Prof. Наша команда специализируется на ИТ-аутсорсинге для юридических лиц. За годы работы я и моя команда накопили значительный опыт в системном и сетевом администрировании, поддержке Linux- и Windows-систем, DevOps-практиках и миграции корпоративной инфраструктуры в российские облака с соблюдением высокого уровня доступности и безопасности. Этот опыт позволяет нам не только успешно внедрять передовые решения, но и предвидеть возможные риски и сложности, с которыми сталкиваются наши клиенты.

Классика кибератак: как защититься от XXE-инъекций

Информационная безопасность — один из ключевых аспектов нашей работы. Мы видим, что с каждым годом методы кибератак становятся всё более изощренными. Злоумышленники совершенствуют способы обхода систем безопасности. Однако в большинстве случаев основой для таких атак служит хорошо изученный и знакомый инструментарий.

К такой хакерской классике жанра можно отнести XXE-инъекции. Метод старый, но по-прежнему действенный. OWASP (Open Worldwide Application Security Project) — открытый проект по обеспечению безопасности веб-приложений — регулярно включает XXE в топ-10 главных угроз для компаний.

Под прицелом даже такие гиганты, как IBM. Несколько лет назад в их приложении WebSphere была обнаружена уязвимость типа XXE (CVE-2021-20454), которая позволяла злоумышленникам эксплуатировать ресурсы системы и получать доступ к конфиденциальным пользовательским данным.

Самое простое определение XXE — это уязвимости в веб-безопасности, которая позволяет вмешиваться в процесс обработки XML-данных приложением.

Успешная атака с использованием XXE-инъекций может открыть для нарушителя массу неприятных возможностей:

  • Доступ к конфиденциальным данным.
  • Возможность проведения SSRF-атак, позволяющих отправлять запросы от имени сервера.
  • Сканирование внутренней сети компании.
  • Чтение локальных файлов на сервере.
  • Осуществление DoS-атак.

Теперь разберемся с тем, как идентифицировать эту угрозу.

Поиск XXE в системе

XXE-инъекции могут быть сложными для обнаружения, особенно если система обрабатывает XML-документы в автоматическом режиме и не ведет детального журнала событий. К тому же вредоносы любят маскировать свои действия под легитимные запросы.

Способов обнаружения атак много. Все они имеют свои преимущества и недостатки. Перечислю несколько базовых приемов:

  • Анализ журналов и мониторинг трафика: необычные запросы к системным файлам (например, попытки обращения к файлам /etc/passwd в Unix-системах) или внешним ресурсам могут быть признаком XXE-атаки.
  • Тестирование на уязвимости: использование инструментов для автоматизированного тестирования безопасности, таких как Burp Suite, OWASP ZAP или другие сканеры уязвимостей, позволяет проверять XML-запросы на наличие уязвимостей XXE.
  • SAST и DAST: статический анализ исходного кода (SAST) и динамическое тестирование приложений (DAST) могут выявить уязвимости до их эксплуатации. Эти методы особенно полезны на этапе разработки.
  • Валидация входящих XML-документов: прямым признаком риска является отсутствие валидации входящих XML-документов. Если система позволяет обрабатывать любые внешние сущности, это уже создает предпосылки для успешной XXE-атаки.
  • WAF — Web Application Firewall, работает на уровне фильтрации трафика веб-приложений, отслеживая подозрительные XML-запросы и блокируя вредоносные данные до их обработки сервером. Однако WAF эффективен только против известных шаблонов атак и может быть обойден при использовании сложных или неизвестных техник, поэтому рекомендуется использовать его в сочетании с другими мерами защиты.

В одном из наших проектов мы успешно применили такой комбинированный подход, связав WAF и систему мониторинга. Как только WAF зафиксировал подозрительный XML-запрос, система мониторинга немедленно отправила уведомление администратору, что позволило оперативно отреагировать на потенциальную угрозу.

Защита от XXE

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

  • Отключение поддержки внешних сущностей

Если приложение не требует использования DTD и внешних сущностей, лучше вообще отключить их в настройках XML-парсера. Это минимизирует возможность доступа к файловой системе сервера или внутренним сетям через XML-запросы.

  • Валидация входных данных

Всё, что поступает извне, должно быть проверено. Проверяйте XML-документы перед их обработкой на наличие потенциально опасных элементов или сущностей.

  • Ограничение прав доступа

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

  • WAF

Уже упомянутый WAF отлично подходит для превентивной защиты от XXE-инъекций.

  • Использование статического и динамического тестирования

Статический (SAST) и динамический (DAST) анализ помогут выявить уязвимости и оценить потенциальные риски до того, как они станут реальностью.

Заключение

Помимо перечисленных инструментов для мониторинга XXE-инъекций, всегда стоит помнить и о стандартных рекомендациях по безопасности.

К ним относится в первую очередь подготовка специалистов. Убедитесь, что команда знакома с принципами безопасной обработки XML и правилами конфигурирования парсеров.

Резервные копии данных желательно иметь в количестве двух-трех штук и хранить их на разных платформах для минимизации рисков потери информации.

Для контроля изменений и предотвращения случайных уязвимостей используйте системы управления версиями, такие как Git. Это обеспечит дополнительный уровень безопасности на всех этапах работы.

И конечно, важно помнить, что информационная безопасность требует постоянного участия и контроля. Это не та сфера, где можно за один раз сделать всё под ключ и забыть на долгие годы. Как показывает пример XXE-инъекций, даже стандартные угрозы могут преподнести неприятный сюрприз, если их вовремя не обнаружить.

Комментарии0
Тоже интересно
Комментировать
Поделиться
Скопировать ссылку
Telegram
WhatsApp
Vkontakte
Одноклассники