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

User-controlled iconv charset names copied without null-termination β€” bounded kernel-stack OOB read via kprintf/strcasecmp

Summary

msdosfs_vfsops.c:116-117 memcpy(cs_local,argp->cs_local,31) memcpy(cs_dos,argp->cs_dos,31) β€” NO explicit null termination. argp from copyin raw user mount(2) no validation. :118 kprintf(%s,argp->cs_local,argp->cs_dos) scans past 31-byte arrays. :119-130 msdosfs_iconv->open() strcasecmp scans until null. Requires MSDOSFSMNT_KICONV flag + msdosfs_iconv kld. Bounded read of stack bytes adjacent to args struct. No write primitive no control-flow redirect. Fix: memcpy sizeof-1 + force NUL.

Discussion (0)

No comments yet.

PoC verification

Evidence pack

findings/poc/DF-0854 Β· 1 files
FileTypeDescriptionSize
fix.diff suggested-fix User-controlled iconv charset names copied without null-termination β€” bounded ke 555 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/vfs/msdosfs/msdosfs_vfsops.c:116: user-controlled iconv charset names copied without null-termination

Verified recommended fix

Source-confirmed at sys/vfs/msdosfs/msdosfs_vfsops.c:116: user-controlled iconv charset names copied without null-termination

Verdict

Source-confirmed at sys/vfs/msdosfs/msdosfs_vfsops.c:116: user-controlled iconv charset names copied without null-termination