Экспертами Лаборатории Касперского были обнаружены экземпляры вредоносной программы TDL4 (обновление TDSS), которые используют 0-day уязвимость для повышения привилегий в системах Windows 7/2008 x86/x64 (Windows Task Scheduler Privilege Escalation, CVE: 2010-3888 ). Данная уязвимость первоначально была обнаружена во вредоносной программе Stuxnet. Использование эксплоита к данной уязвимости позволяет руткиту TDL4 устанавливаться в системе без каких либо сообщений от защитных механизмов UAC, по умолчанию функционирующих во всех современных операционных системах Windows. При запуске троянца в системе, например в Windows 7, процесс получает отфильтрованный маркер (работа UAC), с привилегиями обычного пользователя. В результате чего, попытка внедрится в процесс диспетчера очереди печати завершается с ошибкой (ERROR_ACCESS_DENIED). В блоге Лаборатории Касперского говорится, что работы по внедрению в диспетчер очереди печати ведутся и в старых версиях этой вредоносной программы. В новых же модификациях после ошибки идет попытка использования 0-day эксплоита повышения привилегий до "LocalSystem" Инсталлятор руткита имеет при себе специальный код для обхода некоторых проактивных защит. "С целью препятствовать внедрению в spoolsv руткита TDL4, некоторые проактивные защиты перехватывают в SSDT функцию NtConnectPort и, если имя порта "\RPC Control\spoolss", выдают сообщение о попытке внедрения в диспетчер очереди печати. Разработчики вредоносной программы очень просто решили эту "проблему" - они в своем собственном процессе перехватили ntdll.ZwConnectPort, где в обработчике перехватчика сверяют значение переданного параметра ServerPortName в функцию (UNICODE строка), и, если это "\RPC Control\spoolss", заменяют ее на аналог с использованием символьной ссылки на корневой каталог пространства имен диспетчера объектов", пишет Сергей Голованов, эксперт Лаборатории Касперского. Ранее другие антивирусные компании сообщили, что руткит TDL4 проникает в 64-битные Windows 7, обходя системы ядра Windows, работающие на основе политик подписи исполняемого низкоуровневого кода. То есть, любой код на уровне ядра Windows, работающий в системе, должен иметь соответствующую подпись, говорящую о том, что данный код (чаще всего это драйвер) происходит из надежного источника. После проникновения в систему, руткит модифицирует главную загрузочную запись на жестком диске компьютера, изменяя условия загрузки ОС. По словам создателей, руткит меняет MBR на диске и устанавливает специальную политику под названием LoadIntegrityCheckPolicy, которая блокирует процесс валидации загружаемых программ и позволяет запускать на уровне ядра другие неподписанные DLL-библиотеки. Согласно данным компании Prevx, руткит TDL является "самым продвинутым" набором для удаленного управления компьютером. Использовать его можно как бэкдор для инсталляции клавиатурных шпионов и других видов злонамеренного программного обеспечения. Разработчики говорят, что одна из наиболее продвинутых систем защиты в Windows - это подпись кода, кроме того в 64-битной версии системы используется также и технология PatchGuard, которая блокирует драйверы, пытающиеся заменить собой некоторые важные функции ядра системы Windows. TDL за счет операций с загрузочным сектором обходит оба этих момента.
Источник