Рубрика «bootkit»

На прошлой неделе эксперты «Лаборатории Касперского» опубликовали подробный отчет о вредоносной программе MoonBounce. MoonBounce является буткитом: код внедряется в прошивку UEFI и таким образом может пережить замену жесткого диска или полную переустановку операционной системы в ноутбуке или ПК. Имплант предназначен для запуска другого вредоносного кода, который, в свою очередь, инициирует получение дальнейшей полезной нагрузки из Интернета.

Security Week 2204: MoonBounce, вредоносный код в UEFI - 1

Сопоставив поведение MoonBounce с другим вредоносным кодом и проанализировав взаимодействие с сетевой инфраструктурой, исследователи предположили, что за атакой стоит китайскоязычная группировка APT41. MoonBounce использует достаточно свежие приемы заражения. До этого возможность «закрепляться» в прошивке UEFI на материнской плате была обнаружена только в двух других недавних атаках.
Читать полностью »

Привет, Хабровчане!
В конце августа в OTUS запускается 2 мощных курса по обратной разработке кода (реверс-инжиниринг). В связи с этим приглашаем вас на День Открытых дверей, где Артур Пакулов (Ex-вирусный аналитик в Kaspersky Lab.) расскажет подробнее о программах, особенностях онлайн-формата, навыках, компетенциях и перспективах, которые ждут выпускников после обучения. А также приглашаем вас принять участие в бесплатных открытых уроках: «Анализ буткита» и «Анализ банковского трояна».


Предпосылки

Все описанное здесь основано на проекте, который я завершил в начале 2011 года, спустя аж несколько лет после его начала. Принимая участие в CanSecWest в 2009 году, Анибал Сакко и Альфредо Ортега из Core Security провели презентацию «Persistent BIOS Infection», где продемонстрировали, как можно пропатчить BIOS, чтобы совершить некоторые неприятные/удивительные вещи. Можете ознакомится с их докладом здесь. На то время это действительно впечатляло, но мне так и не выпал шанс попробовать это на практике. Год спустя мне нужно было подготовить групповой проект для учебы, поэтому я решил вернуться к взлому BIOS и самостоятельно реализовать что-нибудь из этого. Читать полностью »

Добрый вечер! Ровно через неделю у нас стартует курс «Реверс-инжиниринг», и сегодня мы хотим поделиться с вами переводом материала, который имеет прямое отношение к этому курсу. Поехали.

Недавно мы исследовали вредоносный буткит FinFisher, опубликованный WikiLeaks. Большинство компонентов версии для Windows были достаточно простыми, так что перейдём сразу к драйверу режима ядра и загрузочному коду.

Анализ Буткита FinFisher - 1

Драйвер режима ядра напрямую считывает сырые данные с жесткого диска, либо записывает их на него. С упрощенной версией метода, используемого драйвером, можно ознакомиться в этой статье.
Читать полностью »

В последние несколько лет увеличилось распространение вредоносных программ (буткитов), модифицирующих загрузочные сектора в процессе заражения системы. Среди самых видных представителей — TDL4, Olmasco и Rovnix. Каждый из них использует различные способы заражения жесткого диска, это либо модификация главной загрузочной записи (MBR), либо модификация первых секторов загрузочного раздела, т. е. VBR или IPL (первые сектора тома, куда передается управление из MBR — Volume Boot Record/Initial Program Loader). Наглядно эти семейства показаны на рисунке ниже.

Читать полностью »

15—17 декабря 2012 года прошли отборочные соревнования под названием PHDays CTF Quals. Более 300 команд боролись за право участия в конкурсе PHDays III CTF, который состоится в мае 2013 года в рамках международного форума PHDays III. В течение последних двух месяцев наша команда усиленно разрабатывала задания для отборочных соревнований, и эту статью мы решили посвятить разбору одного из них – Binary 500. Данное приложение весьма необычно, поэтому ни одна команда не смогла достать флаг, спрятанный в ее недрах.

Исполняемый файл представляет собой MBR-буткит, использующий технологию аппаратной виртуализации (Intel VT-x). В связи с этим мы решили сразу предупреждать пользователей, что приложение может нанести вред системе, и что его нужно запускать на виртуальной машине или эмуляторе.

PHDays CTF Quals: BINARY 500, или как спрятать флаг ниже плинтуса

Предупреждение и лицензионное соглашениеЧитать полностью »

TDL-4


Разработчики TDL продолжают идти в ногу со временем. На этот раз их взор устремился на неохваченные ранее 64 битные системы. Во-первых — появилось разделение рабочих файлов на 32 и 64 разрядные версии. Во-вторых — в очередной раз изменился алгоритм запуска после перезагрузки. Ранее подобный алгоритм применялся в ВПО Sinowal, достаточно известном своими новациями сотрудникам антивирусных компаний. Теперь TDL версии 4 заражал главную загрузочную запись (MBR). Данный способ позволяет ему загружаться раньше операционной системы, сразу после старта компьютера. Таким образом, TDL-4 из буткита «мутировал» в буткит. Как и ранее, компоненты TDL-4, хранились в специальной области жесткого диска, зашифрованные алгоритмом RC4. Код в MBR передавал управление компоненту ldr16 (из хранилища). После передачи управления ldr16 производил перехват функций работы с жестким диском (ОС еще не загружена). Для загрузки TDL-4 использовалась подмена файла kdcom.dll (путем установки перехватчика на Int 13h и поиска определенной сигнатуры kdcom.dll), который необходим для инициализации ядра операционной системы на стадии загрузки. Вместо kdcom.dll в итоге загружался вредоносный компонент ldr32 или ldr64 (из хранилища) в зависимости от разрядности целевой ОС. Бинарный код ldr32 и ldr64 практически идентичен, так как они скомпилированы из одного исходного кода. Но, кроме разницы в коде, в 64 битных системах, начиная с Windows 2003 x64 (XP x64 и далее Vista, Seven), появилось несколько технологий, направленных на защиту от вредоносного воздействия. Одна из них — Patch Guard, которая отслеживает изменение критических объектов ядра ОС, таких как:

  • таблица глобальных дескрипторов — GDT;
  • таблица дескрипторов прерываний — IDT;
  • таблица дескрипторов системных сервисов — SSDT;
  • некоторые системные файлы, например, NTOSKRNL.EXE, NDIS.SYS, HAL.DLL;
  • служебные MSR регистры STAR/LSTAR/CSTAR/SFMASK.

Читать полностью »

Порой различия в стиле написания и применяемых принципах работы вредоносного программного обеспечения значительно отличается от образца к образцу. Одни делают ставку на полиморфизм, другие на руткит компоненту. Особенно в плане развития руткит технологий отличилось семейство ВПО TDL. Как известно, новое — это хорошо забытое старое. На заре развития персональных ЭВМ, основную массу ВПО составляли вирусы, которые подразделялись на два класса — файловые и загрузочные (были и комбинированные, например, печально известный OneHalf). Достойным продолжателем дела загрузочных вирусов является буткит TDSS (TDL-4), хоть и является троянской программой (не способной самостоятельно распространяться). Буткит – слово, образованное из слов бут (boot, загрузочная область) и руткит (rootkit, средство сокрытия признаков деятельности). Но прежде чем стать буткитом, TDL проделал большой путь.Читать полностью »

Национальный институт США по стандартам и технологиям (NIST) обратил внимание на безопасность системы BIOS, с целью защитить её от заражения вирусами, такими как Mebromi и Niwa!mem. Тема довольно специфическая: к настоящему времени существует несколько таких вредоносных программ, в методиках внедрения зловредов в BIOS разбираются считанные специалисты антивирусных компаний. Тем неожиданнее выглядит подобная инициатива со стороны государственной американской организации. Вероятно, эта проблема их сильно тревожит в свете угрозы тотального заражения BIOS на компьютерах, собранных в Китае.

NIST принимает стандарт для защиты BIOS

Так или иначе, но NIST предложил новые правила безопасности для BIOS на серверах (черновик стандарта, pdf). Ранее они уже выпустили аналогичный стандарт для защиты BIOS на настольных компьютерах (pdf).

Новый документ представляет собой руководство для производителей серверного оборудования и серверных администраторов с описанием методик, которые помогут избежать попадания вредоносного кода в BIOS.
Читать полностью »


https://ajax.googleapis.com/ajax/libs/jquery/3.4.1/jquery.min.js