DF-5250
run_key_set defers a raw ieee80211_key pointer that can be node-embedded (pairwise) and freed before run_key_set_cb executes - UAF read/write including k->wk_pad write
Summary
sc->cmdq[i].k = k (raw, pairwise k = &ni->ni_ucastkey); nodes freed on deauth without draining cmdq_task and the driver never installs iv_key_update_begin/end (null_key_update) - run_key_set_cb derefs freed node memory: reads wk_cipher/wk_key (32B) into register writes + writes k->wk_pad=wcid (8-byte UAF write). Narrow taskqueue-latency window, privileged key install to arm. Copy-key-material-into-slot fix (run_key_delete already does).
Discussion (0)
PoC verification
Evidence pack
findings/poc/DF-5250 Β· 1 files| File | Type | Description | Size | |
|---|---|---|---|---|
| verdict.json | file | 978 B | view raw |
Fix verification
not_testablebaseline noβ patch + rebuild βpatched clean
per-fix-DF-5250
Confirmed kernel references
Detail
Evidence (decisive lines)
static trace in finding markdown
Verified recommended fix
see finding markdown
Verdict
untested (hardware-gated; static trace + sibling DF-5247 mechanism guest-demonstrated)
No comments yet.