- Автор темы
- #1
Исследователи из компании Socket обнаружили в репозитории NuGet девять вредоносных пакетов, которые содержат код с отложенной активацией. Малварь запрограммирована на срабатывание в период с августа 2027 по ноябрь 2028 года и нацелена на базы данных и ПЛК Siemens.
Все девять пакетов были опубликованы в 2023-2024 годах пользователем shanhai666:
На первый взгляд пакеты выглядели абсолютно безвредными: 99% кода относилось к легитимной функциональности, и только фрагмент из 20 строк имел вредоносную логику.
Как объясняют исследователи, малварь была нацелена на базы данных трех основных поставщиков в .NET-экосистеме: SQL Server, PostgreSQL и SQLite. Однако наиболее опасным оказался пакет Sharp7Extend, нацеленный на пользователей легитимной библиотеки Sharp7, которая используется для Ethernet-связи с программируемыми логическими контроллерами (ПЛК) Siemens.
Если обнаружена подходящая дата, запускается вероятностный механизм: код генерирует случайное число от 1 до 100, и если оно больше 80 (шанс 20%), вызывается команда принудительного завершения процесса через Process.GetCurrentProcess().Kill(). Для ПЛК-клиентов это означает мгновенную остановку работы.
Пакет Sharp7Extend использует противоположный подход, немедленно прерывая связь с ПЛК в 20% случаев. Этот вредоносный механизм работает до 6 июня 2028 года.
Также пакет применяет несколько других механизмов для саботажа. Первый — попытка прочитать несуществующее значение конфигурации, из-за чего инициализация всегда оканчивается неудачей.
Во втором случае код создает фильтр для внутренних операций ПЛК и устанавливает задержку выполнения от 30 до 90 минут. После этого операции записи в ПЛК, проходящие через фильтр, с вероятностью 80% повреждаются.
Исследователи подчеркивают, что последствия срабатывания такой «бомбы замедленного действия» могут быть катастрофическими.
Все девять пакетов были опубликованы в 2023-2024 годах пользователем shanhai666:
- MyDbRepository (последнее обновление: 13 мая 2023 года);
- MCDbRepository (последнее обновление: 5 июня 2024 года);
- Sharp7Extend (последнее обновление: 14 августа 2024 года);
- SqlDbRepository (последнее обновление: 24 октября 2024 года);
- SqlRepository (последнее обновление: 25 октября 2024 года);
- SqlUnicornCoreTest (последнее обновление: 26 октября 2024 года);
- SqlUnicornCore (последнее обновление: 26 октября 2024 года);
- Core (последнее обновление: 27 октября 2024 года);
- SqlLiteRepository (последнее обновление: 28 октября 2024 года).
На первый взгляд пакеты выглядели абсолютно безвредными: 99% кода относилось к легитимной функциональности, и только фрагмент из 20 строк имел вредоносную логику.
Как объясняют исследователи, малварь была нацелена на базы данных трех основных поставщиков в .NET-экосистеме: SQL Server, PostgreSQL и SQLite. Однако наиболее опасным оказался пакет Sharp7Extend, нацеленный на пользователей легитимной библиотеки Sharp7, которая используется для Ethernet-связи с программируемыми логическими контроллерами (ПЛК) Siemens.
Малварь использует методы расширения C# и внедряется в каждую операцию с БД или ПЛК. При каждом обращении код проверяет текущую системную дату и сравнивает ее с жестко закодированными триггерными датами в диапазоне от 8 августа 2027 до 29 ноября 2028.«Добавляя “Extend” к доверенному названию Sharp7, злоумышленники ориентировались на разработчиков, ищущих расширения или улучшения Sharp7», — говорят эксперты.
Если обнаружена подходящая дата, запускается вероятностный механизм: код генерирует случайное число от 1 до 100, и если оно больше 80 (шанс 20%), вызывается команда принудительного завершения процесса через Process.GetCurrentProcess().Kill(). Для ПЛК-клиентов это означает мгновенную остановку работы.
Пакет Sharp7Extend использует противоположный подход, немедленно прерывая связь с ПЛК в 20% случаев. Этот вредоносный механизм работает до 6 июня 2028 года.
Также пакет применяет несколько других механизмов для саботажа. Первый — попытка прочитать несуществующее значение конфигурации, из-за чего инициализация всегда оканчивается неудачей.
Во втором случае код создает фильтр для внутренних операций ПЛК и устанавливает задержку выполнения от 30 до 90 минут. После этого операции записи в ПЛК, проходящие через фильтр, с вероятностью 80% повреждаются.
Исследователи подчеркивают, что последствия срабатывания такой «бомбы замедленного действия» могут быть катастрофическими.
Цели и происхождение этой вредоносной кампании пока неясны, но масштаб и изощренность указывают на серьезную подготовку. Особенно тревожным сигналом является нацеленность на промышленные системы управления, ведь такие атаки могут привести к авариям на производстве.«Сочетание немедленного случайного завершения процесса (через BeginTran()) и отложенного повреждения данных при записи (через ResFliter) создает сложную многоуровневую атаку, которая эволюционирует со временем», — пишут специалисты.
Socket призывает организации немедленно проверить свои проекты на наличие перечисленных выше пакетов. Если хотя бы один из них найден, следует считать систему скомпрометированной.«Эта кампания демонстрирует сложные методы, редко используемые при атаках на цепочки поставок а NuGet. К 2027–2028 годам, когда сработает вредоносное ПО для баз данных, разработчики, установившие эти пакеты в 2024 году, уже перейдут в другие проекты или другие компании, а двадцатипроцентная вероятность выполнения маскирует атаки под случайные сбои и отказы оборудования, — заключают исследователи. — Это делает реагирование на инциденты и проведение расследования практически невозможными: организации не смогут отследить вредоносное ПО до точки его внедрения, определить, кто установил скомпрометированную зависимость, и воссоздать четкую хронологию компрометации, что фактически уничтожает все следы атаки».
