Эксперты «Лаборатории Касперского» обнаружили неизвестный язык программирования в троянце Duqu | Kaspersky Lab RU

Эксперты «Лаборатории Касперского» обнаружили неизвестный язык программирования в троянце Duqu

07.03.2012

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

Duqu представляет собой сложную троянскую программу, созданную авторами скандально известного червя Stuxnet. Главная задача Duqu — обеспечить злоумышленникам доступ в систему с целью кражи конфиденциальной информации. Впервые этот троянец был обнаружен в сентябре 2011 года, однако, по данным «Лаборатории Касперского», следы вредоносного кода, имеющего отношение к Duqu, появились еще в августе 2007 года. Специалисты компании зафиксировали более десятка инцидентов, произошедших при участии этого зловреда, причем большинство его жертв находились в Иране. Анализ рода деятельности организаций, пострадавших в результате соответствующих инцидентов, а также характера информации, на получение которой были направлены атаки, позволяет предположить, что основной целью создателей троянца была кража информации об автоматизированных системах управления, используемых в различных отраслях промышленности, а также сбор данных о коммерческих связях целого ряда иранских организаций.

Одним из важнейших нерешенных вопросов, связанных с Duqu, является то, как эта троянская программа обменивалась информацией со своими командными серверами (C&C) после заражения компьютера-жертвы. Модуль Duqu, отвечающий за коммуникацию с командными серверами, является частью его библиотеки с основным кодом (Payload DLL). При детальном изучении данной библиотеки эксперты «Лаборатории Касперского» обнаружили, что часть её кода, отвечающая за коммуникацию с командным сервером, написана на неизвестном языке программирования, и назвали этот участок «Фреймворк Duqu».

В отличие от остального кода Duqu, Фреймворк Duqu не написан на языке C++ и скомпилирован не при помощи Microsoft's Visual C++ 2008. Возможно, авторы использовали собственные средства разработки для генерации промежуточного кода на C, либо они использовали совершенно иной язык программирования. В любом случае, эксперты пришли к выводу, что язык является объектно-ориентированным и оптимально подходит для разработки сетевых приложений.

Язык, использованный в Фреймворке Duqu, является высокоспециализированным. Он позволяет Payload DLL работать независимо от остальных модулей Duqu и обеспечивает подключение к выделенному командному серверу несколькими способами, в т.ч. через Windows HTTP, сетевые сокеты и прокси-серверы. Он также позволяет библиотеке обрабатывать прямые HTTP-запросы от командного сервера, незаметно пересылает копии украденных данных с зараженной машины на командный сервер и даже может доставлять дополнительные вредоносные модули на другие компьютеры в составе сети, т.е. создает возможность контролируемо и скрытно распространять заражение на другие компьютеры.

«Учитывая масштаб проекта Duqu, весьма вероятно, что созданием Фреймворка Duqu занималась совершенно другая команда — не та, что разрабатывала драйверы и писала эксплойты для заражения системы, — считает Александр Гостев, главный антивирусный эксперт «Лаборатории Касперского». — Принимая во внимание чрезвычайно высокий уровень кастомизации и эксклюзивности, имевший место при создании языка программирования, можно предположить, что он был разработан с целью не только затруднить понимание сторонними лицами особенностей операции по кибершпионажу и взаимодействия с командными серверами, но и отделить этот проект от работы других групп, участвовавших в создании Duqu и отвечавших за написание дополнительных элементов вредоносной программы».

По словам Александра Гостева, создание специализированного языка программирования демонстрирует высочайший уровень квалификации разработчиков, участвовавших в проекте, и указывает на то, что для его реализации были мобилизованы значительные финансовые и людские ресурсы.

«Лаборатория Касперского» обращается к сообществу программистов с просьбой о помощи в исследовании троянца Duqu: если вам что-то известно о средстве разработки, языке или компиляторе, который может генерировать подобный код, пожалуйста, свяжитесь с нашими экспертами по адресу stopduqu@kaspersky.com.

Полную версию анализа Фреймворка Duqu, подготовленную Игорем Суменковым и Костином Раю, можно найти на сайте www.securelist.com/ru.

© АО «Лаборатория Касперского», 1997 - 2016