Экосистема с открытым исходным кодом является краеугольным камнем современной разработки программного обеспечения, способствующим инновациям и сотрудничеству. Однако сама открытость делает его уязвимым для различных киберугроз. В соответствии с отчет ComparitechВ 2023 году было выявлено более 100 миллионов штаммов вредоносного ПО и потенциально нежелательных приложений (ПНП), что свидетельствует о том, что атаки, связанные с вредоносным ПО, остаются серьезной киберугрозой.
Новые семейства вредоносных программ в пакетах с открытым исходным кодом
Установка вредоносного ПО
Как они работают: Этот тип вредоносного ПО вмешивается в процесс установки пакетов с открытым исходным кодом. Он внедряет вредоносный код во время установки пакета, который затем может выполняться при каждом использовании пакета.
Использованные уязвимости: Установка-вмешательство Вредоносное ПО использует доверие пользователей размещение в репозиториях с открытым исходным кодом и отсутствие строгих проверок безопасности в процессе установки пакета.
Стратегии защиты: Чтобы защититься от установки вредоносного ПО, крайне важно использовать проверенные и подписанные пакеты, включить двухфакторную аутентификацию для учетных записей репозитория и проводить регулярные проверки безопасности зависимостей.
Пример вредоносного кода Install-Tamper: пакет npm «colors» (2022 г.)
Описание:
Пакет «colors» — это популярная библиотека npm, используемая для добавления цветовых эффектов в журналы консоли. Он широко используется в различных приложениях Node.js.
Как это работало:
В начале 2022 года версия пакет «цвета» был вредоносно изменен с целью включения в основной файл скрипта бесконечного цикла. Это изменение было внесено самим сопровождающим проекта, который якобы сделал это в знак протеста против корпоративного использования проектов с открытым исходным кодом без адекватной поддержки или пожертвований.
Влияние:
Эта модификация приводила к сбою любого приложения, использующего взломанную версию «цветов», что приводило к повсеместным сбоям в работе многочисленных предприятий и программных систем, работа которых зависела от этого пакета.
Уроки выучены:
Этот инцидент подчеркивает уязвимости, присущие модели управления пакетами с открытым исходным кодом, основанной на доверии. Он подчеркивает необходимость для сопровождающих поддерживать этические нормы standards и для пользователей проводить тщательные проверки и тесты сторонних зависимостей в своих средах разработки. Дело «цветов» также подчеркивает важность поддержки разработчиков открытого исходного кода для предотвращения выгорания и неэтичных ответных действий.
Бэкдор первого использования
Как они работают: Этот бэкдор активируется, когда пакет с открытым исходным кодом импортируется и используется в первый раз. Он может отправлять системную информацию на удаленный сервер или загружать дополнительные полезные данные.
Использованные уязвимости: Бэкдоры первого использования используют возможность выполнения непроверенного кода при первом использовании пакета, часто в обход инструментов статического анализа.
Стратегии защиты: Проверка и мониторинг кода вновь импортированных пакетов, а также использование инструментов динамического анализа для обнаружения необычного поведения являются ключом к защите от бэкдоров первого использования.
Пример бэкдора при первом использовании: инцидент с бэкдором Webmin (2019 г.)
Описание:
Webmin — популярный веб-интерфейс для системного администрирования Unix. В 2019 году было обнаружено, что программное обеспечение было скомпрометировано с помощью задняя дверь который присутствовал в коде более года до обнаружения.
Как это работало:
Бэкдор был тайно внедрен в репозиторий Webmin GitHub через скомпрометированный сервер сборки. Вредоносный код был активен только в том случае, если администратор менял пароль с помощью интерфейса Webmin. После запуска он позволял удаленно выполнять команды с правами root.
Влияние:
Бэкдор поставлялся с версиями Webmin с 1.882 по 1.921, потенциально затрагивая более трех миллионов веб-сайтов и серверов. Бэкдор открывал системы для удаленных злоумышленников, которые потенциально могли получить полный контроль над сервером, что приводило к краже данных, взлому сервера и дальнейшему компрометации сети.
Уроки выучены:
Этот инцидент подчеркивает критическую уязвимость, которая может возникнуть при компрометации процессов сборки. Это подчеркивает важность защиты серверов сборки и проведения регулярных проверок безопасности жизненного цикла разработки программного обеспечения. Случай с Webmin также демонстрирует необходимость тщательной проверки обновлений программного обеспечения, даже если они поступают из надежных источников.
Червь, компрометирующий время выполнения
Как они работают: Этот червь дремлет внутри пакета с открытым исходным кодом и активируется во время выполнения, потенциально распространяясь на другие пакеты и системы.
Использованные уязвимости: Черви компрометации среды выполнения используют взаимосвязанную природу проектов с открытым исходным кодом, когда один скомпрометированный пакет может повлиять на другие.
Стратегии защиты: Внедрение строгого мониторинга поведения во время выполнения и систем обнаружения аномалий может помочь выявить и смягчить такие угрозы.
Пример компрометации времени выполнения P2PInfect: ржавый одноранговый самовоспроизводящийся червь
Описание:
P2PИнфекция — одноранговый (P2P) червь, обнаруженный исследователями облачных вычислений Подразделения 42.
Написанный на Rust, хорошо масштабируемом и удобном для облачных вычислений языке программирования, этот червь способен к межплатформенному заражению и нацелен на Redis, популярное приложение для работы с базами данных с открытым исходным кодом, активно используемое в облачных средах.
Как это работает:
Начальная эксплуатация:
- P2PInfect использует уязвимость выхода из песочницы Lua, CVE-2022-0543, в уязвимых экземплярах Redis.
- Уязвимость позволяет червю выполнять произвольный код в среде сценариев Lua.
Доставка полезной нагрузки:
- Как только первоначальный доступ достигнут, P2PInfect удаляет начальную полезную нагрузку, которая устанавливает P2P-связь с более крупной сетью.
- Затем червь удаляет дополнительные вредоносные двоичные файлы, включая сценарии для конкретной ОС и программное обеспечение для сканирования.
Распространение:
- Зараженный экземпляр Redis присоединяется к P2P-сети, предоставляя доступ к другим полезным данным для будущих скомпрометированных экземпляров Redis.
- P2PInfect нацелен как на операционные системы Linux, так и на Windows, что делает его более масштабируемым и мощным, чем другие черви.
Влияние:
Исследователи Unit 42 выявили более 307,000 934 уникальных систем Redis, которые публично общались за последние две недели, из которых 2 могут быть уязвимы для этого варианта PXNUMXP-червя.
P2PInfect служит примером серьезной угрозы, которую могут совершить злоумышленники, используя эту уязвимость.
Уроки выучены:
Разработчики должны проверять и проверять свои пакеты, поддерживать актуальность зависимостей и проявлять осторожность в отношении названий и источников пакетов.
Бдительность и постоянный мониторинг необходимы для предотвращения подобных атак в цепочке поставок.
Атака по цепочке зависимостей
Как они работают: Злоумышленники компрометируют один пакет в цепочке зависимостей, что затем влияет на все остальные пакеты, которые от него зависят.
Использованные уязвимости: Эта атака использует доверие к зависимостям пакетов и каскадный эффект одного скомпрометированного пакета.
Стратегии защиты: Использование инструмента анализа состава программного обеспечения для отслеживания и управления компонентами с открытым исходным кодом и их зависимостями может защитить от атак на основе цепочки зависимостей.
Пример атаки на цепочку зависимостей Пакет npm «event-stream» (2018): компрометация цепочки поставок
Описание:
В 2018 году популярный пакет npm под названием «событийный поток» был скомпрометирован.
Атака включала манипуляцию с цепочкой зависимостей, которая затронула ничего не подозревающих пользователей.
Как это работало:
Первоначальный компромисс:
- Злоумышленник взял на себя менее используемую зависимость под названием «Flatmap-stream».
- Они внедрили вредоносный код в «поток плоской карты».
Распространение:
- Скомпрометированный «Flatmap-stream» был включен в качестве зависимости в широко используемый пакет «event-stream».
- Многие проекты по незнанию установили скомпрометированный пакет event-stream.
Влияние:
Злоумышленник получил доступ к конфиденциальной информации ничего не подозревающих пользователей.
Инцидент подчеркнул риски атак на цепочку поставок через зависимости.
Уроки выучены:
Разработчики должны проверять и проверять свои пакеты, поддерживать актуальность зависимостей и проявлять осторожность в отношении названий и источников пакетов.
Бдительность и постоянный мониторинг необходимы для предотвращения подобных атак в цепочке поставок.
Защитите свои проекты с открытым исходным кодом с помощью Xygeni
Как уже говорилось, экосистема с открытым исходным кодом — это палка о двух концах: она способствует инновациям, но в то же время подвергает ваше программное обеспечение значительным рискам, таким как: установить тампер Вредоносное ПО, бэкдоры первого использования и атаки цепочки зависимостей. Последствия этих угроз серьезны, и защита вашей цепочки поставок программного обеспечения имеет решающее значение.
Ксигени предлагает мощные решения, разработанные для защиты ваших проектов с открытым исходным кодом от этих развивающихся угроз. Наши инструменты гарантируют, что ваши зависимости останутся в безопасности, сохраняя устойчивость вашего программного обеспечения и плавность процесса разработки.
Сделать умнееcisионы с комплексным анализом пакетов
Учитывая сложность пакетов с открытым исходным кодом, принятие обоснованного решения имеет решающее значение. Полный анализ пакета позволяет вам быстро оценить безопасность компонентов с открытым исходным кодом. С нашей платформой вы можете уверенно выбирать безопасные и надежные пакеты, избегая рисков небезопасных зависимостей. Сделав умный decisions заранее, вы создаете более надежные и безопасные приложения, которые выдерживают испытание временем.
Проактивная защита с помощью обнаружения вредоносных программ в реальном времени
Реагировать на угрозы после того, как они проникли в вашу систему, недостаточно. Вот почему Xygeni предлагает Обнаружение вредоносных программ в реальном времени для обнаружения угроз, таких как вредоносное ПО нулевого дня, в момент их появления. Наша система немедленно блокирует вредоносный код, не давая ему попасть в вашу среду разработки. Действуя быстро, вы обеспечиваете безопасность своих проектов с самого начала.
Обеспечьте безопасность вашей цепочки поставок с помощью постоянного мониторинга
В быстро меняющемся мире разработки программного обеспечения изменения происходят постоянно. Xygeni's Непрерывный мониторинг цепочки поставок Бдительно следит за каждым обновлением. Наша проактивная защита обнаруживает и блокирует подозрительные изменения в ваших зависимостях, предотвращая попадание скомпрометированных пакетов в ваши проекты. С Xygeni вы поддерживаете безопасную и надежную цепочку поставок, защищая свое программное обеспечение от потенциальных угроз.
Возьмите под контроль свою безопасность с Xygeni
Как вы увидели, риски в программном обеспечении с открытым исходным кодом реальны и растут. Решения безопасности Xygeni предоставляют вам инструменты для эффективного управления этими рисками. Сосредоточившись на раннем обнаружении, комплексном анализе пакетов и непрерывном мониторинге, вы можете защитить свое программное обеспечение от возникающих угроз. Не оставляйте свои проекты с открытым исходным кодом уязвимыми — улучшите свою стратегию безопасности сегодня с помощью Xygeni и обретите душевное спокойствие, зная, что ваше программное обеспечение и данные в безопасности.
Готовы ли вы защитить свои проекты с открытым исходным кодом? Позвольте Xygeni помочь вам опередить угрозы и создать устойчивое программное обеспечение, способное справиться с любыми будущими угрозами.
Посмотрите наше видео-демо





