В пакетах NuGet обнаружены «временные бомбы» для промышленных систем

information security

На платформе распространения программного обеспечения NuGet выявлены вредоносные пакеты, содержащие скрытые нагрузки, запрограммированные на активацию в 2027 и 2028 годах. Целями атаки становятся системы управления базами данных и промышленные контроллеры Siemens S7. Эксперты предупреждают, что встроенный код использует вероятностный механизм срабатывания, что усложняет его обнаружение.

NuGet представляет собой менеджер пакетов с открытым исходным кодом, предназначенный для распространения библиотек .NET. Разработчики часто используют его для интеграции готовых решений в свои проекты. Однако, как показало исследование компании Socket, злоумышленники активно эксплуатируют эту инфраструктуру для распространения скрытых угроз.

Специалисты Socket обнаружили девять вредоносных пакетов, опубликованных под учетной записью shanhai666. Эти пакеты совмещали легитимный функционал с вредоносным кодом. Например, пакет Sharp7Extend имитировал популярную библиотеку Sharp7, предназначенную для взаимодействия с программируемыми логическими контроллерами (ПЛК) Siemens. Аналогичным образом другие пакеты нацеливались на реализации баз данных SQL Server, PostgreSQL и SQLite.

Ключевой особенностью атаки является использование «временных бомб». Вредоносная нагрузка активируется только при совпадении текущей даты системы с заранее заданными значениями, которые варьируются от августа 2027 до ноября 2028 года. При этом код дополнительно генерирует случайное число от 1 до 100. Если результат превышает 80, происходит немедленное завершение процесса-хоста через вызов "Process.GetCurrentProcess().Kill()".

временные бомбы

Для промышленных систем, использующих ПЛК, подобные действия могут привести к катастрофическим последствиям. Например, пакет Sharp7Extend не только нарушает коммуникацию с контроллерами, но и внедряет механизм коррупции данных. Через 30-90 минут после активации пакет начинает искажать команды записи в ПЛК с вероятностью 80%. В результате исполнительные механизмы могут перестать получать команды, а системы безопасности - терять управление.

Исследователи подчеркивают, что вредоносный код составляет менее 1% от общего объема пакетов, что значительно усложняет его обнаружение средствами статического анализа. Более того, злоумышленники используют методы расширения C# (extension methods), что позволяет прозрачно внедрять логику в каждую операцию базы данных или ПЛК.

На момент публикации отчета пакеты под учетной записью shanhai666 были удалены с платформы NuGet. Однако, по данным Socket, их успели скачать почти 9 500 раз. Это свидетельствует о высоком риске для организаций, которые могли unintentionally интегрировать опасные зависимости в свои проекты.

Для предотвращения инцидентов специалисты рекомендуют немедленно провести аудит активов на наличие следующих пакетов:

  • SqlUnicorn.Core
  • SqlDbRepository
  • SqlLiteRepository
  • SqlUnicornCoreTest
  • SqlUnicornCore
  • SqlRepository
  • MyDbRepository
  • MCDbRepository
  • Sharp7Extend

В случае обнаружения любого из них следует предположить компрометацию и принять меры по изоляции затронутых систем.

В промышленных средах, где используется Sharp7Extend, критически важно проверить целостность операций записи в ПЛК, проанализировать логи систем безопасности на предмет пропущенных команд и реализовать механизмы верификации записи для критических операций. Комплексный подход к мониторингу и аудиту позволяет снизить риски, связанные с подобными целевыми атаками.

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

Комментарии: 0