2026-05-23

ufm: (Default)
Repost

GRO Frag - седьмая уязвимость класса Copy Fail, предоставляющая права root в Linux

В открытом доступе размещён эксплоит (https://gist.github.com/lcfr-eth/2566a5cef312c94a5ff8d62fa417955f) для седьмой уязвимости (1 (https://www.opennet.ru/opennews/art.shtml?num=65325), 2-3 (https://www.opennet.ru/opennews/art.shtml?num=65395), 4 (https://www.opennet.ru/opennews/art.shtml?num=65441), 5 (https://www.opennet.ru/opennews/art.shtml?num=65473), 6 (https://www.opennet.ru/opennews/art.shtml?num=65476)) в ядре Linux, позволяющей непривилегированному локальному пользователю получить права root, перезаписав данные в страничном кэше. CVE-идентификатор ещё не присвоен, кроме кода эксплоита информации о проблеме пока нет. Исправление доступно только в виде патча (https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git/commit/?id=4db79a322db8), который опубликован 20 мая и 21 мая был принят в основную ветку ядра Linux (корректирующие выпуски (https://kernel.org) ядра ещё недоступны).

Уязвимость присутствует в реализации технологии GRO (https://docs.kernel.org/networking/segmentation-offloads.html) (Generic Receive Offload), применяемой для ускорения обработки сегментированных пакетов. Уязвимость вызвана ошибкой в реализации механизма zerocopy в функции skb_gro_receive(), осуществляющей прямое изменение данных в страничном кэше для исключения лишней буферизации. При установленном флаге SKBFL_MANAGED_FRAG_REFS пропускалось сохранение ссылки на освобождаемые страницы памяти в поле shinfo->frags, после чего данное поле присоединялось к другому skb без изменения счётчика ссылок, что приводило к обращению к памяти после её освобождения (use-after-free). Проблему удалось эксплуатировать для перезаписи данных в страничном кэше, благодаря манипуляции с указателем на буфер io_uring.

Атака возможна на системы с включённой подсистемой io_uring (io_uring_disabled=0). Для работы эксплоита в системе должен быть доступный на чтение исполняемый файл с флагом SUID-root. Механизм эксплуатации сводится к тому, что атакующий добивается оседания базы пользователей в страничном кэше, после чего подставляет в кэш строку "hax::0:0::/root:/bin/sh". Следом запускается команда "su hax", которая получает не оригинальную базу пользователей с накопителя, а изменённую копию с подставным логином "hax", которому выставлены права root и пустой пароль. Работа эксплоита протестирована в Ubuntu 24.04.



Источник: https://www.opennet.ru/opennews/art.shtml?num=65504 (https://www.opennet.ru/opennews/art.shtml?num=65504)

https://www.opennet.ru/opennews/art.shtml?num=65504
ufm: (Default)
А, ну и там, до кучи, "В nginx выявлена вторая за 10 дней удалённо эксплуатируемая уязвимость". Я с большим интересом жду, когда по взрослому возьмутся за kvm/qemu...
ufm: (Default)
снять клип одним кадром, в живую, на грэмми.
Тётка жжёт напалмом.

https://www.youtube.com/watch?v=Rn89mUndYbo
ufm: (Default)
На текущий момент в лялихе нашли 7 дырок "класса Copy Fail".
Предлагаю тотализатор - сколько еще найдут? :)
ufm: (Default)
----
Пришла пора разрушить ваши детские иллюзии по поводу фразы "Казнить нельзя помиловать".

НИГДЕ в этой фразе не нужна запятая!

Казнить: нельзя помиловать ( двоеточие=потому что).

Казнить нельзя – помиловать (тире=поэтому).

Да, вам лгали все детство, живите с этим.
----