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

Division by unvalidated freq<=0 -> kernel divide-by-zero panic

Summary

_systimer_init_periodic(:269/:271/:273) and systimer_adjust_periodic(:347) pass freq to fromhz() without checking freq>0. fromhz=cputimer_freq/freq+1 (kern_cputimer.c:199). freq=0 -> div-by-zero panic. No in-tree caller passes 0 today.

Discussion (0)

No comments yet.

PoC verification

Evidence pack

findings/poc/DF-0155 Β· 1 files
FileTypeDescriptionSize
fix.diff suggested-fix Division by unvalidated freq<=0 -> kernel divide-by-zero panic 389 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/kern_systimer.c:269: division by unvalidated freq<=0 -> kernel div-by-zero panic

Verified recommended fix

Source-confirmed at sys/kern/kern_systimer.c:269: division by unvalidated freq<=0 -> kernel div-by-zero panic

Verdict

Source-confirmed at sys/kern/kern_systimer.c:269: division by unvalidated freq<=0 -> kernel div-by-zero panic