(NetBSD Issues Fix) FreeBSD pf(4) Scrub Rule Error Lets Remote Users Deny Service
SecurityTracker Alert ID: 1015845|
SecurityTracker URL: http://securitytracker.com/id/1015845
(Links to External Site)
Date: Mar 30 2006
Denial of service via network|
Fix Available: Yes Vendor Confirmed: Yes |
Version(s): 1.6, 2.0, 2.1, 3.0|
A vulnerability was reported in FreeBSD in the pf(4) packet filter function. A remote user can cause the kernel to crash. NetBSD is affected.|
A remote user can send specially crafted IP packet fragments to trigger a logic error in writing to the pf IP fragment cache when the 'scrub fragment crop' or 'scrub fragment drop-ovl' rules are used. The packet fragment may be inserted twice, causing the kernel to crash.
Systems that do not use pf are not affected.
Systems that do not use the 'scrub fragment crop' or 'scrub fragment drop-ovl' pf rules are also not affected.
The vendor credits Jakob Schlyter and Daniel Hartmeier with reporting this vulnerability.
A remote user can cause the kernel to crash.|
NetBSD has issued a kernel fix.|
The NetBSD advisory is available at:
This archive entry is a follow-up to the message listed below.|
Source Message Contents
Subject: NetBSD Security Advisory 2006-004: Denial of services issues with pf|
-----BEGIN PGP SIGNED MESSAGE-----
NetBSD Security Advisory 2006-004
Topic: Denial of services issues with pf
Version: NetBSD-current: source prior to January 25, 2006
NetBSD 3.0: affected
NetBSD 2.1: not affected
NetBSD 2.0.*: not affected
NetBSD 2.0: not affected
NetBSD 1.6.*: not affected
NetBSD 1.6: not affected
Severity: Denial of service
Fixed: NetBSD-current: January 25, 2006
NetBSD-3-0 branch: January 28, 2006
(3.0.1 will include the fix)
NetBSD-3 branch: January 28, 2006
There is a logical bug in pf's scrub fragment cache, which in certain
configurations may lead to a remotely exploitable denial of service
This vulnerability has been assigned CVE reference CVE-2006-0381.
When 'scrub fragment crop/drop-ovl' is used, certain combinations of fragments
cause double insertion into the fragment cache, which violates an
invariant, and subsequently triggers a kernel panic through KASSERT().
pf is not enabled by default on NetBSD.
Solutions and Workarounds
Do not use 'scrub fragment drop-ovl' or 'scrub fragment crop' rules on NetBSD
systems where pf has been enabled.
For all NetBSD versions, if you are using pf, you need to obtain
fixed kernel sources, rebuild and install the new kernel, and reboot
The fixed source may be obtained from the NetBSD CVS repository.
The following instructions briefly summarize how to upgrade your
kernel. In these instructions, replace:
ARCH with your architecture (from uname -m), and
KERNCONF with the name of your kernel configuration file.
To update from CVS, re-build, and re-install the kernel:
# cd src
# cvs update -d -P src/sys/dist/pf/net/pf_norm.c
# ./build.sh kernel=KERNCONF
# mv /netbsd /netbsd.old
# cp sys/arch/ARCH/compile/obj/KERNCONF/netbsd /netbsd
# shutdown -r now
For more information on how to do this, see:
Daniel Hartmeier for notification of the issue and a suggested fix.
Peter Postma for implementing the fix in the NetBSD CVS tree.
2006-03-29 Initial release
Advisories may be updated as new information becomes available.
The most recent version of this advisory (PGP signed) can be found at
Information about NetBSD and NetBSD security can be found at
http://www.NetBSD.org/ and http://www.NetBSD.org/Security/.
Copyright 2006, The NetBSD Foundation, Inc. All Rights Reserved.
Redistribution permitted only in full, unmodified form.
$NetBSD: NetBSD-SA2006-004.txt,v 1.7 2006/03/29 11:14:28 adrianp Exp $
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v126.96.36.199 (NetBSD)
-----END PGP SIGNATURE-----