mdmx: (Default)
[personal profile] mdmx
https://github.com/V4bel/dirtyfrag

Анализ уязвимости Dirty Frag, представленной в репозитории V4bel/dirtyfrag, указывает на критический недостаток в механизмах обработки сетевых пакетов ядра Linux, приводящий к локальному повышению привилегий (LPE).

### Технический контекст

Уязвимость затрагивает подсистемы **IPsec (ESP)** и **RxRPC**. Проблема локализована в путях «быстрого дешифрования» (in-place decryption fast paths) для модулей esp4, esp6 и rxrpc. Корень проблемы заключается в некорректной обработке фрагментированных буферов сокетов (sk_buff fragments), когда они ссылаются на страницы памяти, не принадлежащие ядру монопольно.

### Механизм эксплуатации

1. **Разделение страниц (Page Sharing):** При использовании системных вызовов splice(2), sendfile(2) или флага MSG_SPLICE_PAGES, страницы из кэша страниц (Page Cache) или каналов (pipes) могут быть привязаны к сетевому сокету без копирования данных (zero-copy).

2. **In-place Decryption:** Когда ядро принимает зашифрованный пакет (например, через протокол ESP в IPsec), оно выполняет дешифрование непосредственно в те же страницы памяти, которые находятся в буфере сокета.

3. **Нарушение изоляции:** Уязвимость возникает из-за того, что ядро не проверяет, является ли целевая страница «приватной» и доступной только для записи ядром. Если атакующий привязывает к сокету страницу, отображающую критически важный системный файл (например, /etc/passwd или бинарный файл /usr/bin/su), подсистема дешифрования перезапишет содержимое этой страницы в Page Cache результатами дешифрования.

### Последствия

* **Локальное повышение привилегий:** Непривилегированный пользователь может модифицировать содержимое системных файлов в оперативной памяти. Это позволяет подменить учетные данные или внедрить код в доверенные исполняемые файлы без изменения их состояния на физическом диске.

* **Сходство с Dirty Pipe / Copy Fail:** Методология эксплуатации напоминает уязвимость Dirty Pipe (CVE-2022-0847), однако в данном случае вектором записи выступает не логика работы с пайпами, а сетевой стек дешифрования.

### Сферы воздействия и исправление

Уязвимости подвержены ядра Linux, поддерживающие современные механизмы zero-copy и MSG_SPLICE_PAGES. В качестве временных мер (Workaround) до применения патча рекомендуется:
1. Блокировка загрузки уязвимых модулей: esp4, esp6, rxrpc.
2. Очистка Page Cache после возможной атаки командой echo 3 > /proc/sys/vm/drop_caches для удаления скомпрометированных страниц из памяти.
Техническая реализация в репозитории демонстрирует стабильный обход механизмов защиты памяти за счет архитектурной ошибки в управлении владением страницами внутри сетевого стека.
This account has disabled anonymous posting.
If you don't have an account you can create one now.
HTML doesn't work in the subject.
More info about formatting

Profile

mdmx: (Default)
mdmx

May 2026

S M T W T F S
     12
345 67 89
101112 13141516
17181920212223
24252627282930
31      

Most Popular Tags

Style Credit

Expand Cut Tags

No cut tags
Page generated May. 13th, 2026 08:11 pm
Powered by Dreamwidth Studios