Вредоносный код протеста

Как программисты-активисты выражают свое несогласие

На фоне российской военной операции на Украине участились случаи появления так называемого протестного программного обеспечения (protestware). Чаще всего этот особый вредоносный код не представляет большой угрозы и приводит лишь к появлению политического заявления на экране зараженного компьютера. Однако порой разработчики-активисты прибегают и к куда более радикальным действиям.

Фото: Игорь Иванко, Коммерсантъ

Евангелист-разрушитель

Node-ipc — программа с открытым исходным кодом, которая задает формат эффективного обмена данными между различными устройствами. Рядовой пользователь об этой программе может никогда и не услышать, а вот среди разработчиков всевозможных приложений node-ipc очень популярна. Еженедельно ее скачивают по миллиону раз.

В начале марта независимый разработчик Брэндон Нодзаки Миллер, известный под ником RIAEvangelist, добавил сразу несколько обновлений в библиотеку node-ipc — 7 и 8 марта здесь появились версии 10.1.1 и 10.1.2. Как вскоре выяснилось, Миллер умышленно добавил в эти версии обновлений вредоносный код, который при активации программы инициировал проверку IP-адреса пользователя. Если тот оказывался из России или Белоруссии, программа автоматически начинала уничтожать содержимое всех файлов на зараженном устройстве, до которых она могла добраться. Так RIAEvangelist выразил свой протест против военной операции России на Украине.

Следующая версия программы была добавлена в библиотеку (на этот раз другим пользователем) спустя сутки, и там вредоносного кода уже не было. А версии 10.1.1 и 10.1.2 были удалены из библиотеки node-ipc. Администрация GitHub пометила эти версии как вредоносные только через неделю после их публикации.

Сколько именно разработчиков успели скачать зараженную версию node-ipc — пока неясно. Одних только программ, использующих код node-ipc,— сотни. А готовых пользовательских приложений, работающих с этими программами, могут быть тысячи.

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

18 марта Сбербанк выпустил заявление, в котором призвал пользователей отказаться от обновления программного обеспечения из-за роста рисков заражения устройств.

«В настоящее время участились случаи внедрения в свободно распространяемое программное обеспечение провокационного медиаконтента. Кроме того, различный контент и вредоносный код могут быть встроены в свободно распространяемые библиотеки, используемые для разработки программного обеспечения. Использование подобного программного обеспечения может привести к заражению вредоносным ПО личных и корпоративных компьютеров, а также ИТ-инфраструктуры»,— говорилось в сообщении банка. В заявлении никак не упоминалась история Миллера, однако эксперты журнала Fortune связали эти два события.

Что касается самого Миллера, то его протест не окончен. Выпущенная им версия node-ipc 11.0.0 и последовавшая за ней 11.1.0 содержат код, который создает на рабочем столе зараженного устройства текстовый файл WITH-LOVE-FROM-AMERICA.txt, в котором содержится призыв Миллера против военных действий на Украине.

Сообщество разработчиков и специалистов в сфере кибербезопасности крайне негативно отреагировало на поступок Миллера.

Как отмечают эксперты, для ПО на открытом исходном коде нет ничего важнее фактора доверия, а подобные действия серьезно подрывают его.

«Даже если преднамеренный и опасный поступок разработчика RIAEvangelist будет воспринят некоторыми как законный акт протеста, как это отразится на его будущей репутации и его месте в сообществе разработчиков? Поверят ли люди в то, что этот разработчик в будущем не прибегнет к чему-то подобному или к даже более агрессивным действиям?» — говорит исследователь компании Snyk, работающей в сфере компьютерной безопасности, Лиран Таль.

Технический директор компании Sonatype, специализирующейся на работе с программами на открытом исходном коде, Брайан Фокс заявил изданию SC Media, что теперь пользователи могут отвернуться от многих независимых разработчиков: «Вы должны доверять людям, которые поставляют вам компоненты».

Онлайн-война за мир и процветание

Программное обеспечение, в которое разработчики в знак протеста против какого-либо общественно-политического события или против конкретных действий властей внедряют вредоносный код, получило название protestware — как производное от слов protest («протест») и software (ПО).

Еще один пример этого явления датируется январем этого года. Тогда программист Марак Сквайрз опубликовал обновления сразу для двух своих программ. И если у node-ipc около миллиона загрузок в неделю, то у программ Сквайрза было 22 млн скачиваний в неделю. А встроены они примерно в 21 тыс. приложений.

Программа, которой разработчики доверяли годами, превратила их приложения в бесконечный генератор случайных символов на экране.

Всю ту тарабарщину, которую теперь выдавали приложения, предваряла надпись: «Liberty Liberty Liberty» («Свобода Свобода Свобода»). А в текстовом файле, сопровождавшем обновление библиотеки, Сквайрз оставил короткое послание: «Что на самом деле случилось с Аароном Шварцем?».

Аарон Шварц был американским интернет-активистом, который выступал за принцип открытой науки и доступности научных данных для всего интернет-сообщества. В сентябре 2010 года он проник на территорию Массачусетского технологического института (MIT) и подключил свой ноутбук к сетевому коммутатору в распределительном шкафу института. Через аккаунт MIT Шварц получил доступ к онлайн-библиотеке научных журналов, книг и других материалов JSTOR, откуда скачал 4,8 млн статей. JSTOR не стала выдвигать обвинения против Шварца, но потребовала вернуть все украденные документы.

Однако в январе 2011 года Шварц был задержан и обвинен во взломе и проникновении с целью совершения уголовного преступления. Спустя полгода его выпустили под залог.

Статьи обвинения постоянно менялись, но в итоге в сентябре 2012 года федеральная прокуратура выдвинула Аарону обвинения по 13 пунктам. Шварцу грозило до 50 лет тюрьмы и штраф до $1 млн. Обвинение предложило ему признать вину в обмен на тюремный срок всего в шесть месяцев. Шварц отказался. В начале января 2013 года труп Аарона Шварца был обнаружен в его квартире, после чего вся эта история приобрела зловещий оттенок и привлекла внимание как идейных борцов с закрытостью данных, так и многочисленных сторонников теории заговоров.

Разработчик протестного ПО в поддержку Шварца, Марак Сквайрз, считает, что Шварц, проникнув в систему MIT, на самом деле обнаружил там большие массивы детского порно и позже был убит представителями власти.

Когда новое не значит безопасное

Распространение protestware лишь одна из форм протеста. Реакция хакеров-активистов на то или иное событие может быть совершенно разной — от простой рассылки призывов до блокировки целых компьютерных систем и взлома баз данных.

Так, например, в начале этого года группа «белорусских киберпартизан», как они сами себя называют, взломала и заблокировала доступ к серверам Белорусской железной дороги. Они опубликовали заявление в Twitter и Telegram, где выдвинули требования об освобождении 50 политзаключенных, а также о прекращении использования транспортной инфраструктуры Белорусской железной дороги для передвижения российских войск по стране. Та же группировка, кроме этого, распространяла в сети личные данные людей (от сотрудников полиции и военнослужащих до представителей органов власти), которых она считала виновными в нарушении прав человека или подавлении протестов, прокатившихся по стране в 2020-м.

А в прошлом году онлайн-издание The Quint, ссылаясь на данные индийской организации по защите данных Quick Health, сообщало о распространении вируса, который блокировал компьютеры пользователей по всей стране. Вирус распространялся через рассылку по электронной почте и содержался в файле Word, который был прикреплен к письму. Как только пользователь открывал файл, на его компьютер попадал вирус от хакерской группировки Khalsa Cyber Fauj. Вирус зашифровывал все файлы на зараженном компьютере, а при попытке открыть их пользователи видели сообщение от хакеров. В нем говорилось, что хакерская группировка поддерживает протестное движение фермеров. Вместо традиционного для таких хакерских атак требования выкупа выдвигалось требование к федеральному правительству Индии об отзыве ряда законов, принятых в сентябре 2020 года и направленных на модернизацию аграрного сектора страны.

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

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

Это, по мнению представителей Electronic Frontier Foundation, одной из ведущих мировых организаций по защите цифровой privacy, свободы речи и инноваций, уже показала история Брэндона Н. Миллера. «Это ужасная идея… результаты которой могут быть кошмарными и не соответствующими (заявленным целям.— “Ъ”),— считает Купер Куинтин, один из ведущих экспертов EFF в области кибербезопасности.— Что, если некая российская правозащитная или антивоенная группа, или российская больница используют это конкретное (зараженное.— “Ъ”) ПО? Такая акция, притом что она задумывалась как простой ненасильственный протест своим создателем, может привести к потере важных данных… медицинских документов или даже к гибели невинных людей… Рандомная бездумная рассылка… —это такое духоподъемное действие, равняющееся стрельбе в темноте».

Кирилл Сарханянц

Вся лента