Назад к обновлениям
New releaseAug 20, 2026

duchamp-root v52c8d05bcf

Xiaomi K70e (duchamp) рут одним кликом через CVE-2026-43499 (IonStack) + интеграция KernelSU

Поделиться

Китайский | Английский

счетчик посетителей


GitHub release (latest by date) GitHub last commit Platform Android Kernel License

⚡ Гордый пользователь JetBrains Mono ⚡
В этом README используется исключительно JetBrains Mono. Comic Sans запрещён.

[!IMPORTANT] 🚨 Отказ от ответственности

Данный эксплойт предназначен только для образовательных целей.

  • Разблокировка загрузчика может лишить вас гарантии.
  • Root-доступ к устройству может вызвать bootloop, потерю данных или самовозгорание (вероятно, нет, но кто знает).
  • Я не несу ответственности, если ваш K70e превратится в кирпич K70.
  • Если ваша девушка уйдёт от вас из-за того, что вы слишком много времени потратили на рутинг, это ваша проблема.
  • 7̷̋̚1̸̽̈́0̵̛̅ ̸͛̿ù̶̈́n̸̓̋l̸̔̒o̸̔̒c̷̊̒k̵̇̚ ̷̊̒ḟ̷͝e̶̋̕s̵̋̚t̸̽̈́ ̵̔̋l̶̔̒e̸̓̋t̸̔̒s̵̋̚ ̸̾̑ġ̷̝o̷̊̒ ̵̛̅ḟ̷͝u̸̓̋c̷̋̚k̸̛̅i̶̽̈́n̵̔̋g̷̊̒ ̴͛̿g̶̾̑ơ̵̅

📖 Китайская версия

🤔 Что это

Xiaomi K70e (duchamp) — инструмент для root в один клик, основанный на уязвимости ядра CVE-2026-43499 (IonStack), со встроенным демоном KernelSU.

Простыми словами: нажал — и телефон рутирован. Всё просто.

Версия «Фестиваль разблокировки 710»: Не 711, не 709, а 710. В этот день мы не разблокируем телефон, мы освобождаем его.

Философская версия: Когда ты смотришь в /proc/, /proc/ смотрит в тебя через pipe_physrw.


🎯 Текущая поддержка

УстройствоКодовое имяЧипВерсия ядраСтатус
Redmi K70EduchampMT6897 (Dimensity 8300)6.1.138-android14-11✅

Другие модели см. в каталоге src/targets/ (эталонные конфигурации из исходного проекта, не проверенные на практике).


🧠 Цепочка уязвимостей

ЭтапМетодОписание
1. Утечка KASLRПобочный канал pselect slideЧтение _stext через псевдоним данных nfulnl_log_packet
2. Перехват FOPSПроизвольная запись в стек через pselectFUTEX_CMP_REQUEUE_PI + состояние гонки для перезаписи таблицы ops
3. Примитив физического чтения/записиПоддельные pipe_buf_opsПодделка pipe_buf_ops → произвольный физический rw в ядре
4. Повышение привилегийПатч cred + seccomp + selinuxИзменение uid=0, полные cap, отключение seccomp, отключение selinux
5. ПостоянствоВстроенный KernelSUЗапись и запуск ksud (демона KernelSU)

🎭 Пользовательские истории

Фестиваль 710

Пользователь: "Мой K70e можно разблокировать?"
Я:            "Не нужно разблокировать, сразу root."
Пользователь: "??? "
Я:            "w 710"
Пользователь: "Что?"
Я:            "Новинка фестиваля разблокировки 710: не разблокировка BL, а освобождение телефона."

Первый запуск

Пользователь: "Почему мой телефон перезагрузился?"
preload.so: "Не паникуй, я повышаю привилегии."
Пользователь: "Что такое KernelSU?"
preload.so: "Это менеджер root, который теперь работает на твоём телефоне."

Интеграция KernelSU

Пользователь: "Как управлять root после этого?"
ksud:       "Привет, я демон KernelSU."
Пользователь: "Что ты умеешь?"
ksud:       "Могу давать приложениям права root."
Пользователь: "Ты же не встроенный?"
ksud:       "Я встроен в preload.so."
Пользователь: "Круто."

Неудачный опыт

Пользователь: "Я поставил твою штуку, и теперь у меня кирпич!!!"
Я:           "Какое устройство?"
Пользователь: "iPhone 14."
Я:           "......Ты серьёзно?"
Пользователь: "Ты написал про фестиваль 710, вот я и попробовал."
Я:           "710 — одно из кодовых имён Xiaomi 14, а не iPhone 14. Уходи."

⚙️ Принцип работы

  1. Загрузка preload.so — внедрение через LD_PRELOAD в любое приложение, запуск __attribute__((constructor))
  2. Утечка базы KASLR — побочный канал pselect через псевдоним данных nfulnl_log_packet читает _stext
  3. Перехват таблицы FOPS — состояние гонки futex PI + перезапись pipe ops
  4. Получение phys rw — подделка pipe_buf_ops для произвольного доступа к физической памяти ядра
  5. Патч cred — поиск процесса root child, изменение uid=0, полные cap, sid=kernel
  6. Отключение защиты — патч seccomp, сброс TIF_SECCOMP, selinux enforce=0
  7. Запуск KernelSU — извлечение встроенного ksud в /data/local/tmp/ksud, запуск демона KernelSU

📦 Использование

Предварительные требования

  • Xiaomi K70e (duchamp) или другое поддерживаемое устройство
  • Разблокированный загрузчик (или неразблокированный — временный root тоже работает)
  • Включена отладка ADB
  • Храбрость, не боящаяся кирпича

Быстрый старт

# Скачать preload.so из Release
wget https://github.com/Colorful-glassblock/duchamp-root/releases/download/v1.0/preload.so

# Передать на устройство
adb push preload.so /data/local/tmp/

# Внедрить в любое приложение через LD_PRELOAD
adb shell
su -c "LD_PRELOAD=/data/local/tmp/preload.so your_app"

Или используйте предоставленный скрипт внедрения (TODO).

Сборка из исходников

# Требуется NDK или Termux с aarch64-linux-android-clang
make PROJECT=duchamp

# Результат в build/duchamp/bin/preload.so

📂 Структура файлов

Категории