Код оказался под угрозой

Код оказался под угрозой

Жители России должны осмотрительно подходить к обновлению программного обеспечения. С таким предупреждением выступили в Сбербанке, сославшись на участившиеся случаи угроз заражения пользовательских устройств различными вирусами. Поводом для этого стали проблемы у российских и белорусских IT-разработчиков, использующих различные решения на базе open source. Как оказалось, ряд программных продуктов и библиотек были заражены различными вредоносными программами – от баннеров с политическими лозунгами до вирусов, уничтожающих данные на компьютерах.

«Различный контент и вредоносный код могут быть встроены в свободно распространяемые библиотеки, используемые для разработки программного обеспечения. Использование подобного программного обеспечения может привести к заражению вредоносным ПО личных и корпоративных компьютеров, а также IT-инфраструктуры», – предупредил своих клиентов Сбербанк.

Как пояснили «Октагону» российские разработчики, решения на базе open source включают в себя различные библиотеки и программные средства, которые создаются энтузиастами и поддерживаются целым сообществом программистов.

Основная идея подобного ПО заключается в том, что сообщество выпускает какие-то продукты, которые в своих проектах могут бесплатно использовать другие разработчики.

Это значительно упрощает скорость создания проектов.

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

Впрочем, уверяет разработчик Павел Зиновкин, опасность так называемой supply chain attack (когда вредоносный код внедряется через решения на базе open source) не нова, и раньше сообщество с подобными инцидентами сталкивалось, но в данном случае разработчиков поразили масштаб явления и степень враждебности авторов, внедряющих вредоносную программу.

С коллегой согласен и разработчик Антон Губарев, отметивший, что для всего сообщества open source ситуация с намеренным внедрением вредоносного кода стала беспрецедентной.

– Всегда доверия было больше именно к открытым проектам, чем к закрытым коммерческим. Теперь отношение к этому точно поменяется, и далеко не только в России, – отметил Губарев.

Свободное ПО оказалось в опасности

Сегодня российские и белорусские программисты собирают сведения о скомпрометировавших себя решениях. Как следует из информации в репозитории на GitHub, разработчики обнаружили более сотни опасных проектов. Больше всего продуктов (на данный момент 93) имеют не критическую уязвимость, а только различные политические лозунги и баннеры. Эти баннеры показываются разработчикам из России и Белоруссии – программа выявляет их или по временной зоне, или по IP-адресам.

Как рассказывают программисты, подобные пропагандистские материалы демонстрировались даже обычным пользователям. Например, после обновления заражённой библиотеки open source в одной из игр у пользователей начал появляться политический контент. Проблему выявили на этапе закрытого тестирования обновления.

Кроме безобидной рекламы, были зафиксированы и случаи использования критически опасных продуктов (на данный момент их насчитывается 19). Как сообщил «Октагону» руководитель интернет-агентства Shulepov-Code Александр Шулепов, один из самых ярких примеров – библиотека node-ipc, которую поддерживает разработчик Брэндон Нозаки Миллер с ником RIAEvangelist. Вредоносный код внедрил сам программист.

– Пользователи заметили, что некоторые последние обновления популярной библиотеки запускают вредоносный код, удаляющий все данные с компьютера, – говорит Александр Шулепов.

«С помощью кодирования Base64 он [разработчик] скрыл намерение, которое проверяет IP-адрес пользователя, и если он из России или Белоруссии, то все файлы у него на ПК стираются и заменяются на эмоджи “сердечко”. Позже разработчик говорил, что это был способ “ненасильственного протеста” против ситуации на Украине».

Александр Шулепов | руководитель интернет-агентства Shulepov-Code Александр Шулепов
руководитель интернет-агентства Shulepov-Code

Как сообщили изданию в компании Group-IB, которая занимается вопросами кибербезопасности, кейс с внедрением вредоносного ПО в node-ipc стал одним из самых резонансных, благодаря чему правка вредоносного кода была оперативно удалена. Однако библиотеки узкого назначения и непопулярные могут добавлять вредоносный код, не привлекая внимания сообщества.

– Мы встречали ситуации, когда авторы кода делают pull request (предложение изменения кода) библиотек с различными призывами и объявлениями, но до мастер-веток (продакшен-версий) библиотек они, как правило, не допускаются. В целом нужно иметь в виду, что разработчики, которые вставляют вредоносное программное обеспечение в коды в продакшен-версии, теряют доверие комьюнити оpen source, так как внесение таких правок противоречит философии свободного ПО, – пояснили в Group-IB.

По словам разработчиков, несмотря на столь печальный прецедент, это не должно привести к значительным проблемам в отрасли, поскольку существует алгоритм решения – соблюдать «цифровую гигиену».

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