Skip site navigation (1)Skip section navigation (2)
Date:      Tue, 7 Aug 2001 20:16:40 +0200
From:      "Thomas Beer" <tom@analogon.com>
To:        <questions@FreeBSD.org>
Subject:   Fw: FreeBSD Security Advisory FreeBSD-SA-01:52.fragment
Message-ID:  <015901c11f6d$1af8e4e0$0901a8c0@system>

next in thread | raw e-mail | index | archive | help
-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA1

Hi,

can anyone confirm, that this pgp sign advisory is valid?

Thanks Tom


>
>*** PGP Signature Status: bad
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^


>*** Signer: FreeBSD Security Officer <security-officer@freebsd.org>
>*** Signed: 07.08.01 01:07:38
>*** Verified: 07.08.01 20:15:15
>*** BEGIN PGP VERIFIED MESSAGE ***
>
>===========================================================================
>== FreeBSD-SA-01:52                                            Security
>Advisory
>                                                                FreeBSD,
> Inc.
>
>Topic: Denial of service using fragmented IPv4 packets
>Category:       kernel
>Announced:      2001-08-06
>Credits:        "James Thomas" via NetBSD
>Affects:        All releases of FreeBSD 3.x, 4.x prior to 4.4,
>                FreeBSD 4.3-STABLE prior to the correction date
>Corrected:      2001-06-16 23:48:04 UTC (FreeBSD 4.3-STABLE)
>                2001-08-05 23:08:26 UTC (RELENG_4_3)
>                2001-08-06 09:20:57 UTC (FreeBSD 3.5.1-STABLE)
>FreeBSD only:   NO
>
>I. Background
>
>The IP protocol allows datagrams (``packets'') to be fragmented in
>transit to allow transportation by lower layers with a smaller frame
>size than the desired IP datagram size.  The fragments are collected
>and reassembled on the destination system.
>
>II. Problem Description
>
>Remote users may be able to prevent a FreeBSD system from
>communicating with other systems on the network by transmitting large
>numbers of fragmented IPv4 datagrams.  For the attack to be effective,
>the attacker must have a high-bandwidth connection to the target
>system (for example, connected via a local network or over a fast
>remote network connection).
>
>IP datagram fragments destined to the target system will be queued for
>30 seconds, to allow fragmented datagrams to be reassembled.  Until
>recently, there was no upper limit in the number of reassembly queues.
>Therefore, a malicious party may be able to transmit a lot of bogus
>fragmented datagrams (with different IPv4 identification field) and
>cause the target system to exhaust its mbuf pool, preventing further
>network traffic processing or generation while the starvation
>condition continues.
>
>To solve this problem an upper limit was placed on the number of
>fragment reassembly queues.  This value is tunable at runtime using
>the net.inet.ip.maxfragpackets sysctl: the sysctl is set to a default
>value at system startup but may be tuned up or down depending on the
>role of the system (e.g. if the system is a busy server which
>typically receives a lot of fragmented datagrams, you may want to set
>the value higher).  The old system behaviour of an unlimited number of
>reassembly queues can be obtained by setting this sysctl to a negative
>value.
>
>Note however that attackers are still able to prevent legitimate
>fragmented IPv4 traffic from being reassembled by flooding the system
>with bogus fragmented datagrams and keeping the reassembly queues
>full.  Unfragmented IPv4 communications will be unaffected by such an
>attack when this variable is set.
>
>All versions of FreeBSD 3.x and 4.x prior to the correction date
>including 3.5.1-RELEASE and 4.3-RELEASE are vulnerable to this
>problem, although exploitation is mitigated by the need for
>high-bandwidth access to the target machine.
>
>III. Impact
>
>IPv4-connected systems can be put into a resource-starved state from
>which they are unable to send or receive network traffic by the
>constant bombardment of the system by fragmented datagrams.
>
>IV. Workaround
>
>A possible workaround for systems which are under active attack is to
>increase the value of the NMBCLUSTERS kernel option on attacked
>machines and rebuild the kernel as described in the following URL:
>
>  http://www.freebsd.org/handbook/kernelconfig.html
>
>This may provide a temporary solution until the patch can be applied:
>normally, it is the cluster mbufs which are exhausted by this attack.
>By setting NMBCLUSTERS to a higher value, you may be able to prevent
>the mbuf memory pool from being starved.
>
>VI.  Solution
>
>One of the following:
>
>1) Upgrade your vulnerable FreeBSD system to 4.3-STABLE or the
>RELENG_4_3 security-fix branch dated after the correction date.
>
>2) To patch your present system: download the relevant patch from the
>below location, and execute the following commands as root:
>
>[FreeBSD 4.x]
>This patch has been verified to apply to FreeBSD 4.2-RELEASE and
>4.3-RELEASE systems.  It may or may not apply to older, unsupported
>releases.
>
># fetch
>ftp://ftp.FreeBSD.org/pub/FreeBSD/CERT/patches/SA-01:52/frag-4.x.patch #
>fetch
>ftp://ftp.FreeBSD.org/pub/FreeBSD/CERT/patches/SA-01:52/frag-4.x.patch.asc
>
>
>[FreeBSD 3.x]
>This patch has been verified to apply to FreeBSD 3.5.1-RELEASE
>systems.  It may or may not apply to older, unsupported releases.
>
># fetch
>ftp://ftp.FreeBSD.org/pub/FreeBSD/CERT/patches/SA-01:52/frag-3.x.patch #
>fetch
>ftp://ftp.FreeBSD.org/pub/FreeBSD/CERT/patches/SA-01:52/frag-3.x.patch.asc
>
>
>Verify the detached PGP signature using your PGP utility.
>
># cd /usr/src/
># patch -p < /path/to/patch
>
>Rebuild the kernel as described in the following URL:
>
>  http://www.freebsd.org/handbook/kernelconfig.html
>
>3) FreeBSD 4.3-RELEASE systems:
>
>An experimental upgrade package is available for users who wish to
>provide testing and feedback on the binary upgrade process.  This
>package may be installed on FreeBSD 4.3-RELEASE systems only, and is
>intended for use on systems for which source patching is not practical
>or convenient.
>
>If you use the upgrade package, feedback (positive or negative) to
>security-officer@FreeBSD.org is requested so we can improve the
>process for future advisories.
>
>Since this vulnerability involves the FreeBSD kernel which is often
>locally customized on installed systems, a universal binary upgrade
>package is not feasible.  This package includes a patched version of
>the GENERIC kernel which should be suitable for use on many systems.
>Systems requiring a customized kernel must use an alternative
>solution.
>
>During the installation procedure, backup copies are made of the files
>which are replaced by the package.  These backup copies will be
>reinstalled if the package is removed, reverting the system to a
>pre-patched state.
>
># fetch
>ftp://ftp.FreeBSD.org/pub/FreeBSD/CERT/packages/SA-01:52/security-patch-fra
>gment-01.52.tgz # fetch
>ftp://ftp.FreeBSD.org/pub/FreeBSD/CERT/packages/SA-01:52/security-patch-fra
>gment-01.52.tgz.asc
>
>Verify the detached PGP signature using your PGP utility.
>
># pkg_add security-patch-fragment-01.52.tgz
>
>The new kernel is named /kernel.GENERIC to avoid conflict with the
>default kernel name (``/kernel'').  To cause the system to boot
>automatically with the new kernel, add the following line to
>/boot/loader.conf:
>
>kernel="/kernel.GENERIC"
>
>and reboot the system to load the new kernel.  The old kernel is still
>available and can be manually loaded in the boot loader in case of
>problems.
>
>VII. Credits/References
>
>NetBSD wrote the original advisory from which large portions of this
>advisory was taken.
>
><URL:http://www.securityfocus.com/vdb/bottom.html?vid=2799>;
><URL:ftp://ftp.netbsd.org/pub/NetBSD/security/advisories/NetBSD-SA2001-006.
>txt.asc>
>
>
>
>*** END PGP VERIFIED MESSAGE ***
>
>To Unsubscribe: send mail to majordomo@FreeBSD.org
>with "unsubscribe freebsd-security" in the body of the message
>
>

-----BEGIN PGP SIGNATURE-----
Version: PGPfreeware 6.5.2 for non-commercial use <http://www.pgp.com>;

iQA/AwUBO3Aid26Mn6deTS6qEQKtowCfWHIXCOigH+XVej4/P1qSdcuQpsMAoOOv
cb+ydQccjqqh94gW3eX+IRo1
=NPZl
-----END PGP SIGNATURE-----



To Unsubscribe: send mail to majordomo@FreeBSD.org
with "unsubscribe freebsd-questions" in the body of the message




Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?015901c11f6d$1af8e4e0$0901a8c0>