FreeBSD Security Advisories
2014-Sep-16 10:14 UTC
[FreeBSD-Announce] FreeBSD Security Advisory FreeBSD-SA-14:19.tcp
-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA512
============================================================================FreeBSD-SA-14:19.tcp
Security Advisory
The FreeBSD Project
Topic: Denial of Service in TCP packet processing
Category: core
Module: inet
Announced: 2014-09-16
Credits: Jonathan Looney (Juniper SIRT)
Affects: All supported versions of FreeBSD.
Corrected: 2014-09-16 09:48:35UTC (stable/10, 10.1-PRERELEASE)
2014-09-16 09:48:35 UTC (stable/10, 10.1-BETA1-p1)
2014-09-16 09:50:19 UTC (releng/10.0, 10.0-RELEASE-p9)
2014-09-16 09:49:11 UTC (stable/9, 9.3-STABLE)
2014-09-16 09:50:19 UTC (releng/9.3, 9.3-RELEASE-p2)
2014-09-16 09:50:19 UTC (releng/9.2, 9.2-RELEASE-p12)
2014-09-16 09:50:19 UTC (releng/9.1, 9.1-RELEASE-p19)
2014-09-16 09:49:11 UTC (stable/8, 8.4-STABLE)
2014-09-16 09:50:19 UTC (releng/8.4, 8.4-RELEASE-p16)
CVE Name: CVE-2004-0230
For general information regarding FreeBSD Security Advisories,
including descriptions of the fields above, security branches, and the
following sections, please visit <URL:http://security.FreeBSD.org/>.
I. Background
The Transmission Control Protocol (TCP) of the TCP/IP protocol suite
provides a connection-oriented, reliable, sequence-preserving data
stream service. New TCP connections are initiated using special SYN
flag in a datagram. Sequencing of data is controlled by 32-bit sequence
numbers, that start with a random value and are increased using modulo
2**32 arithmetic. TCP endpoints maintain a window of expected, and
thus allowed, sequence numbers for a connection.
II. Problem Description
When a segment with the SYN flag for an already existing connection arrives,
the TCP stack tears down the connection, bypassing a check that the
sequence number in the segment is in the expected window.
III. Impact
An attacker who has the ability to spoof IP traffic can tear down a
TCP connection by sending only 2 packets, if they know both TCP port
numbers. In case one of the two port numbers is unknown, a successful
attack requires less than 2**17 packets spoofed, which can be
generated within less than a second on a decent connection to the
Internet.
IV. Workaround
It is possible to defend against these attacks with stateful traffic
inspection using a firewall. This can be done by enabling pf(4) on
the system and creating states for every connection. Even a default
ruleset to allow all traffic would be sufficient to mitigate this
issue.
V. Solution
Perform one of the following:
1) Upgrade your vulnerable system to a supported FreeBSD stable or
release / security branch (releng) dated after the correction date.
2) To update your vulnerable system via a source code patch:
The following patches have been verified to apply to the applicable
FreeBSD release branches.
a) Download the relevant patch from the location below, and verify the
detached PGP signature using your PGP utility.
# fetch http://security.FreeBSD.org/patches/SA-14:19/tcp.patch
# fetch http://security.FreeBSD.org/patches/SA-14:19/tcp.patch.asc
# gpg --verify tcp.patch.asc
b) Apply the patch. Execute the following commands as root:
# cd /usr/src
# patch < /path/to/patch
c) Recompile your kernel as described in
<URL:http://www.FreeBSD.org/handbook/kernelconfig.html> and reboot the
system.
3) To update your vulnerable system via a binary patch:
Systems running a RELEASE version of FreeBSD on the i386 or amd64
platforms can be updated via the freebsd-update(8) utility:
# freebsd-update fetch
# freebsd-update install
VI. Correction details
The following list contains the correction revision numbers for each
affected branch.
Branch/path Revision
- -------------------------------------------------------------------------
stable/8/ r271668
releng/8.4/ r271669
stable/9/ r271668
releng/9.1/ r271669
releng/9.2/ r271669
releng/9.3/ r271669
stable/10/ r271667
releng/10.0/ r271669
- -------------------------------------------------------------------------
To see which files were modified by a particular revision, run the
following command, replacing NNNNNN with the revision number, on a
machine with Subversion installed:
# svn diff -cNNNNNN --summarize svn://svn.freebsd.org/base
Or visit the following URL, replacing NNNNNN with the revision number:
<URL:http://svnweb.freebsd.org/base?view=revision&revision=NNNNNN>
VII. References
<URL:http://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2004-0230>
The latest revision of this advisory is available at
<URL:http://security.FreeBSD.org/advisories/FreeBSD-SA-14:19.tcp.asc>
-----BEGIN PGP SIGNATURE-----
iQIcBAEBCgAGBQJUGAnEAAoJEO1n7NZdz2rnHEkP/0fVx7U6l/YKVWToejpCxMLa
TS9ng0kN5GEkyYPTHbK3Pb5T2b4zhpDlhRVTDtwkP+00VXAGIAC6GiQl2QBAApgv
68cla+TU+gh2I03XxIl+eWHu4EWaYa0v2vDqL0n/XNLvcZVD3R0CC+6HHUbKm46t
dQg4olCdXdHkZleclvuYGjd+W8JfC17Xe3xshNKq7BV05XWqXrKoqxfxot8Cnxyx
n4MePoiNYn13iO5OpEWf2J6BS1JJ1M/L0CAAKGcNitD8dYMdKNEfn6tpPXHNIWGH
vUI0sD2rPRs3OWbK6Y3xmakCPK8MXjSyFNvJ2NkuU6dYdKBNHYswh46F9XP0cSDc
K5wB36R/mx5ky05HBCpAjiGh2X67Y6QtQiBq5ESltodAp1Sl966fgLnNKyIgeHr5
51QNCXDdc7S7pE9daA/uiIEZVKH8eKYGHP53zN/tiTDVWy7yTEBIW4lhJVkHIAAt
VBvLB0efr47z6IZ92GshGKZawaPAOeuBrEtYDOdNNJeh+WhSPoE5MKfS6NiH/lRg
DorewB9KbChCUhxMCH2Pj7AxTVoe3fjWtZYRo02OHMitTTJbExsyT33vTH1Sb2LT
6lXBFFOvo5Uw8JJyykd+GXUcwe13hcroS+eqz/GE+9yReMrwd82qbiDM4VlTdVMq
trAqOw2zRyBa7R6D2+4T
=qjIZ
-----END PGP SIGNATURE-----
Andriy Gapon
2014-Sep-16 12:48 UTC
[FreeBSD-Announce] FreeBSD Security Advisory FreeBSD-SA-14:19.tcp
On 16/09/2014 13:14, FreeBSD Security Advisories wrote:> ============================================================================> FreeBSD-SA-14:19.tcp Security Advisory > The FreeBSD Project > > Topic: Denial of Service in TCP packet processing > > Category: core > Module: inet > Announced: 2014-09-16 > Credits: Jonathan Looney (Juniper SIRT) > Affects: All supported versions of FreeBSD.Does the issue affect head aka CURRENT as well?> Corrected: 2014-09-16 09:48:35UTC (stable/10, 10.1-PRERELEASE) > 2014-09-16 09:48:35 UTC (stable/10, 10.1-BETA1-p1) > 2014-09-16 09:50:19 UTC (releng/10.0, 10.0-RELEASE-p9) > 2014-09-16 09:49:11 UTC (stable/9, 9.3-STABLE) > 2014-09-16 09:50:19 UTC (releng/9.3, 9.3-RELEASE-p2) > 2014-09-16 09:50:19 UTC (releng/9.2, 9.2-RELEASE-p12) > 2014-09-16 09:50:19 UTC (releng/9.1, 9.1-RELEASE-p19) > 2014-09-16 09:49:11 UTC (stable/8, 8.4-STABLE) > 2014-09-16 09:50:19 UTC (releng/8.4, 8.4-RELEASE-p16) > CVE Name: CVE-2004-0230 > > For general information regarding FreeBSD Security Advisories, > including descriptions of the fields above, security branches, and the > following sections, please visit <URL:http://security.FreeBSD.org/>. > > I. Background > > The Transmission Control Protocol (TCP) of the TCP/IP protocol suite > provides a connection-oriented, reliable, sequence-preserving data > stream service. New TCP connections are initiated using special SYN > flag in a datagram. Sequencing of data is controlled by 32-bit sequence > numbers, that start with a random value and are increased using modulo > 2**32 arithmetic. TCP endpoints maintain a window of expected, and > thus allowed, sequence numbers for a connection. > > II. Problem Description > > When a segment with the SYN flag for an already existing connection arrives, > the TCP stack tears down the connection, bypassing a check that the > sequence number in the segment is in the expected window. > > III. Impact > > An attacker who has the ability to spoof IP traffic can tear down a > TCP connection by sending only 2 packets, if they know both TCP port > numbers. In case one of the two port numbers is unknown, a successful > attack requires less than 2**17 packets spoofed, which can be > generated within less than a second on a decent connection to the > Internet. > > IV. Workaround > > It is possible to defend against these attacks with stateful traffic > inspection using a firewall. This can be done by enabling pf(4) on > the system and creating states for every connection. Even a default > ruleset to allow all traffic would be sufficient to mitigate this > issue. > > V. Solution > > Perform one of the following: > > 1) Upgrade your vulnerable system to a supported FreeBSD stable or > release / security branch (releng) dated after the correction date. > > 2) To update your vulnerable system via a source code patch: > > The following patches have been verified to apply to the applicable > FreeBSD release branches. > > a) Download the relevant patch from the location below, and verify the > detached PGP signature using your PGP utility. > > # fetch http://security.FreeBSD.org/patches/SA-14:19/tcp.patch > # fetch http://security.FreeBSD.org/patches/SA-14:19/tcp.patch.asc > # gpg --verify tcp.patch.asc > > b) Apply the patch. Execute the following commands as root: > > # cd /usr/src > # patch < /path/to/patch > > c) Recompile your kernel as described in > <URL:http://www.FreeBSD.org/handbook/kernelconfig.html> and reboot the > system. > > 3) To update your vulnerable system via a binary patch: > > Systems running a RELEASE version of FreeBSD on the i386 or amd64 > platforms can be updated via the freebsd-update(8) utility: > > # freebsd-update fetch > # freebsd-update install > > VI. Correction details > > The following list contains the correction revision numbers for each > affected branch. > > Branch/path Revision > ------------------------------------------------------------------------- > stable/8/ r271668 > releng/8.4/ r271669 > stable/9/ r271668 > releng/9.1/ r271669 > releng/9.2/ r271669 > releng/9.3/ r271669 > stable/10/ r271667 > releng/10.0/ r271669 > ------------------------------------------------------------------------- > > To see which files were modified by a particular revision, run the > following command, replacing NNNNNN with the revision number, on a > machine with Subversion installed: > > # svn diff -cNNNNNN --summarize svn://svn.freebsd.org/base > > Or visit the following URL, replacing NNNNNN with the revision number: > > <URL:http://svnweb.freebsd.org/base?view=revision&revision=NNNNNN> > > VII. References > > <URL:http://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2004-0230> > > The latest revision of this advisory is available at > <URL:http://security.FreeBSD.org/advisories/FreeBSD-SA-14:19.tcp.asc> > _______________________________________________ > freebsd-announce at freebsd.org mailing list > http://lists.freebsd.org/mailman/listinfo/freebsd-announce > To unsubscribe, send any mail to "freebsd-announce-unsubscribe at freebsd.org" >-- Andriy Gapon
Xin Li
2014-Sep-16 13:46 UTC
Re: [FreeBSD-Announce] FreeBSD Security Advisory FreeBSD-SA-14:19.tcp
-----BEGIN PGP SIGNED MESSAGE----- Hash: SHA512 On 9/16/14 8:48 PM, Andriy Gapon wrote:> On 16/09/2014 13:14, FreeBSD Security Advisories wrote: >> ============================================================================>> >>FreeBSD-SA-14:19.tcp Security Advisory>> The FreeBSD Project >> >> Topic: Denial of Service in TCP packet processing >> >> Category: core Module: inet Announced: >> 2014-09-16 Credits: Jonathan Looney (Juniper SIRT) >> Affects: All supported versions of FreeBSD. > > Does the issue affect head aka CURRENT as well?It does. Note that CURRENT is not considered as 'supported' in the security advisory context, though. Cheers, -----BEGIN PGP SIGNATURE----- iQIcBAEBCgAGBQJUGD9KAAoJEJW2GBstM+nsi3cQAKzL4RINOVU2FkZsLyN4RYGH golAhWQ2L07GYc1AfahyH/KNpGsYVT/bXuW+2qsm+Rl+UZbbYsN9Jza8RNSDCxPa 5MfQZXQEYAUfUcHMskqgf2vV5sNIzGp9F8ouxUZX0URAndv67Y5+bF4jIX+SlFcP f0kzwTFObDSYrYoGniZMzT17YAPB8cS1l/NkSH2Rnu7mbY7h0ybRngODZKnfFvoM fcPD/23cFqsxAK7jEo7i5a0lvx9dTm2Ahtesj7CyzJgTjB2/MhsJbNnp4rCOYx1f 4X3vePUoTUmkDqIT6SoFdO2aVAH1JDzM/e6swWQFLCYMZPI6x4Zw22vaARQSiECw aeHu2nkG/m4HVXrOiRUuy9Wk7rGq/IfzCMiTGdwU/mV3A952J/sDBjl211XKBDZq A6fKdBaXi9V5P7ykUt3HonEoVjbt71KmiMKI1pqE63q+QCw8sZCwqd7uwoiaE71B 7H1UYBNlEgxisP6WolzCPpBOMAEVQiqesYHlQHgW/kzq4aTVa7EumhBuciQ1QfDq fFERPnHHwwUiwF+D/OiJQtPCqVhpJSP48nJsyVTJKZWpUI8NU1ePDVmLUWLPbtv/ 5VKwwjtT9jJEC2sl4dSRNFT0xcMH2g0n3mdVxJTiF/RinWuk9Qf14l+43A/gzwps srLDGfcN70zXV0C0NXNT =yDa7 -----END PGP SIGNATURE----- _______________________________________________ freebsd-security@freebsd.org mailing list http://lists.freebsd.org/mailman/listinfo/freebsd-security To unsubscribe, send any mail to "freebsd-security-unsubscribe@freebsd.org"