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

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

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

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

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

Категории

Все категории
Loading categories
IonStack_S21 — Исследование цепочки эксплойтов, нацеленное на CVE-2026-43499 на Samsung Galaxy S21 | Kitploit
Инструменты/GitHubGitHub/kurtulusakyuz/ionstack_s21
Безопасность AndroidПовышение привилегийАнализ уязвимостейЭксплуатацияОбратная инженерияПост-эксплуатацияМобильная безопасностьСтатьи и ИсследованияРазработка Полезной НагрузкиЭксплуатация Бинарных Файлов
GitHub
87921 дней назадЕщё не проверено

Популярное

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

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

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

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

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

IonStack_S21

Исследование цепочки эксплойтов, нацеленное на CVE-2026-43499 на Samsung Galaxy S21

Репозиторий

IonStack_S21 — исследование CVE-2026-43499 для Galaxy S21 (SM-G991B)

Рабочий, активный проект KernelSU для этого устройства: kurtulusakyuz/dfroot-s21 — начните оттуда. Этот репозиторий содержит только исследование IonStack.

Специфичная для устройства полезная нагрузка IonStack для Samsung Galaxy S21 (o1s) на прошивке G991BXXSJHZC2. Статус: исследование ЗАКРЫТО — детерминированный DoS-only; путь записи в ядро доказанно невозможен на этой сборке. Полные доказательства в RESEARCH.md.

ПолеЗначение
МодельSM-G991B
Устройствоo1s
ПрошивкаG991BXXSJHZC2
Android15 / API 35 (AP3A.240905.015.A2, fingerprint samsung/o1sxeea/o1s)
Размер страницы4096
Ядро5.4.242-30958140-abG991BXXSJHZC2
SoCExynos 2100
МитигацииCFI+PAC+PAN/UAO, KDP_CRED, SELinux enforcing, no userfaultfd

Основано на реализации IonStack CVE-2026-43499, опубликованной в NebuSec/CyberMeowfia (upstream b850d3bddc74c3328d5fbcc0568d21962b55d949) и BuSung-dev/CVE-2026-43499-S25U, с благодарностью F-19-F/IonStackQuest3. Оригинальная лицензия Apache License 2.0 сохранена в LICENSE (см. NOTICE).

Финальное состояние (прочтите это первым)

Программа записи GhostLock для этого устройства завершена и закрыта, а не приостановлена. Что было доказано, по порядку:

  1. Баг реален и присутствует. remove_waiter() очищает current->pi_blocked_on вместо waiter->task->pi_blocked_on, поэтому откат FUTEX_CMP_REQUEUE_PI оставляет висячий указатель на стековый rt_waiter. Upstream-исправление 3bfdc63 отсутствует в 5.4.242.
  2. Триггер надёжен. 3-поточный цикл (owner → chain → waiter → target deadlock, main CMP завершается с EDEADLK) плюс потребитель sched_setattr воспроизводит идентичный устройству Oops (rt_mutex_adjust_prio_chain+0x108 → _raw_spin_trylock+0x1c, fault VA 0) как в KDP-less QEMU-госте, так и на самом телефоне (lastkmsg 118/119). Висячий слот полностью отображён (stack-top E-0x328, жизненный цикл охарактеризован через QEMU+GDB).
  3. Запись здесь структурно невозможна. Девять семейств syscall-spray были глубоко картированы — ни одно не достигает слота; slab-reclaim заблокирован Catch-22 живости владельца; и решающий дамп на момент срабатывания показывает, что копирование sigreturn доставляет ТОЛЬКО по victim+0x40, тогда как проходимое поле gate lock (+0x38) НИКОГДА не контролируется атакующим (15/15 дампов). Независимые порты (ASUS i005, маршрут sigreturn AQUOS) упираются в ту же стену. Геометрия, а не вероятность.
  4. Что выживает — это детерминированный примитив перезагрузки. Обходы NULL-lock вызывают панику ядра и перезагружают телефон — надёжный DoS, а не повышение привилегий.

Связанные avenues LPE ядра 2026 года также были закрыты на этой сборке конфигурацией прошивки (USER_NS, RDS, CRYPTO_USER_API_AEAD все не заданы; MFC double-free недостижим при MFC_USE_DMABUF_CONTAINER=n; AF_ALG/eBPF ограничены для shell). Артефакты после записи (KernelSU .ko + ksud, собранные для этой точной прошивки) размещены отдельно; заголовки src/kernelsnitch/ в этом дереве остаются размещёнными, но несобранными (без записи потребитель не существует).

Структура

Makefile                  build (NDK r27+, ANDROID_NDK_HOME)
src/                      exploit source (o1s profile only)
src/targets/o1s-G991BXXSJHZC2/  target.h + p0_fingerprint.h
src/kernelsnitch/         mm_struct leak (futex hash collision, staged)
tools/                    p0 fingerprint helper
RESEARCH.md               research notes (geometry, verdicts)

Сборка

export ANDROID_NDK_HOME=/path/to/android-ndk
make clean all
# SLIDE_WRITER_SEL=1|2|3 selects mcast/sigreturn(default)/xattr writers.
# Unset selects the experimental pselect writer (see RESEARCH.md).

Выходные файлы (build/o1s-G991BXXSJHZC2/): cve-2026-43499 (LD_PRELOAD payload), cve-2026-43499-app.so (app payload), cve-2026-43499-root (root helper).

Развёртывание и запуск

adb push build/o1s-G991BXXSJHZC2/cve-2026-43499 /data/local/tmp/cve-2026-43499
adb push build/o1s-G991BXXSJHZC2/cve-2026-43499-root /data/local/tmp/cve-2026-43499-root
adb shell chmod 755 /data/local/tmp/cve-2026-43499 /data/local/tmp/cve-2026-43499-root
adb shell "LD_PRELOAD=/data/local/tmp/cve-2026-43499 sh"
# on success:
adb shell "/data/local/tmp/cve-2026-43499-root -c 'id; getenforce'"

Управление ожиданиями: на этой сборке «успех» означает обход триггера и его вывод оракула — обход NULL-lock перезагружает устройство вместо получения root (см. «Финальное состояние» выше). Root, если он когда-либо будет достигнут через будущий примитив записи, живёт только до перезагрузки; ничего не прошивается.

Статус / предупреждения

  • DoS-only, путь записи закрыт с доказательствами — см. RESEARCH.md для полного отчёта (геометрия слота, закрытие spray, гранд-модель SIGRETURN, решающий дамп на момент срабатывания, подтверждение на устройстве).
  • Чувствительно к таймингам; ожидайте паники ядра. Перезагрузите для чистых slab, держите устройство в покое во время работы. /data/local/tmp очищается при перезагрузке — перезаливайте бинарники после каждой загрузки.
  • Используйте только на устройствах, которыми вы владеете или на которых явно авторизованы для тестирования.
Скачать инструмент