Уязвимости в проектах open-source годами остаются незамеченными

Уязвимости в проектах open-source годами остаются незамеченными

Создавая программы для бизнеса, разработчики все больше полагаются на компоненты с открытым исходным кодом. Проведенное в GitHub исследование показало, что современные приложения могут на 80% состоять из зависимостей, поэтому безопасность последних особенно важна. К сожалению, уязвимости в кодах, связанных зависимостью, выявляются в основном случайно и могут просуществовать без внимания более четырех лет.

Инструментарий на GitHub позволяет быстро оповещать разработчиков о новых брешах в проектах open-source и наличии патчей, но проблема детектирования таких нарушений безопасности сильно тревожит операторов сервиса. Чтобы определить масштабы бедствия, исследователи изучили (PDF) содержимое 45 тыс. открытых репозиториев, активных как минимум два года — с октября 2018-го по сентябрь текущего.

Найденные связные компоненты были разделены на пять групп в зависимости от языка, на котором они написаны (PHP, Java, JavaScript, .NET, Python и Ruby). Как оказалось, чаще всего разработчики используют сторонние библиотеки JavaScript (94% приложений), Ruby и .NET (по 90%).

Темпы латания брешей в пакетах open-source оказались приемлемыми: участники сообщества закрывают их в течение месяца, и пользователи, получив извещение, обычно успевают за неделю внести исправления в свой продукт. Однако далеко не все оповещения GitHub заслуживают пристального внимания — в 83% случаев предметом алерта оказалась ошибка, не составляющая угрозу безопасности. Остальные предупреждения были оправданными: в open-source объявилась уязвимость (или бэкдор). К сожалению, такие проблемы в основном находят в заброшенных или редко используемых проектах.

Исправить ситуацию, по мнению исследователей, можно лишь объединенными усилиями разработчиков, операторов хранилищ и пользователей. Все они должны регулярно проверять зависимости в коде на уязвимость, а также расширять использование средств автоматизации оповещений и патчинга связных кодов — по данным GitHub, это поможет ускорить латание дыр в приложениях в 1,4 раза.

Из брешей, зафиксированных в 2020 году, наиболее опасными исследователи сочли Curveball (CVE-2020-0601), SMBGhost (CVE-2020-0796) и Zerologon (CVE-2020-1472). Эти уязвимости затронули большое количество разработок и поставили под угрозу множество оконечных устройств и корпоративных сетей.

С точки зрения патчинга весьма неприятна также CVE-2020-8203 в npm-пакете lodash, которая позволяет внести нежелательные изменения в прототип объекта JavaScript. Исследование показало, что сценарий lodash пользуется большой популярностью у разработчиков бизнес-программ, и появление CVE-2020-8203 вызвало более пяти млн алертов, запущенных с помощью бота GitHub.

Anti-Malware Яндекс ДзенПодписывайтесь на канал "Anti-Malware" в Яндекс Дзен, чтобы первыми узнавать о новостях и наших эксклюзивных материалах по информационной безопасности.

Android-банкер Nexus отказывается обкрадывать жителей бывшего СНГ

На сервисе, созданном на основе банковского трояна для Android, ввели новые правила. В частности, клиентам запрещается использовать Nexus в атаках на территории стран, ранее входивших в состав СНГ.

Проведенный в Cleafy анализ образцов мобильного зловреда подтвердил, что он обладает всеми функциями для угона аккаунтов онлайн-банкинга и криптосервисов. Он умеет применять оверлеи, регистрировать клавиатурный ввод, воровать 2FA-коды из СМС, а также сид-фразы, открывающие доступ к кошелькам.

Криминальный сервис работает по модели MaaS (Malware-as-a-Service, вредонос как услуга); стоимость аренды трояна, по меркам черного рынка, сильно завышена — $3000 в месяц. В настоящее время список банковских приложений, атакуемых Nexus, включает 450 позиций.

Данные телеметрии показали, что новобранца начали использовать в реальных атаках задолго до официального запуска MaaS-сервиса (27 января). Первые всплески активности, связанной с Nexus, были зафиксированы в середине прошлого года.

 

Географические ограничения, введенные владельцами банкера, были также реализованы в коде. Перед запуском основных функций вредонос выполняет preloadCheck(), чтобы удостовериться в том, что атака разрешена. В противном случае он просто завершает свой процесс.

Список стран, где Nexus откатывает заражение:

  • Азербайджан,
  • Армения,
  • Белоруссия,
  • Казахстан,
  • Киргизия,
  • Молдавия,
  • Россия,
  • Таджикистан,
  • Узбекистан,
  • Украина,
  • Индонезия.

Итальянские исследователи отметили и другие новые возможности зловреда: удаление входящих СМС, запуск / останов модуля кражи 2FA, самообновление (с этой целью Nexus периодически отправляет пинг-запрос на свой сервер).

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

Anti-Malware Яндекс ДзенПодписывайтесь на канал "Anti-Malware" в Яндекс Дзен, чтобы первыми узнавать о новостях и наших эксклюзивных материалах по информационной безопасности.

RSS: Новости на портале Anti-Malware.ru