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

Wrong timeout variable for inbound TCP/UDP state cleanup: 6x/3x premature expiry

Summary

nat_cleanup_func_dispatch: inbound TCP states(:971) checked against sysctl_var_icmp_timeout(default 10s) instead of sysctl_var_tcp_timeout(60s). Inbound UDP states(:989) checked against icmp_timeout instead of udp_timeout(30s). Same in ip_fw3_ctl_nat_get_record(:632/:688). Inbound entries vanish 6x/3x faster than configured breaking idle TCP connections NAT mappings. Fix: use tcp_timeout at :971/:632 udp_timeout at :989/:688.

Discussion (0)

No comments yet.

PoC verification

Evidence pack

findings/poc/DF-0575 Β· 1 files
FileTypeDescriptionSize
fix.diff suggested-fix Wrong timeout variable for inbound TCP/UDP state cleanup: 6x/3x premature expiry 444 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/net/ipfw3_nat/ip_fw3_nat.c:971: wrong timeout variable for inbound TCP/UDP cleanup (6x/3x premature expiry)

Verified recommended fix

Source-confirmed at sys/net/ipfw3_nat/ip_fw3_nat.c:971: wrong timeout variable for inbound TCP/UDP cleanup (6x/3x premature expiry)

Verdict

Source-confirmed at sys/net/ipfw3_nat/ip_fw3_nat.c:971: wrong timeout variable for inbound TCP/UDP cleanup (6x/3x premature expiry)