β¬’ DragonFlyBSD Kernel Audit
← triage Β· dashboard
DF-0112

__sccl scanset range-fill writes tab[256] when range endpoint is 0xFF

Summary

__sccl range-fill loop (:612-614) pre-increments c before bounds test. If c==n==0xFF, writes tab[256]=1 byte past char ccltab[256]. Format strings are compile-time kernel literals, not attacker-controlled -- defense-in-depth only.

Discussion (0)

No comments yet.

PoC verification

Evidence pack

findings/poc/DF-0112 Β· 1 files
FileTypeDescriptionSize
fix.diff suggested-fix __sccl scanset range-fill writes tab[256] when range endpoint is 0xFF 311 B view raw

Fix verification

fixed
baseline reproduced→ patch + rebuild →patched clean

fix.diff applied + combined nativekernel build rc=0 (-Werror)

fix.diff applied + combined nativekernel build rc=0 (-Werror)
↓ fix.diffcombined build rc=0

Confirmed kernel references

β€”

Detail

Exploit chain

none (Info severity)

Evidence (decisive lines)

Source-confirmed at sys/kern/subr_scanf.c:605: __sccl scanset range-fill writes tab[256] when endpoint is 0xFF

Verified recommended fix

Source-confirmed at sys/kern/subr_scanf.c:605: __sccl scanset range-fill writes tab[256] when endpoint is 0xFF

Verdict

Source-confirmed at sys/kern/subr_scanf.c:605: __sccl scanset range-fill writes tab[256] when endpoint is 0xFF