Protect yourself against future threats.
-----BEGIN PGP SIGNED MESSAGE----- Hash: SHA1 =========================================================================== AUSCERT External Security Bulletin Redistribution ESB-2013.1706.2 embryonic TCP sockets local DoS 29 November 2013 =========================================================================== AusCERT Security Bulletin Summary --------------------------------- Product: NetBSD Publisher: NetBSD Operating System: NetBSD Impact/Access: Denial of Service -- Existing Account Resolution: Patch/Upgrade Original Bulletin: http://ftp.netbsd.org/pub/NetBSD/security/advisories/NetBSD-SA2013-011.txt.asc Revision History: November 29 2013: Specified OS - NetBSD November 28 2013: Initial Release - --------------------------BEGIN INCLUDED TEXT-------------------- - -----BEGIN PGP SIGNED MESSAGE----- Hash: SHA1 NetBSD Security Advisory 2013-011 ================================= Topic: embryonic TCP sockets local DoS Version: NetBSD-current: source prior to Nov 2nd, 2013 NetBSD 6.1 - 6.1.2: affected NetBSD 6.0 - 6.0.2: affected NetBSD 5.1 - 5.1.2: not affected NetBSD 5.2: not affected Severity: local DoS Fixed: NetBSD-current: Nov 2nd, 2013 NetBSD-6-0 branch: Nov 25th, 2013 NetBSD-6-1 branch: Nov 25th, 2013 NetBSD-6 branch: Nov 25th, 2013 Teeny versions released later than the fix date will contain the fix. Please note that NetBSD releases prior to 5.1 are no longer supported. It is recommended that all users upgrade to a supported release. Abstract ======== Recently two vulnerabilities in the area of embryonic sockets have been fixed. Both issues are due to a socket not having credentials set during a very short timeframe of its creation, and can lead to a user causing a panic by timing a tcpdrop just right. Technical Details ================= The network code adds new connections to the connection table in an interrupt and references a socket from this table. The socket is also added to the accept queue of the listening socket. At this point the socket has no credentials, but tcpdrop can find it in the connection table and crash the system, for the first issue by looking up its credentials and hitting an assertion, and in the second version by referencing a NULL pointer. Solutions and Workarounds ========================= Install and reboot to a kernel containing the fixes. The fastest way to do that, if you are running or can run a standard kernel built as part of the NetBSD release process, is to obtain the corresponding kernel from the daily NetBSD autobuild output and install it on your system. You can obtain such kernels from http://nyftp.netbsd.org/pub/NetBSD-daily/ where they are sorted by NetBSD branch, date, and architecture. To fix a system running e.g. NetBSD 6.0 or the stable NetBSD 6.0 branch, the most appropriate kernel will be the "netbsd-6-0" kernel. To fix a system running NetBSD-current, the "HEAD" kernel should be used. In all cases, a kernel from an autobuild dated newer than the fix date for the branch you are using must be used to fix the problem. If you cannot use the autobuilt kernels, then for all affected NetBSD versions, you need to obtain fixed kernel sources, rebuild and install the new kernel, and reboot the system. The fixed source may be obtained from the NetBSD CVS repository. The following instructions briefly summarise 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. NEWVERSION with the CVS version of the fix Versions of src/sys/netinet/tcp_usrreq.c: Branch NEWVERSION --------------------------- HEAD 1.168 netbsd-6 1.162.2.2 netbsd-6-1 1.162.2.1.6.1 netbsd-6-0 1.162.2.1.4.1 Versions of src/sys/kern/uipc_socket.c: Branch NEWVERSION --------------------------- HEAD 1.220 netbsd-6 1.209.2.4 netbsd-6-1 1.209.2.2.2.2 netbsd-6-0 1.209.2.1.4.2 To update from CVS, re-build, and re-install the kernel: # cd src # cvs update -rNEWVERSION src/sys/netinet/tcp_usrreq.c # cvs update -rNEWVERSION src/sys/kern/uipc_socket.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: http://www.NetBSD.org/guide/en/chap-kernel.html Thanks To ========= Thanks to Brian Marcotte for finding the issues and Christos Zoulas and Michael van Elst for developing fixes. Revision History ================ 2013-11-27 Initial release More Information ================ Advisories may be updated as new information becomes available. The most recent version of this advisory (PGP signed) can be found at http://ftp.NetBSD.org/pub/NetBSD/security/advisories/NetBSD-SA2013-011.txt.asc Information about NetBSD and NetBSD security can be found at http://www.NetBSD.org/ and http://www.NetBSD.org/Security/ . Copyright 2013, The NetBSD Foundation, Inc. All Rights Reserved. Redistribution permitted only in full, unmodified form. $NetBSD: NetBSD-SA2013-011.txt,v 1.2 2013/11/26 23:59:25 tonnerre Exp $ - -----BEGIN PGP SIGNATURE----- Version: GnuPG v1.4.15 (GNU/Linux) iQIcBAEBAgAGBQJSlTXnAAoJEAZJc6xMSnBuSH8P/RcYbDdKyoxomS0QZQCH7f3a ynbachoA6T7snbSSvMAbWha+A4m/UcTVMy7dZpxUmVipGl2Q/IIbQ030qX+V4KDR HtDUvY6WgmmfF3No7lIoryJ46yKV9xhSLeSvk47jHyNQQS6n4dvrrwHFqEhxuie5 TGLEsqeTSfxfNjlKYCfitdJU5YBY9Evr1no2nxCVjf2cyDVK+rHNrus0Y0d4suNr VU3wfrA2gOdGgBaWrMfs38tWPQ7gtsvJlp1YHw+L+3rdw25QOkZBf6xEEt+cpR74 PXIhDKquXaXmeoFUto0zetinuufdQ3lPZgYWhpBHn6WkY6g0q+WElNVbqLpteWR7 CUSJaEkjpn3zuCq/aJ/n6d3abQy4Mctj36Ew/yzTM0dokmbymZRPc2vjBNgPIZ/x C5WcEYn0U6pJ2eGvoU2eI4XLmU2D+MQsvuyQFyEvEXyU4tYZAnbGrCIteBfoeX1v IuW4bpohwrTcJ0N9m22UtuGDCDqOegDdlXr3qh9TWPOWgT3sHJwUOzjuyeNgeMdT 64IbVhPK0+YGQU5R/YtEkomC2xst9HzRCVYIzvCHvhWUqf57Yxs9ULvE/tIi6xSL r3N0Fz3YAFIyXjtG50XC0w/+27Q0DdpTtTIqDYYEnHnkPydmTR1QJQfGsOtF/kju NgP7knwQkxh9X4FpEQSa =Vhud - -----END PGP SIGNATURE----- - --------------------------END INCLUDED TEXT-------------------- You have received this e-mail bulletin as a result of your organisation's registration with AusCERT. The mailing list you are subscribed to is maintained within your organisation, so if you do not wish to continue receiving these bulletins you should contact your local IT manager. If you do not know who that is, please send an email to auscert@auscert.org.au and we will forward your request to the appropriate person. NOTE: Third Party Rights This security bulletin is provided as a service to AusCERT's members. As AusCERT did not write the document quoted above, AusCERT has had no control over its content. The decision to follow or act on information or advice contained in this security bulletin is the responsibility of each user or organisation, and should be considered in accordance with your organisation's site policies and procedures. AusCERT takes no responsibility for consequences which may arise from following or acting on information or advice contained in this security bulletin. NOTE: This is only the original release of the security bulletin. It may not be updated when updates to the original are made. If downloading at a later date, it is recommended that the bulletin is retrieved directly from the author's website to ensure that the information is still current. Contact information for the authors of the original document is included in the Security Bulletin above. If you have any questions or need further information, please contact them directly. Previous advisories and external security bulletins can be retrieved from: http://www.auscert.org.au/render.html?cid=1980 =========================================================================== Australian Computer Emergency Response Team The University of Queensland Brisbane Qld 4072 Internet Email: auscert@auscert.org.au Facsimile: (07) 3365 7031 Telephone: (07) 3365 4417 (International: +61 7 3365 4417) AusCERT personnel answer during Queensland business hours which are GMT+10:00 (AEST). On call after hours for member emergencies only. =========================================================================== -----BEGIN PGP SIGNATURE----- Comment: http://www.auscert.org.au/render.html?it=1967 iQIVAwUBUpfadRLndAQH1ShLAQIMzw//RPB69k5YSwDnmx/uGYMzBYivDyfeFoxm OxCeBGr6Vq7bpuWExb/F6Ot4fmPaCYYZ1QoE1sW03VXvVD8bh5VMfP06FeRYter1 TenEOKZKSOE6F8T/nO4uhojPIcbIMqR1qtJLLlFIfh5r0e0g/CZSw3779K+yl7Wx RZ3IKIRKv5tELwSyrPPEocpRJxbaKLJ+eWG1dDETQPCmcZ5T0RS2D5JU4FarperD i89Ewpv4/nxr5zti+hzoavAxE3aHq8eiy3EVmWDHl/jzQpj5yeV7N9S6/P984Tzx IOQvoRCoxR4BOJdZ5zKM1bB4B0d/5YY4R81+0Zi2JD4hjFGxXZURIEXT1IBvlIZq RcP0rKiByw1+Qx5zQNX/u5E3wZ+R+8+3IODgerNGwkp0d2XK1eCt2cY6tO/pP/Nc clnHG9MgaH7fiYK5ote8TnlJBI+xSTYLQwKzbZiHgwKZtG153vOikVveWGGv96C/ D2OEz4ftK1T0DHEKMNAyQrvsl8KkLxMnqeEiLoRVtOB1ORXeZR+2c+RPbKijSxDe aLrm+3kwDi+GmqlR6qydbCVWttPu0KWP6xhiJnuBe2rGq0bdhy8hvJHT3/+4MISM 94dEGgFL7pyPoQuFp1/75Cw6BNYI6dNzUbCyYTWgO10V6C5sQqttpj18KO84rB3p XAeuwLjqf44= =Lz+Q -----END PGP SIGNATURE-----