Время от времени мы видим, как появляются новые эксплойты, доказывающие, насколько проблематичными они могут быть в руках плохих людей. Ситуация еще более критическая, когда мы говорим об эксплойте нулевого дня. Последний эксплойт был обнаружен в библиотеке журналов Apache Log4j. В сети опубликовали экспериментальный эксплойт.
Он раскрывает истинный потенциал атак с удаленным выполнением кода и затронул некоторые из крупнейших веб-сервисов. Эксплойт был идентифицированный как «активно эксплуатируемый», носит прозвище «Log4Shell» и является одним из самых опасных эксплойтов, обнародованных за последние годы. Это может повлиять практически на все, от устройств Apple до простых приложений и игр, таких как Minecraft.
Для тех, кто не знает, Log4j – популярный пакет журналирования на основе Java. За этим стоит Apache Software Foundation. Это исправление CVE-2021-44228, которое влияет на все версии Log4j от версии 2.0-beta9 до версии 2.14.1. Он был пропатчен в самой последней версии библиотеки, версии 2.15.0. Однако многие службы и приложения в настоящее время полагаются на Log4j.
Самая Страшная неделя в истории Minecraft Уязвимость Log4Shell [FitMc на русском]
Это распространяется как на устройства Apple, так и на такие игры, как Minecraft. Облачные сервисы, такие как Steam и Apple iCloud, также находятся в списке уязвимых, и мы предполагаем, что это касается всех, кто использует Apache Struts. Даже изменение имени iPhone может вызвать уязвимость на серверах Apple.
Чэнь Чжаоцзюнь из группы облачной безопасности Alibaba был первым, кто обнаружил эту проблему. Согласно отчету, любая служба, которая регистрирует контролируемые пользователем строки, в настоящее время уязвима для эксплойта. Стремление к управляемой пользователем строке – обычная практика для системных администраторов. Это помогает выявить потенциальное злоупотребление платформой. Кроме того, они используют его для очистки пользовательского ввода и проверки того, что для программного обеспечения нет ничего вредного.
Простое действие, такое как изменение имени iPhone, может вызвать эксплойт Log4Shell.
Эксплойт носит прозвище «Log4Shell», поскольку это неаутентифицированная RCE-уязвимость, позволяющая полностью перехватить контроль над системой. В сети уже есть экспериментальный эксплойт. До смешного легко продемонстрировать, что это работает с помощью программного обеспечения для ведения журнала DNS.
Согласно цитате из Пищевой компьютер, злоумышленники немедленно начнут использовать эту уязвимость. Фактически, злоумышленники уже массово сканируют Интернет, пытаясь найти серверы для использования. Это похоже на другие известные уязвимости, включая Heartbleed и Shellshock. Стоит отметить, что, по мнению LunaSec, некоторые версии Java выше 6u211, 7u201, 8u191 и 11.0.1 теоретически менее подвержены влиянию, хотя хакеры все же могут обойти ограничения.
Уязвимость Log4j | Эта Команда в Чате ЛОМАЕТ СЕРВЕРА MINECRAFT
Как упоминалось выше, можно просто запустить Log4Shell, изменив имя iPhone. Более того, если класс Java добавлен в конец URL-адреса, то этот класс будет внедрен в серверный процесс.
Источник: china-phone.info
Log4Shell год спустя
Обнаруженная год назад уязвимость Log4Shell до сих пор дает о себе знать.
Leonid Grustniy
Год назад, в декабре 2021 года, Log4Shell — уязвимость CVE-2021-44228 в библиотеке Apache Log4j, наделала много шума. К весне она вроде бы ушла с первых полос IT-изданий, но в ноябре 2022 года вновь появилась в новостях о том, что злоумышленники проэксплуатировали эту уязвимость при атаке на федеральное агентство США и установили на его системы криптомайнер. Это повод рассказать, что это за уязвимость, почему ее рано списывать со счетов и как защитить от свою инфраструктуру от эксплойта Log4Shell.
Что такое библиотека Apache Log4j
Изначально Java SDK не поддерживал логирование, поэтому разработчики были вынуждены писать собственные решения, и к тому времени, как появился официальный Java Logging API, их существовало уже несколько. Одно из них — Apache Log4j, популярная Java-библиотека с открытым исходным кодом, разрабатываемая еще с 2001 года. Это далеко не единственное решение для логирования в Java, но явно одно из самых популярных. Многие альтернативные решения по сути представляют собой ответвления или «переосмысления» того же Log4j, появившиеся на разных этапах развития библиотеки.
Что собой представляет уязвимость Log4Shell
Библиотека Log4j 2 логирует любые системные события в автоматическом режиме. В своей работе она использует стандартный набор интерфейсов для доступа к данным Java Naming and Directory Interface (JNDI). Как выяснилось в ноябре 2021 года, в процессе логирования она могла запустить команды JNDI, переданные ей событием, например, в поле Header запроса, в сообщении из чата или описания ошибки 404 на чужой веб-странице.
Уязвимость создает широкие возможности для злоумышленников — теоретически с ее помощью они могут делать в системе жертвы что угодно (если не сработает дополнительная защита). Чаще всего злоумышленники применяли Log4Shell для установки нелегальных майнеров и атак при помощи шифровальщиков-вымогателей. Но были и более экзотические варианты ее использования, включая целевые атаки, распространения ботнета Mirai и даже «рикроллинг» — проигрывание легендарной (но достаточно привязчивой) песни Never Gonna Give You Up в исполнении Рика Астли.
Почему уязвимость Log4Shell столь опасна и все еще эксплуатируется
Java — один из основных языков программирования, и бэкенды многих систем, от небольших корпоративных серверов до систем промышленной автоматизации и оборудования Интернета вещей, пишутся именно на нем. В большинстве этих систем так или иначе реализован процесс логирования. Долгие годы самым простым способом вести логи было использование библиотеки Log4J. Когда уязвимость в ней была обнародована в декабре 2021 года, эксперты объявили ее огромной проблемой на многие годы. И вот почему.
- Log4j используется в огромном количестве Java-приложений. На момент обнаружения уязвимость присутствовала более чем в 35 тыс. пакетов (артефактов) в Maven (крупнейшем репозитории программ на Java), что составляло 8% от их общего числа. По оценкам специалистов, около 40% сетей в мире были уязвимы для Log4Shell.
- Кроме обычных компьютеров и серверов, Java используется также в промышленном, медицинском и ином специализированном оборудовании (OT, Operational Technology). Там тоже не исключено использование библиотеки Log4j.
- Конечные пользователи решений с Log4J внутри вообще могут не задумываться о том, что в их ПО находится уязвимость, а следовательно, не спешить обновлять его.
- Разработчики решений, в которых используется библиотека Log4j, могли давно разориться, уйти с рынка или по иным причинам прекратить поддержку своих программ. Даже если конечные пользователи и хотели бы обновиться, у них больше нет такой возможности. А перейти на другое ПО может быть не так-то и просто.
- Log4j — библиотека с открытым кодом, а значит, программисты могли его копировать, модифицировать и применять в своих проектах. К сожалению, не все разработчики строго следуют лицензиям и не всегда указывают авторство используемого кода. Так что в теории та же самая уязвимость может находиться и в стороннем проекте, где официально нет никакой Log4j.
- Log4Shell была уязвимостью «нулевого дня», то есть использовалась злоумышленниками до того, как информация о ней была опубликована. Есть свидетельства, злоумышленники начали пробовать ее в деле еще за девять дней до обнародования.
- Среди уязвимых программ были продукты VMware, в частности популярное решение для организации инфраструктуры виртуальных рабочих столов VMware Horizon. Многие зафиксированные атаки проникали в систему именно через него.
- Обновление программ не решит всех проблем в том случае, если злоумышленники уже проникли в систему. Далеко не всегда атака начинается сразу после проникновения — вполне возможно, что во многих системах до сих пор сидят «закладки».
Практический вред от Log4Shell
Справедливости ради стоит признать, что катастрофически серьезных последствий использования Log4Shell до сих пор зафиксировано не было. Ну или широкой общественности пока о таковых неизвестно. Тем не менее уязвимость доставила немало хлопот разработчикам и специалистам по безопасности. Включая испорченные рождественские праздники для тысяч айтишников по всему миру. Компании, которые серьезно относятся к безопасности (как своей, так и своих клиентов), были вынуждены потратить немалые средства на поиск уязвимости в своих системах и разработках и ее устранение.
Из наиболее примечательных случаев использования Log4Shell на практике можно отметить следующие.
- 20 декабря 2021 года атаку на свою инфраструктуру с использованием уязвимости подтвердило бельгийское Министерство обороны. Подробности по понятным причинам не разглашались.
- 29 декабря 2021 года в СМИ появились сообщения о том, что атаке через Log4Shell подверглось некое научное учреждение в США. По мнению исследователей из CrowdStrike, незапатченной уязвимостью в ПО VMware Horizon воспользовалась APT-группировка Aquatic Panda. Подозрительную активность удалось вовремя остановить, но сам факт свидетельствует о том, что уязвимость взяли на вооружение серьезные хакерские группы.
- В том же декабре 2021 года стало известно об эксплуатации уязвимости на серверах Minecraft: Java Edition, хостящихся не у издателей игры (Microsoft). Компания подтвердила реальность проблемы и обратила внимание на простоту реализации атаки: преступники передавали зловредный код в обычном внутриигровом чате — этого было достаточно, чтобы исполнить вредоносный код как на стороне сервера, так и на стороне уязвимого клиента. Этот случай интересен не столько с точки зрения жертв, сколько с точки зрения технической реализации атаки: получается, что при определенных условиях атаку можно провернуть просто через внутренний чат. А ведь чаты сейчас встраивают далеко не только в игры: многие компании предпочитают общаться с клиентами по внутрипрограммным каналам. Например, во многих финтехприложениях именно так организована поддержка клиентов.
- В июне 2022 года Агентство по кибербезопасности и защите инфраструктуры США (CISA) и Киберкомандование береговой охраны США (CGCYBER) выпустили предупреждение о том, что уязвимость все еще активно эксплуатируют. В сообщении говорилось, что преступники использовали лазейку в том же VMware Horizon и проникли во внутренние сети двух неназванных государственных организаций. Помимо всего прочего в предупреждении сказано, что злоумышленники получили доступ к 130 Гб конфиденциальных данных, связанных с правоохранительной деятельностью
- В ноябре 2022 года CISA и ФБР выпустили еще один бюллетень об атаке с использованием Log4Shell на государственное учреждение. Злоумышленники проникли в систему еще в феврале, были обнаружены в апреле и активно действовали в июне — июле. За это время они завели учетную запись с правами администратора, поменяли пароль легитимного администратора и загрузили на сервер ПО для майнинга. Предполагается, что за атакой стояли государственные хакеры из Ирана, поэтому некоторые специалисты считают, что майнинг был лишь дымовой завесой, призванной скрыть реальные мотивы преступников.
Как защитить свою инфраструктуру
Любая компания может оказаться в числе жертв эксплуатации Log4Shell, зачастую просто в силу незнания о наличии уязвимости в собственных системах и используемом ПО. Если у вас нет уверенности в том, что в ваших системах, инструментах, продуктах или сервисах не используется данная библиотека, — имеет смысл провести тщательный аудит. В остальном же, чтобы оставаться в безопасности, рекомендуем воспользоваться следующими советами наших экспертов.
- Если в ваших разработках применяется Log4j — используйте последнюю версию библиотеки, доступную на странице проекта.
- Изучите официальные инструкции от Apache Logging Services и следуйте им там, где это необходимо.
- Если Log4j используется в сторонних продуктах — обновите уязвимое программное обеспечение.
- Используйте надежные решения , способные выявлять попытки эксплуатации уязвимостей на серверах и рабочих станциях.
- Отслеживайте подозрительную активность внутри корпоративного периметра при помощи решений класса EDR или внешних сервисов типа managed detection and response. Это позволит выявлять и останавливать атаки на ранних стадиях.
Источник: www.kaspersky.ru
Log4Shell: 4 вывода для разработчиков в 2022 году
Изучение
На чтение 6 мин Просмотров 353 Опубликовано 28.12.2021
В декабре 2021 года произошла массовая волна кибератак, направленных против частных лиц, крупных организаций и правительств. Многие разработчики работали допоздна, чтобы устранить острую угрозу. Для многих работа не сделана. Злоумышленники использовали возможности для эксплуатации уязвимостей, обнаруженных в Log4j, широко используемом инструменте ведения журналов.
Log4Shell относится к первой из трех уязвимостей Log4j, обнаруженных в этом месяце. В то время как последовали две другие уязвимости, Log4Shell оказалась самой серьезной.
Log4Shell был назван наихудшей программной уязвимостью последних лет. Это не последний раз, когда мы слышим об ошибках, вызывающих уязвимости, но было бы упущением, если бы мы ничего из этого не узнали. Log4Shell много говорит нам о развивающихся мирах кибербезопасности и распределенных систем.
Сегодня мы обсудим, что такое Log4Shell, и четыре ключевых вывода для программистов в новом году.
Log4j и уязвимость Log4Shell
Что такое Log4j?
Apache Log4j — это среда ведения журналов Java. Он поддерживается Apache Software Foundation, кооперативом с открытым исходным кодом, поддерживающим несколько технологий, включая Hadoop. Фреймворки ведения журналов, такие как Log4j, помогают стандартизировать процессы ведения журналов. Ведение журнала — это документирование событий, ошибок и сообщений в запущенных приложениях и операционных системах. Инструменты ведения журнала, такие как Log4j, могут быть развернуты в различных службах и компонентах системы и помогают отслеживать системы и диагностировать сбои.
Библиотека журналов Log4j используется множеством приложений и служб. Многие крупные организации используют Log4j в своих системах, включая Cloudflare, Minecraft, AWS, Microsoft, Cisco и VMWare. Повсеместная природа библиотеки Log4j является причиной того, что уязвимости Log4j оказали такое разрушительное воздействие.
Что такое Log4Shell?
Log4Shell: первая из трех уязвимостей Log4j
Log4Shell относится к первой уязвимости Log4j, обнаруженной в декабре 2021 года. За ней последовали еще две уязвимости Log4j, но Log4Shell была самой серьезной. Она считается критической уязвимостью и занимает 10 из 10 баллов в Системе оценки общих уязвимостей (CVSS).
График трех уязвимостей Log4j, обнаруженных в декабре 2021 года, выглядит следующим образом:
- 9 декабря 2021 г.: Log4Shell, анонсирована первая уязвимость Log4j (CVE-2021-44228).
- Включает удаленное выполнение кода (RCE)
- Атаки используют функцию подстановки поиска сообщений
- Позволяет атаковать отказ в обслуживании (DoS)
- Атаки используют небезопасные поисковые запросы Java Naming and Directory Interface (JNDI) из-за ошибки в первом патче Log4Shell.
- Включает DoS-атаки
- Результат бесконечной ошибки рекурсии
- Использует поиск в контекстной карте
Объявлена уязвимость нулевого дня
Эксплойт Log4Shell был публично опубликован с помощью POC (proof-of-concept) 9 декабря 2021 года в Twitter и GitHub. Как уязвимость нулевого дня, атаки начались в день объявления. Это коснулось всех версий Log4j от 2.0-beta9 до 2.15.0. Попытки эксплуатации начались быстро и в больших объемах, потому что использовать эксплойт Log4Shell было относительно легко. Патча, напротив, не было.
Смягчение
К моменту объявления Apache выпустил патч, но повсеместный характер Log4j делает исправление утомительным процессом. Команды ИТ-безопасности должны идентифицировать каждый компонент в своей системе, на котором работает Log4j, и развертывать исправление для каждой отдельной службы. Это трудоемкий процесс, и у злоумышленников остается много времени для использования уязвимых систем, подключенных к Интернету. Системы, которые не были полностью пропатчены, еще сильнее пострадали от двух последующих уязвимостей.
Удаленное выполнение кода
Log4Shell — это уязвимость, связанная с удаленным выполнением кода (RCE). RCE позволяет злоумышленникам выполнять произвольный код в любой пораженной системе, регистрируя вредоносную строку. Это позволило оппортунистическим злоумышленникам удаленно захватить контроль над целыми серверами.
Атаки имели различные формы: от кражи данных до вредоносных программ, таких как вредоносные программы и программы-вымогатели. Эксплойт Log4Shell использует функцию «подстановки сообщений» Log4j. Злоумышленники использовали эту функцию для вставки вредоносных URL-адресов через поиск JNDI через удаленные службы, такие как LDAP, RMI и DNS.
Log4Shell: 4 вывода для разработчиков в 2022 году
1. Все более взаимосвязанный мир означает увеличение площади для атак.
Угрозы кибербезопасности никуда не денутся. Скорее, такие события, как Log4Shell, говорят о развивающейся природе кибератак во все более взаимосвязанном мире. Больше взаимосвязанных компонентов постоянно находятся в сети, чем когда-либо прежде, что дает злоумышленникам возможность атаковать все больше и больше. Как и в случае с Log4j, ставки выше, когда во взаимосвязанной системе есть одна уязвимость. Правильная ошибка в одном компоненте может открыть дверь для оппортунистических хакеров, чтобы получить больше отдачи от своих попыток эксплуатации.
2. Масштабируемые системы могут быть разработаны, чтобы помочь оптимизировать смягчение последствий.
Ошибки неизбежны. Когда они обнаруживаются, самое сложное — это определить, где исправить и как это сделать в масштабе. Чем больше взаимосвязанных распределенных систем, тем труднее этот процесс.
Очень важно, чтобы команды могли комплексно оценить масштабируемость своих распределенных систем. И зависимости, и процессы развертывания должны быть масштабируемыми. Одна из лучших вещей, которые команды могут сделать для подготовки к неизбежной ошибке, — это внедрить методы DevOps, такие как конвейеры CI / CD, в свой цикл разработки программного обеспечения.
3. Спрос на междисциплинарных инженеров будет только расти.
Распределенные системы — это настоящее и будущее программной инженерии. Ожидается, что для того, чтобы идти в ногу с развивающимися угрозами в сложных системах, инженеры-программисты будут обладать более широкими междисциплинарными навыками, чем раньше. Будет возрастать спрос на разработчиков, специализирующихся на DevOps, для поддержки ИТ-безопасности и поддержки потенциальных клиентов. Инженеры DevOps должны будут уметь писать подключенные компоненты, которые эффективно обслуживают несколько платформ. Чтобы идти в ногу с развивающимися угрозами, организациям будет расти потребность в специалистах по ИТ-безопасности, таких как исследователи в области безопасности и аналитики по анализу угроз.
4. Обратная связь и сотрудничество — ключ к успеху.
Log4Shell мог быть хуже, чем был. К тому времени, когда общественность узнала об этом, Apache уже выпустил патч. Это стало возможным, потому что команда Apache была предупреждена о Log4Shell за 15 дней до того, как публика объявила об этом. Команда инженеров Alibaba Cloud обнаружила и сообщила об ошибке Apache 24 ноября 2021 года. Благодаря этому заблаговременному уведомлению разработчики Apache могли действовать быстро, чтобы упростить последующие меры по устранению последствий.
Обратная связь и сотрудничество лежат в основе многих историй успешного развития. Даже после того, как продукт запущен, невероятно важно, чтобы разработчики были открыты для отзывов от своих команд и других сообществ. Это помогает нам быстро реагировать на непредвиденные проблемы.
Источник: bestprogrammer.ru