The OpenNET Project / Index page

[ новости /+++ | форум | теги | ]

Fragnesia - ещё одна уязвимость в ядре Linux, позволяющая получить root через изменение страничного кэша

13.05.2026 21:23 (MSK)

В ядре Linux выявлена четвёртая за последние две недели уязвимость (CVE-2026-46300), позволяющая непривилегированному пользователю получить права root, перезаписав данные в страничном кэше. Уязвимости присвоено кодовое имя Fragnesia или Copy Fail 3.0. Суть уязвимости аналогична ранее раскрытым уязвимостям Copy Fail и Dirty Frag. Как и в случае с Dirty Frag новая уязвимость присутствует в подсистеме xfrm-ESP, но вызвана другой ошибкой и требует отдельного исправления. Доступен рабочий эксплоит.

Уязвимость проявляется в ядрах Linux, выпущенных после 5 мая, из-за случайной активации исправлением уязвимости Dirty Frag. Для устранения уязвимости Fragnesia для ядра Linux было предложено исправление. Анализ данного исправления показал, что его недостаточно, после чего был подготовлен второй вариант патча.

Уязвимость присутствует в подсистеме xfrm в реализации механизма инкапсуляции протокола ESP (Encapsulating Security Payload) в TCP (ESP-in-TCP, RFC 8229), применяемой для туннелирования трафика IPsec поверх TCP. Для исключений лишней буферизации операции с использованием алгоритма AES-GCM выполнялись по месту через выполнение операции XOR к данным в страничном кэше. Из-за логической ошибки, возникали условия, позволяющие перезаписать 1 байт в страничном кэше по выбранному смещению. Повторяя операции можно байт за байтом изменить содержимое любого файла в страничном кэше.

Все операции чтения из файлов в первую очередь отдают содержимое из страничного кэша. В случае модификации данных в страничном кэше операции чтения из файла приведут к возвращению не реально хранимой на накопителе информации, а подменённых данных. Эксплуатация уязвимости сводится к изменению страничного кэша для исполняемого файла с флагом suid root, предварительного прочитанного для попадания в страничный кэш. В предложенном исследователями эксплоите первые 192 байт файла /usr/bin/su в страничном кэше перезаписываются кодом для запуска /usr/bin/sh. Последующий запуск утилиты "su" приводит к тому, что в память будет загружен не оригинальный исполняемый файл с накопителя, а изменённая копия из страничного кэша.

Для эксплуатации уязвимости Fragnesia в системе должно быть разрешено создание пространств имён идентификаторов пользователей (user namespace). В Ubuntu подобная операция по умолчанию запрещена, но может быть разрешена через sysctl "kernel.apparmor_restrict_unprivileged_userns=0" или профили AppArmor. В остальных дистрибутивах доступность "user namespace" непривилегированным пользователям зависит от выставления sysctl "kernel.unprivileged_userns_clone" (если 0, то запрещено).

Обновления с исправлениями для ядра Linux и пакетов с ядром в дистрибутивах пока не опубликованы. Статус устранения уязвимостей в дистрибутивах можно оценить на данных страницах: Debian, Ubuntu, SUSE/openSUSE, RHEL, Gentoo, Arch, Fedora. В качестве обходного пути защиты можно заблокировать загрузку модулей ядра esp4 и esp6:


   sh -c "printf 'install esp4 /bin/false\ninstall esp6 /bin/false\n' > /etc/modprobe.d/dirtyfrag.conf; rmmod esp4 esp6 2>/dev/null; true"


  1. Главная ссылка к новости (https://www.openwall.com/lists...)
  2. OpenNews: Уязвимости Dirty Frag, изменяющие страничный кэш для получения root в любых дистрибутивах Linux
  3. OpenNews: Copy Fail - уязвимость в ядре Linux, позволяющая получить root в большинстве дистрибутивов
  4. OpenNews: Атака по определению состояния памяти процессов при помощи страничного кэша
  5. OpenNews: Уязвимость в ядре Linux, позволяющая исказить файлы, доступные только для чтения
  6. OpenNews: В ядре Linux выявлен новый вариант уязвимости Dirty COW
Лицензия: CC BY 3.0
Короткая ссылка: https://opennet.ru/65441-fragnesia
Ключевые слова: fragnesia, kernel, linux
При перепечатке указание ссылки на opennet.ru обязательно


Обсуждение (9) Ajax | 1 уровень | Линейный | +/- | Раскрыть всё | RSS
  • 1.1, Мемоним (?), 22:19, 13/05/2026 [ответить]  
  • –3 +/
    В слове open (source) все чаще ощущается какой-то другой смысл. Близкий к "открыто нараспашку"
     
     
  • 2.3, Colorado_House_of_Representatives (?), 22:24, 13/05/2026 [^] [^^] [^^^] [ответить]  
  • +1 +/
    Только не говорите, что закрытое = безопасное. Закрытое = уязвимость никогда не найдут публично.
     
     
  • 3.5, sig11 (ok), 22:29, 13/05/2026 [^] [^^] [^^^] [ответить]  
  • +/
    Для AI закрытое перестает быть закрытым, если есть хотя бы бинарник или дамп памяти
     
     
  • 4.9, kusb (?), 22:53, 13/05/2026 [^] [^^] [^^^] [ответить]  
  • +/
    Разобраться в нём сложнее. Я думаю.
     
  • 3.7, Мемоним (?), 22:43, 13/05/2026 [^] [^^] [^^^] [ответить]  
  • +/
    > закрытое = безопасное

    Не равно. Вопрос только кто первым найдет уязвимость в открытом коде – тысячеглазый энтузиаст или двухглазый мотивированный деньгами злоумышленник.

     

  • 1.2, Аноним (2), 22:24, 13/05/2026 Скрыто ботом-модератором     [к модератору]
  • +1 +/
     
  • 1.4, Аноним (4), 22:26, 13/05/2026 [ответить]  
  • +2 +/
    Безопасненько, не то что на вашей винде
     
     
  • 2.8, th3m3 (ok), 22:49, 13/05/2026 [^] [^^] [^^^] [ответить]  
  • +/
    Сейчас всё пофиксят, а винда так и останется дырой)
     

  • 1.6, Аноним (6), 22:38, 13/05/2026 [ответить]  
  • +/
    >Уязвимость проявляется в ядрах Linux, выпущенных после 5 мая

    https://www.kernel.org

     

     Добавить комментарий
    Имя:
    E-Mail:
    Текст:



    Партнёры:
    PostgresPro
    Inferno Solutions
    Hosting by Hoster.ru
    Хостинг:

    Закладки на сайте
    Проследить за страницей
    Created 1996-2026 by Maxim Chirkov
    Добавить, Поддержать, Вебмастеру