Вы используете устаревший браузер!

Страница может отображаться некорректно.

Незваные гости

Незваные гости

Другие выпуски этой рубрики (67)
  • добавить в избранное
    Добавить в закладки

Исходный код открыт для всех

Прочитали: 1209 Комментариев: 82 Рейтинг: 87

21 ноября 2018 года случилось странное. GitHub-
пользователь @FallingSnow сообщил, что в одной из
зависимостей event-stream спрятан вредоносный код,
который фактически представляет собой бэкдор
неизвестной функциональности.

Источник

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

Рассмотрим доводы сторонников такого подхода.

Любой желающий может проанализировать код программы и понять, что она делает на самом деле.

Во-первых, не любой. Для этого необходимо как минимум обладать познаниями в области программирования и быть знакомым с языком, на котором написана программа.

Во-вторых, код можно самостоятельно проанализировать, если объем его невелик. Если же мы возьмем программу, код которой состоит из нескольких сотен страниц, доскональное его изучение может отнять слишком много времени.

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

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

Итак, началось расследование. Благодаря истории коммитов на GitHub сразу стало понятно, что вредоносный коммит сделал другой пользователь @right9ctrl, которому были предоставлены права мейнтейнера для event-stream. На его счету ряд нормальных коммитов, а автор проекта Доминик Карр (@dominictarr) передал ему права мейнтейнера.

Источник

Инструменты контроля версий — такие, например, как используются на Github — позволяют не допустить несанкционированного изменения программы.

С одной стороны – да. Но с другой, это не спасает от модификации, скажем, зависимых пакетов, как это случилось с event-stream. Кроме того, в данном случае бэкдор существовал всего три дня, после чего его автор выпустил новую версию, уже не содержащую вредоносный код, однако, за это время модифицированный компонент попал на десятки тысяч компьютеров.

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

И атака на event-stream является этому отличным примером. Что такое event-stream? Это всего лишь модуль, используемый для обработки потоков в Node.JS, то есть вспомогательный инструмент для реализации более крупных проектов. Любопытно отметить, что вредоносный код был внедрен даже не в саму библиотеку event-stream: в нее была добавлена зависимость на сторонний пакет, содержащий бэкдор.

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

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

#Linux #бэкдор #Dr.Web

Dr.Web рекомендует

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

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

Используемые в Dr.Web Security Space 12.0 несигнатурные методики детектирования позволяют в режиме реального времени анализировать потенциально опасную активность приложений и своевременно принимать меры, направленные на недопущение негативных последствий.

Получайте Dr.Web-ки за участие в проекте

Каждая активность = 1 Dr.Web-ка

Оцените выпуск

Сделайте репост

Поставьте «Нравится»

Чтобы получать награды надо войти на страницу выпуска через аккаунт на сайте «Доктор Веб» (или создать аккаунт). Аккаунт должен быть связан с вашим аккаунтом в социальной сети. Видео о связывании аккаунта.


Нам важно ваше мнение

10 Dr.Web-ок за комментарий в день выхода выпуска или 1 Dr.Web-ка в любой другой день. Комментарии публикуются автоматически и постмодерируются. Правила комментирования новостей «Доктор Веб».

Чтобы оставить комментарий, нужно зайти через свой аккаунт на сайте «Доктор Веб». Если аккаунта еще нет, его можно создать.

Комментарии пользователей


 
На страницу: