Добавить в корзинуПозвонить
Найти в Дзене
The Codeby

Когда антивирус молчит — это не всегда хорошая новость

Руткиты составляют менее 1% всех детектируемых вредоносов. Звучит обнадёживающе, пока не смотришь на последствия. 🔍 APT-кампания ProjectSauron пять лет жила в инфраструктурах нескольких десятков организаций — никто не замечал. Ботнет DirtyMoe за год вырос с 10 000 до 100 000 машин, пока антивирусы хранили молчание. Stuxnet физически уничтожал центрифуги иранской ядерной программы. Это и есть парадокс руткитов: самый редкий тип малвари наносит непропорционально разрушительный ущерб. Причина проста — руткит создаётся ради одной задачи: сделать атакующего невидимым. И здесь начинается самое интересное. ⚙️ Четыре уровня привилегий — четыре разных мира Большинство материалов до сих пор делит руткиты на «user-mode» и «kernel-mode». Это картина начала 2010-х. Реальность сейчас — минимум четыре уровня, и каждый требует принципиально другого подхода к обнаружению. Ring 3 (пользовательский режим) — перехват API-вызовов внутри процесса. На Windows это модификация IAT/EAT и inline-hooking nt

Когда антивирус молчит — это не всегда хорошая новость

Руткиты составляют менее 1% всех детектируемых вредоносов. Звучит обнадёживающе, пока не смотришь на последствия.

🔍 APT-кампания ProjectSauron пять лет жила в инфраструктурах нескольких десятков организаций — никто не замечал. Ботнет DirtyMoe за год вырос с 10 000 до 100 000 машин, пока антивирусы хранили молчание. Stuxnet физически уничтожал центрифуги иранской ядерной программы. Это и есть парадокс руткитов: самый редкий тип малвари наносит непропорционально разрушительный ущерб.

Причина проста — руткит создаётся ради одной задачи: сделать атакующего невидимым. И здесь начинается самое интересное.

⚙️ Четыре уровня привилегий — четыре разных мира

Большинство материалов до сих пор делит руткиты на «user-mode» и «kernel-mode». Это картина начала 2010-х. Реальность сейчас — минимум четыре уровня, и каждый требует принципиально другого подхода к обнаружению.

Ring 3 (пользовательский режим) — перехват API-вызовов внутри процесса. На Windows это модификация IAT/EAT и inline-hooking ntdll.dll. На Linux — подмена через LD_PRELOAD. По данным Positive Technologies, 31% проанализированных семейств работали исключительно в этом режиме, ещё 31% совмещали оба. В MITRE ATT&CK это T1055 и T1574.

Ring 0 (режим ядра) — драйвер или LKM с привилегиями ОС. DKOM-манипуляции со структурой EPROCESS, перехват SSDT, подмена callback-ов. 38% выборки Positive Technologies. Один неаккуратный указатель в коде — и вместо невидимости получаешь синий экран на весь SOC.

🧬 Ring -1 (гипервизорный уровень) — руткит загружается ниже ядра ОС, перехватывая аппаратную виртуализацию Intel VT-x или AMD-V. ОС продолжает работать, не подозревая, что полностью контролируется гипервизором атакующего. Концепт Blue Pill показал это ещё в 2006 году.

Ring -2 (UEFI/firmware) — код, исполняемый до загрузки ОС. Буткиты LoJax, MoonBounce, CosmicStrand записываются в SPI-flash и переживают переустановку ОС и замену жёсткого диска. Полное уничтожение системы не помогает. Это уже не малварь — это постоянный имплант.

🛡 Почему это важно прямо сейчас

Каждый уровень требует своего инструментария обнаружения. Против Ring 3 работают сравнение хешей системных библиотек и анализ аномалий в памяти процессов. Против Ring 0 — WinDbg, Volatility, проверка целостности SSDT. Против Ring -2 — верификация прошивки и мониторинг SPI-flash. Инструменты не взаимозаменяемы: то, что поймает rkhunter, не увидит UEFI-импланта.

Именно поэтому «антивирус ничего не нашёл» — не ответ. Это только начало расследования.

Полная карта техник, матрица MITRE ATT&CK и методология обнаружения каждого уровня — в статье.

https://codeby.net/threads/tekhniki-rutkitov-polnaya-klassifikatsiya-matritsa-obnaruzheniya-i-protivodeistviye.92911/