Skip to content
KitploitKITPLOIT
ИнструментыБлог
Отправить
ИнструментыБлог
Отправить

Инструменты для хакинга, пентеста и кибербезопасности — ваш арсенал защиты!

Kitploit — это каталог инструментов для хакинга, кибербезопасности и пентестинга. Находите последние обновления проектов для поиска уязвимостей, анализа систем, автоматизации тестирования и усиления вашей безопасности.

··Ленты·Контакты·Конфиденциальность·© 2026 Kitploit

Каталог инструментов

Категории

Все категории
Loading categories
CVE-2026-46331 — CVE-2026-46331 act_pedit эксплойт повреждения page-cache, с исправлением Alpine PIE | Kitploit
Инструменты/GitHubGitHub/yanxinwu946/cve-2026-46331
Повышение привилегийФреймворки для эксплойтовАнализ уязвимостейЭксплуатацияШелл-кодРазработка Полезной НагрузкиПобег из КонтейнераЭксплуатация Бинарных Файлов
GitHubyanxinwu946/cve-2026-46331

CVE-2026-46331

CVE-2026-46331 act_pedit эксплойт повреждения page-cache, с исправлением Alpine PIE

Репозиторий
441 месяц назадЕщё не проверено

Популярное

Смотреть все →

Откройте для себя самые используемые инструменты нашего сообщества.

Изучить все инструменты

Просмотрите нашу коллекцию инструментов

Смотреть все инструменты →
Поделиться

PACKET_EDIT_MEME - CVE-2026-46331

net/sched act_pedit — частичное повреждение page-cache при copy-on-write (коммит 899ee91156e5, присутствует с v5.18 .. исправлено в v7.1-rc7). packet_edit_meme.c превращает её в непривилегированный локальный root: дочерний процесс в userns с CAP_NET_ADMIN перезаписывает кэшированные ELF-метаданные setuid-root бинарника шеллкодом setgid(0)+setuid(0)+execve("/bin/sh").

root@kitploit:~
make
./packet_edit_meme
./packet_edit_meme --ubuntu   # AppArmor-gated Ubuntu: aa-exec bypass first

Целевые дистрибутивы

ДистрибутивЯдроФлагРезультат
RHEL 10.06.12.0(none)ROOT
Debian 13 trixie6.12.90+deb13.1(none)ROOT
Ubuntu 24.04.46.17.0-22--ubuntuROOT
Alpine edge7.0.10-0-stable(none)ROOT

Адаптация под PIE в Alpine

Alpine Linux (musl) компилирует PIE-исполняемые файлы, у которых исполняемый PT_LOAD сегмент начинается со смещения в файле ≥ 0x1000 — за пределами ограничения смещения TCP-заголовка pedit в 511 байт. Заголовок ELF и программные заголовки занимают первый read-only PT_LOAD (смещение в файле 0). Этот адаптированный эксплойт:

  1. Делает страницу 0 исполняемой, добавляя PF_X в поле p_flags первого PT_LOAD по смещению в файле 0xB4 (phdr[2] + 4).

  2. Разбивает шеллкод, чтобы не повредить критические программные заголовки LOAD:

    • e_entry → 0x28 (поле e_shoff, которое ядро не проверяет при exec).
    • Трамплин по смещению в файле 0x28: 5-байтовый jmp 0x1C8.
    • Шеллкод по смещению в файле 0x1C8, перезаписывающий программные заголовки PT_NOTE, которые ядро игнорирует во время exec.
  3. Автоматически находит цель во время выполнения через find / -xdev -type f -perm -4000 -user root вместо прописанных вручную путей. Используется первый найденный читаемый всеми setuid-root ELF-бинарник — /bin/su в Alpine (-> /bin/bbsuid, ) пропускается автоматически, так как его невозможно открыть.

Ограничение AppArmor в Ubuntu

Ubuntu запрещает непривилегированным процессам без AppArmor-профиля создавать userns с помощью двух sysctl:

root@kitploit:~
kernel.apparmor_restrict_unprivileged_userns       # denies unconfined userns creation
kernel.apparmor_restrict_unprivileged_unconfined   # forces unconfined change_profile to STACK,
                                                   # so an aa-exec permissive profile cannot
                                                   # shed the userns restriction

--ubuntu повторно запускает процесс через aa-exec -p {trinity,chrome,flatpak} (профили, содержащие правило userns,).

Ubuntuusernsunconfinedобход aa-exec
24.04.410РАБОТАЕТ
26.0411ЗАКРЫТО

Зависимости сборки

Статический кросс-компилятор x86_64-linux-gnu:

root@kitploit:~
# Debian / Ubuntu
apt install gcc-x86-64-linux-gnu

# Alpine
apk add gcc musl-dev
Скачать инструмент
---s--x--x