RC4 key material and S-box left unzeroed on kernel stack after encrypt/decrypt
Summary
wep_encrypt (:334) and wep_decrypt (:417): uint8_t rc4key[19] populated with composite RC4 key (3B IV + shared secret wk_key) at :345-346/:428-429 uint8_t S[256] RC4 internal state. Neither cleared before function returns (:393/:475 return without explicit_bzero). Key material persists on kernel stack until overwritten by subsequent call. WEP shared secret long-lived manually configured shared among all stations. wep_ctx wc_iv (:163) not zeroed on detach (:117). Defense-in-depth hardening gap same pattern CCMP/TKIP cross-cipher. Fix: explicit_bzero(rc4key,sizeof)+explicit_bzero(S,sizeof) before return both functions.
Discussion (0)
PoC verification
Evidence pack
findings/poc/DF-0695 Β· 1 files| File | Type | Description | Size | |
|---|---|---|---|---|
| fix.diff | suggested-fix | RC4 key material and S-box left unzeroed on kernel stack after encrypt/decrypt | 366 B | view raw |
Fix verification
fixedfix.diff applied + combined nativekernel build rc=0 (-Werror)
fix.diff applied + combined nativekernel build rc=0 (-Werror)
Confirmed kernel references
β
Detail
Exploit chain
none (Info severity)
Evidence (decisive lines)
Source-confirmed at sys/netproto/802_11/wlan_wep/ieee80211_crypto_wep.c:334: RC4 key/S-box left unzeroed on kernel stack (DSE)
Verified recommended fix
Source-confirmed at sys/netproto/802_11/wlan_wep/ieee80211_crypto_wep.c:334: RC4 key/S-box left unzeroed on kernel stack (DSE)
Verdict
Source-confirmed at sys/netproto/802_11/wlan_wep/ieee80211_crypto_wep.c:334: RC4 key/S-box left unzeroed on kernel stack (DSE)
No comments yet.