Тайна неизвестного языка программирования в троянце Duqu раскрыта

Тайна неизвестного языка программирования в троянце Duqu раскрыта

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

Эксперт компании Игорь Суменков пишет, что сообщения о таинственном "фреймворке Duqu" собрали более 200 комментариев и 60 электронных писем - результат, превысивший все ожидания. Наиболее популярными у участников обсуждения были такие варианты, как LISP, Forth, Erlang, Google Go, Delphi, OO C; кроме того, высказывались предположения, что специфика проблемного кода связана с использованием устаревших компиляторов С++ и других языков. Автор отмечает также несколько комментариев и писем, которые оказались наиболее полезны специалистам "Лаборатории Касперского".

"Помощь зала" позволила точно установить, что злоумышленники использовали компилятор из поставки Microsoft Visual Studio. Проведя ряд экспериментов с различными модификациями и настройками, эксперт сумел воспроизвести код функции конструктора и получить из него бинарный код, аналогичный обнаруженному в Duqu. В итоге было сделано заключение, что т.н. "фреймворк Duqu" является результатом компиляции исходного текста на языке С посредством Visual Studio 2008 с параметрами /O1 /Ob1. Автор блог-записи поясняет, что возможны два варианта развития событий: либо при написании кода использовалась объектно ориентированная надстройка С, либо над ним работал программист, применявший соответствующие методы для "чистого" С. Более вероятным эксперту представляется первый вариант, поскольку количество однотипного кода в тексте предполагает наличие препроцессора.

По мнению аналитика, использование объектно ориентированного расширения языка С могло быть продиктовано либо недоверием к компиляторам С++, либо потребностью в широкой переносимости / совместимости. Оба варианта с высокой степенью вероятности указывают на то, что разработка "фреймворка Duqu" велась профессиональными программистами "старой школы", имеющими многолетний опыт работы. Подход, примененный создателями Duqu, задействуется обычно в крупных коммерческих программных проектах, в то время как во вредоносных программах он практически не встречается.

Securelist

Письмо автору

" />

Нейросеть с сюрпризом: AppSec.Track проверит модели из Hugging Face

ML-модель из публичного репозитория может оказаться не только умной, но и с неприятным сюрпризом внутри. AppSec Solutions добавила в платформу AppSec.Track предварительную проверку моделей из Hugging Face. По заявлению компании, это первое российское решение, которое блокирует потенциально опасные модели до их попадания на машины разработчиков и в CI.

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

Модели проверяются без запуска. AppSec.Track разбирает файлы PyTorch, TensorFlow, Keras и другие сериализованные форматы, включая вложенные архивы, и ищет код, способный выполниться при загрузке. Обнаруженным угрозам присваивается уровень критичности.

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

В AppSec Solutions считают, что со временем индустрия перейдёт на безопасный формат safetensors. Но пока публичные хабы забиты pickle-файлами, доверять модели только за красивые метрики — так себе стратегия.

Второй рубеж защиты работает на этапе сборки. AppSec.Track формирует SBOM и проверяет библиотеки и зависимости по собственной базе уязвимостей. Она охватывает PyPI, npm, Maven, NuGet, CUDA, Julia и другие экосистемы. Фид можно подключить онлайн или развернуть в закрытом контуре.

Политики безопасности настраиваются один раз и затем применяются автоматически. Сама модель проходит досмотр при входе и повторно не сканируется, а её окружение контролируется при каждой сборке. Получается вполне понятный фейс-контроль: нейросеть сначала показывает, что у неё внутри, и только потом идёт работать.

RSS: Новости на портале Anti-Malware.ru