Log4Shell обеспечивает самозащиту приложений во время выполнения


Дело в том, что самозащита приложений во время выполнения (RASP) заключается в том, что, хотя брандмауэры веб-приложений (WAF) являются хорошим решением для некоторых случаев использования, они не очень хороши для атак, подобных тем, которые мы наблюдаем с Log4Shell. Вкратце: RASP помогает защитить приложения, настраивая приложение во время выполнения, обеспечивая глубокий контекст и информацию о том, как работает приложение, для превосходного обнаружения и блокировки атак. WAF обычно живет по периметру сети и отслеживает HTTP-трафик в поисках атак на основе предоставленных сигнатур. Теперь давайте углубимся в аргументы в пользу RASP для борьбы с Log4Shell.

Почему WAF — это не решение
Есть три основные причины, по которым WAF нам здесь не очень помогут.

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

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

#2.WAF не видят внеполосных элементов атаки.
Одним из элементов этой атаки, который упускается из виду, является тот факт, что эксплойт включает в себя обман приложения для обращения к другой службе (DNS, LDAP, RMI, CORBA). и ни одна из этих исходящих транзакций не пройдет через WAF.

Таким образом, успех эксплойта неизвестен WAF. WAF просто сообщает вам, атакуют ли вас детишки сценариев ванильными атаками. И вы знаете, что ответ на этот вопрос «да» еще до того, как у вас появился WAF. так… зачем мы это опять делаем?

№3. Мир больше не состоит только из HTTP.
Все больше и больше нашего кода является асинхронным, управляемым событиями, запускается очередями сообщений, сериализуется с помощью protobuf и т. д. Эта ошибка может быть запущена произвольно глубоко внутри предприятия по смехотворно окольным путям.

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

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

Защитите свои приложения
Оснащение ваших приложений внутренней защитой поможет защититься от Log4Shell сейчас и неизбежных подобных атак в будущем. Узнайте больше от Distinction Safety.

об авторе

Фотография Аршана Дабирсиаги

Аршан Дабирсиаги — опытный исследователь в области безопасности с более чем 10-летним опытом консультирования крупных организаций по вопросам безопасности приложений. Аршан выпустил популярные инструменты безопасности приложений, в том числе AntiSamy и JavaSnoop.


https://cyberxhack.org/