DF-0377
config_red error path kfrees struct that may be embedded member of dn_pipe: latent UAF/invalid-free
Summary
config_red(:1359-1363) when red_lookup_depth==0 calls kfree(x,M_DUMMYNET)+return EINVAL. But x can be &pipe->fs (embedded in dn_pipe via config_pipe:1520 set_fs_parms(&x->fs,...)). Freeing interior of larger alloc -> invalid free. set_fs_parms ignores return value so caller continues to insert freed flowset. Currently unreachable: red_lookup_depth is CTLFLAG_RD sysctl default 256. Latent landmine.
Discussion (0)
PoC verification
Evidence pack
findings/poc/DF-0377 Β· 1 files| File | Type | Description | Size | |
|---|---|---|---|---|
| manifest.json | file | 397 B | view raw |
Fix verification
not_testablebaseline reproducedβ patch + rebuild βpatched clean
recommended fix identified; fix.diff not authored/validated in this batch
recommended fix identified; fix.diff not authored/validated in this batch
combined build rc=0
Confirmed kernel references
β
Detail
Exploit chain
none (Info severity)
Evidence (decisive lines)
Source-confirmed at sys/net/dummynet/ip_dummynet.c:1359: config_red error path kfrees possibly-embedded struct (latent UAF)
Verified recommended fix
Source-confirmed at sys/net/dummynet/ip_dummynet.c:1359: config_red error path kfrees possibly-embedded struct (latent UAF)
Verdict
Source-confirmed at sys/net/dummynet/ip_dummynet.c:1359: config_red error path kfrees possibly-embedded struct (latent UAF)
No comments yet.