From security-advisories at freebsd.org Wed Jun 10 10:41:45 2009 From: security-advisories at freebsd.org (FreeBSD Security Advisories) Date: Wed Jun 10 10:41:55 2009 Subject: [FreeBSD-Announce] FreeBSD Security Advisory FreeBSD-SA-09:11.ntpd Message-ID: <200906101041.n5AAfjtR025312@freefall.freebsd.org> -----BEGIN PGP SIGNED MESSAGE----- Hash: SHA1 ============================================================================= FreeBSD-SA-09:11.ntpd Security Advisory The FreeBSD Project Topic: ntpd stack-based buffer-overflow vulnerability Category: contrib Module: ntpd Announced: 2009-06-10 Credits: Chris Ries Affects: All supported versions of FreeBSD. Corrected: 2009-06-10 10:31:11 UTC (RELENG_7, 7.2-STABLE) 2009-06-10 10:31:11 UTC (RELENG_7_2, 7.2-RELEASE-p1) 2009-06-10 10:31:11 UTC (RELENG_7_1, 7.1-RELEASE-p6) 2009-06-10 10:31:11 UTC (RELENG_6, 6.4-STABLE) 2009-06-10 10:31:11 UTC (RELENG_6_4, 6.4-RELEASE-p5) 2009-06-10 10:31:11 UTC (RELENG_6_3, 6.3-RELEASE-p11) CVE Name: CVE-2009-1252 For general information regarding FreeBSD Security Advisories, including descriptions of the fields above, security branches, and the following sections, please visit . I. Background The ntpd(8) daemon is an implementation of the Network Time Protocol (NTP) used to synchronize the time of a computer system to a reference time source. Autokey is a security model for authenticating Network Time Protocol (NTP) servers to clients, using public key cryptography. II. Problem Description The ntpd(8) daemon is prone to a stack-based buffer-overflow when it is configured to use the 'autokey' security model. III. Impact This issue could be exploited to execute arbitrary code in the context of the service daemon, or crash the service daemon, causing denial-of-service conditions. IV. Workaround Use IP based restrictions in ntpd(8) itself or in IP firewalls to restrict which systems can send NTP packets to ntpd(8). Note that systems will only be affected if they have the "autokey" option set in /etc/ntp.conf; FreeBSD does not ship with a default ntp.conf file, so will not be affected unless this option has been explicitly enabled by the system administrator. V. Solution Perform one of the following: 1) Upgrade your vulnerable system to 6-STABLE, or 7-STABLE, or to the RELENG_7_2, RELENG_7_1, RELENG_6_4, or RELENG_6_3 security branch dated after the correction date. 2) To patch your present system: The following patches have been verified to apply to FreeBSD 6.3, 6.4, 7.1, and 7.2 systems. a) Download the relevant patch from the location below, and verify the detached PGP signature using your PGP utility. [FreeBSD 6.3] # fetch http://security.FreeBSD.org/patches/SA-09:11/ntpd63.patch # fetch http://security.FreeBSD.org/patches/SA-09:11/ntpd63.patch.asc [FreeBSD 6.4 and 7.x] # fetch http://security.FreeBSD.org/patches/SA-09:11/ntpd.patch # fetch http://security.FreeBSD.org/patches/SA-09:11/ntpd.patch.asc b) Execute the following commands as root: # cd /usr/src # patch < /path/to/patch # cd /usr/src/usr.sbin/ntp/ntpd # make obj && make depend && make && make install # /etc/rc.d/ntpd restart VI. Correction details The following list contains the revision numbers of each file that was corrected in FreeBSD. CVS: Branch Revision Path - ------------------------------------------------------------------------- RELENG_6 src/contrib/ntp/ntpd/ntp_crypto.c 1.1.1.3.8.3 RELENG_6_4 src/UPDATING 1.416.2.40.2.9 src/sys/conf/newvers.sh 1.69.2.18.2.11 src/contrib/ntp/ntpd/ntp_crypto.c 1.1.1.3.8.1.2.2 RELENG_6_3 src/UPDATING 1.416.2.37.2.16 src/sys/conf/newvers.sh 1.69.2.15.2.15 src/contrib/ntp/ntpd/ntp_crypto.c 1.1.1.3.20.2 RELENG_7 src/contrib/ntp/ntpd/ntp_crypto.c 1.1.1.3.18.3 RELENG_7_2 src/UPDATING 1.507.2.23.2.4 src/sys/conf/newvers.sh 1.72.2.11.2.5 src/contrib/ntp/ntpd/ntp_crypto.c 1.1.1.3.18.2.2.1 RELENG_7_1 src/UPDATING 1.507.2.13.2.9 src/sys/conf/newvers.sh 1.72.2.9.2.10 src/contrib/ntp/ntpd/ntp_crypto.c 1.1.1.3.18.1.2.2 - ------------------------------------------------------------------------- Subversion: Branch/path Revision - ------------------------------------------------------------------------- stable/6/ r193893 releng/6.4/ r193893 releng/6.3/ r193893 stable/7/ r193893 releng/7.2/ r193893 releng/7.1/ r193893 - ------------------------------------------------------------------------- VII. References http://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2009-1252 The latest revision of this advisory is available at http://security.FreeBSD.org/advisories/FreeBSD-SA-09:11.ntpd.asc -----BEGIN PGP SIGNATURE----- Version: GnuPG v1.4.9 (FreeBSD) iEYEARECAAYFAkovjOwACgkQFdaIBMps37KRpwCfaQF9q8KhElv6LqgFv3DX2h9c hbEAn2Q0X8Qv8r5OySnhlAw2pMxlxkXK =Mh2u -----END PGP SIGNATURE----- From security-advisories at freebsd.org Wed Jun 10 10:41:49 2009 From: security-advisories at freebsd.org (FreeBSD Security Advisories) Date: Wed Jun 10 10:42:17 2009 Subject: [FreeBSD-Announce] FreeBSD Security Advisory FreeBSD-SA-09:10.ipv6 Message-ID: <200906101041.n5AAfn6R025354@freefall.freebsd.org> -----BEGIN PGP SIGNED MESSAGE----- Hash: SHA1 ============================================================================= FreeBSD-SA-09:10.ipv6 Security Advisory The FreeBSD Project Topic: Missing permission check on SIOCSIFINFO_IN6 ioctl Category: core Module: netinet6 Announced: 2009-06-10 Credits: Hiroki Sato Affects: All supported versions of FreeBSD. Corrected: 2009-06-10 10:31:11 UTC (RELENG_7, 7.2-STABLE) 2009-06-10 10:31:11 UTC (RELENG_7_2, 7.2-RELEASE-p1) 2009-06-10 10:31:11 UTC (RELENG_7_1, 7.1-RELEASE-p6) 2009-06-10 10:31:11 UTC (RELENG_6, 6.4-STABLE) 2009-06-10 10:31:11 UTC (RELENG_6_4, 6.4-RELEASE-p5) 2009-06-10 10:31:11 UTC (RELENG_6_3, 6.3-RELEASE-p11) For general information regarding FreeBSD Security Advisories, including descriptions of the fields above, security branches, and the following sections, please visit . I. Background IPv6 is a new Internet Protocol, designed to replace (and avoid many of the problems with) the current Internet Protocol (version 4). Many properties of the FreeBSD IPv6 network stack can be configured via the ioctl(2) interface. II. Problem Description The SIOCSIFINFO_IN6 ioctl is missing a necessary permissions check. III. Impact Local users, including non-root users and users inside jails, can set some IPv6 interface properties. These include changing the link MTU and disabling interfaces entirely. Note that this affects IPv6 only; IPv4 functionality cannot be affected by exploiting this vulnerability. IV. Workaround No workaround is available, but systems without local untrusted users are not vulnerable. V. Solution Perform one of the following: 1) Upgrade your vulnerable system to 6-STABLE, or 7-STABLE, or to the RELENG_7_2, RELENG_7_1, RELENG_6_4, or RELENG_6_3 security branch dated after the correction date. 2) To patch your present system: The following patches have been verified to apply to FreeBSD 6.3, 6.4, 7.1, and 7.2 systems. a) Download the relevant patch from the location below, and verify the detached PGP signature using your PGP utility. [FreeBSD 6.x] # fetch http://security.FreeBSD.org/patches/SA-09:10/ipv6-6.patch # fetch http://security.FreeBSD.org/patches/SA-09:10/ipv6-6.patch.asc [FreeBSD 7.x] # fetch http://security.FreeBSD.org/patches/SA-09:10/ipv6.patch # fetch http://security.FreeBSD.org/patches/SA-09:10/ipv6.patch.asc b) Apply the patch. # cd /usr/src # patch < /path/to/patch c) Recompile your kernel as described in and reboot the system. VI. Correction details The following list contains the revision numbers of each file that was corrected in FreeBSD. CVS: Branch Revision Path - ------------------------------------------------------------------------- RELENG_6 src/sys/netinet6/in6.c 1.51.2.13 RELENG_6_4 src/UPDATING 1.416.2.40.2.9 src/sys/conf/newvers.sh 1.69.2.18.2.11 src/sys/netinet6/in6.c 1.51.2.12.2.2 RELENG_6_3 src/UPDATING 1.416.2.37.2.16 src/sys/conf/newvers.sh 1.69.2.15.2.15 src/sys/netinet6/in6.c 1.51.2.11.2.1 RELENG_7 src/sys/netinet6/in6.c 1.73.2.7 RELENG_7_2 src/UPDATING 1.507.2.23.2.4 src/sys/conf/newvers.sh 1.72.2.11.2.5 src/sys/netinet6/in6.c 1.73.2.6.2.2 RELENG_7_1 src/UPDATING 1.507.2.13.2.9 src/sys/conf/newvers.sh 1.72.2.9.2.10 src/sys/netinet6/in6.c 1.73.2.4.2.2 - ------------------------------------------------------------------------- Subversion: Branch/path Revision - ------------------------------------------------------------------------- stable/6/ r193893 releng/6.4/ r193893 releng/6.3/ r193893 stable/7/ r193893 releng/7.2/ r193893 releng/7.1/ r193893 - ------------------------------------------------------------------------- VII. References The latest revision of this advisory is available at http://security.FreeBSD.org/advisories/FreeBSD-SA-09:10.ipv6.asc -----BEGIN PGP SIGNATURE----- Version: GnuPG v1.4.9 (FreeBSD) iEYEARECAAYFAkovjOUACgkQFdaIBMps37IFxwCgj0o1r4IQMIEvp3y4oIqhQwxe cI8AoIlxweqjakKxu/A/Z4+xjoGmqUdF =/kNi -----END PGP SIGNATURE----- From security-advisories at freebsd.org Wed Jun 10 10:41:56 2009 From: security-advisories at freebsd.org (FreeBSD Security Advisories) Date: Wed Jun 10 10:42:33 2009 Subject: [FreeBSD-Announce] FreeBSD Security Advisory FreeBSD-SA-09:09.pipe Message-ID: <200906101041.n5AAfsTT025407@freefall.freebsd.org> -----BEGIN PGP SIGNED MESSAGE----- Hash: SHA1 ============================================================================= FreeBSD-SA-09:09.pipe Security Advisory The FreeBSD Project Topic: Local information disclosure via direct pipe writes Category: core Module: kern Announced: 2009-06-10 Credits: Pieter de Boer Affects: All supported versions of FreeBSD. Corrected: 2009-06-10 10:31:11 UTC (RELENG_7, 7.2-STABLE) 2009-06-10 10:31:11 UTC (RELENG_7_2, 7.2-RELEASE-p1) 2009-06-10 10:31:11 UTC (RELENG_7_1, 7.1-RELEASE-p6) 2009-06-10 10:31:11 UTC (RELENG_6, 6.4-STABLE) 2009-06-10 10:31:11 UTC (RELENG_6_4, 6.4-RELEASE-p5) 2009-06-10 10:31:11 UTC (RELENG_6_3, 6.3-RELEASE-p11) For general information regarding FreeBSD Security Advisories, including descriptions of the fields above, security branches, and the following sections, please visit . I. Background One of the most commonly used forms of interprocess communication on FreeBSD and other UNIX-like systems is the (anonymous) pipe. In this mechanism, a pair of file descriptors is created, and data written to one descriptor can be read from the other. FreeBSD's pipe implementation contains an optimization known as "direct writes". In this optimization, rather than copying data into kernel memory when the write(2) system call is invoked and then copying the data again when the read(2) system call is invoked, the FreeBSD kernel takes advantage of virtual memory mapping to allow the data to be copied directly between processes. II. Problem Description An integer overflow in computing the set of pages containing data to be copied can result in virtual-to-physical address lookups not being performed. III. Impact An unprivileged process can read pages of memory which belong to other processes or to the kernel. These may contain information which is sensitive in itself; or may contain passwords or cryptographic keys which can be indirectly exploited to gain sensitive information or access. IV. Workaround No workaround is available, but systems without untrusted local users are not vulnerable. System administrators are reminded that even if a system is not intended to have untrusted local users, it may be possible for an attacker to exploit some other vulnerability to obtain local user access to a system. V. Solution Perform one of the following: 1) Upgrade your vulnerable system to 6-STABLE, or 7-STABLE, or to the RELENG_7_2, RELENG_7_1, RELENG_6_4, or RELENG_6_3 security branch dated after the correction date. 2) To patch your present system: The following patches have been verified to apply to FreeBSD 6.3, 6.4, 7.1, and 7.2 systems. 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-09:09/pipe.patch # fetch http://security.FreeBSD.org/patches/SA-09:09/pipe.patch.asc b) Apply the patch. # cd /usr/src # patch < /path/to/patch c) Recompile your kernel as described in and reboot the system. VI. Correction details The following list contains the revision numbers of each file that was corrected in FreeBSD. CVS: Branch Revision Path - ------------------------------------------------------------------------- RELENG_6 src/sys/kern/sys_pipe.c 1.184.2.5 RELENG_6_4 src/UPDATING 1.416.2.40.2.9 src/sys/conf/newvers.sh 1.69.2.18.2.11 src/sys/kern/sys_pipe.c 1.184.2.4.2.2 RELENG_6_3 src/UPDATING 1.416.2.37.2.16 src/sys/conf/newvers.sh 1.69.2.15.2.15 src/sys/kern/sys_pipe.c 1.184.2.2.6.2 RELENG_7 src/sys/kern/sys_pipe.c 1.191.2.5 RELENG_7_2 src/UPDATING 1.507.2.23.2.4 src/sys/conf/newvers.sh 1.72.2.11.2.5 src/sys/kern/sys_pipe.c 1.191.2.3.4.2 RELENG_7_1 src/UPDATING 1.507.2.13.2.9 src/sys/conf/newvers.sh 1.72.2.9.2.10 src/sys/kern/sys_pipe.c 1.191.2.3.2.2 - ------------------------------------------------------------------------- Subversion: Branch/path Revision - ------------------------------------------------------------------------- stable/6/ r193893 releng/6.4/ r193893 releng/6.3/ r193893 stable/7/ r193893 releng/7.2/ r193893 releng/7.1/ r193893 - ------------------------------------------------------------------------- VII. References The latest revision of this advisory is available at http://security.FreeBSD.org/advisories/FreeBSD-SA-09:09.pipe.asc -----BEGIN PGP SIGNATURE----- Version: GnuPG v1.4.9 (FreeBSD) iEYEARECAAYFAkovjN0ACgkQFdaIBMps37JkXwCgmLcEMOMAEIXRoJ220zwZhMKn f+gAn1bZyLMhfZU7TI0xxhizwetDwMVI =J37B -----END PGP SIGNATURE----- From deb at freebsdfoundation.org Wed Jun 17 18:57:36 2009 From: deb at freebsdfoundation.org (Deb Goodkin) Date: Wed Jun 17 20:28:11 2009 Subject: [FreeBSD-Announce] Foundation Project Announcement Message-ID: <4A393C9B.1090607@freebsdfoundation.org> Dear FreeBSD Community, The FreeBSD Foundation is pleased to announce another funded project! Mark Linimon has been awarded a grant to prototype a new problem reporting system for the FreeBSD project. This project will allow Mark to define the features, look-and-feel, and architecture of a future replacement of the project's current GNATs based system. Once the prototype is complete, it will be used to garner input from the FreeBSD community before a production system is implemented. "One of the most frequently requested improvements from the FreeBSD developer community is an improved bug tracking system," said Mark Linimon. He also added, "The design goals of this prototype are to incorporate such features as markedly improved workflow, better categorization, customizable email notifications, and redesigned web pages to make searching and browsing easier." "Once the prototype is completed," Mark added, "it will be circulated amongst the developer community for feedback. I am happy to have the Foundation's support to work on this project." "Problem reporting software is a critical tool for getting feedback from the FreeBSD user community, recording information about defects and missing features in the system, and making our volunteer developers productive," said Justin Gibbs, Founder of the FreeBSD Foundation. "Mark has used manpower and sheer will to overcome the deficiencies in the current problem reporting system, and to make it work for the project. But our GNATs isn't fully utilized because of missing features and a clumsy user interface. We're very excited to help address these problems in a core piece of the FreeBSD project's infrastructure." This project will be completed by the end of June. Sincerely, The FreeBSD Foundation From errata-notices at freebsd.org Wed Jun 24 05:44:24 2009 From: errata-notices at freebsd.org (FreeBSD Errata Notices) Date: Wed Jun 24 05:44:46 2009 Subject: [FreeBSD-Announce] FreeBSD Errata Notice FreeBSD-EN-09:02.bce Message-ID: <200906240544.n5O5iORB050583@freefall.freebsd.org> -----BEGIN PGP SIGNED MESSAGE----- Hash: SHA1 ============================================================================= FreeBSD-EN-09:02.bce Errata Notice The FreeBSD Project Topic: bce(4) does not work with lagg(4) LACP mode Category: core Module: sys/dev Announced: 2009-06-24 Credits: Pete French David Christensen Affects: FreeBSD 7.2 Corrected: 2009-05-20 21:13:49 (RELENG_7, 7.2-STABLE) 2009-06-24 05:28:09 (RELENG_7_2, 7.2-RELEASE-p2) For general information regarding FreeBSD Errata Notices and Security Advisories, including descriptions of the fields above, security branches, and the following sections, please visit . I. Background bce(4) is a network device driver for Broadcom NetXtreme II (BCM5706/5708/5709/5716) PCI/PCIe Gigabit Ethernet adapters. The lagg(4) driver is a pseudo network interface driver which allows aggregation of multiple network interfaces as one virtual interface for the purpose of providing fault-tolerance and high-speed links. II. Problem Description The bce(4) driver used an incorrect total packet length calculation. This bug was accidentally added just after 7.1-RELEASE. III. Impact When adding a bce(4) interface on the system as a lagg(4) member with the LACP aggregation protocol enabled network communication via the bce(4) interface stops completely. Although the bce(4) interface works if it is not a lagg(4) member, the incoming traffic statistics which can be found in netstat(1) output will be incorrect because every packet is recognized as full-sized one. IV. Workaround No workaround is available. V. Solution Perform one of the following: 1) Upgrade your vulnerable system to 7-STABLE or to the RELENG_7_2 security branch dated after the correction date. 2) To patch your present system: The following patches have been verified to apply to FreeBSD 7.2 system. 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/EN-09:02/bce.patch # fetch http://security.FreeBSD.org/patches/EN-09:02/bce.patch.asc b) Apply the patch. # cd /usr/src # patch < /path/to/patch c) Recompile your kernel as described in and reboot the system. VI. Correction details The following list contains the revision numbers of each file that was corrected in FreeBSD. CVS: Branch Revision Path - ------------------------------------------------------------------------- RELENG_7 src/sys/dev/bce/if_bce.c 1.34.2.8 src/sys/dev/bce/if_bcereg.c 1.16.2.3 RELENG_7_2 src/UPDATING 1.507.2.23.2.5 src/sys/conf/newvers.sh 1.72.2.11.2.6 src/sys/dev/bce/if_bce.c 1.34.2.7.2.2 - ------------------------------------------------------------------------- Subversion: Branch/path Revision - ------------------------------------------------------------------------- stable/7/ r192477 releng/7.2/ r194808 - ------------------------------------------------------------------------- VII. References The latest revision of this advisory is available at http://security.FreeBSD.org/advisories/FreeBSD-EN-09:02.bce.asc -----BEGIN PGP SIGNATURE----- Version: GnuPG v1.4.9 (FreeBSD) iEYEARECAAYFAkpBu9cACgkQFdaIBMps37IyrgCeKorJrpSXubynKzNJ2ld4j1K3 RqoAnAjhR8Fld9c8gJUIP/BuQ0wx2atT =oSkz -----END PGP SIGNATURE----- From errata-notices at freebsd.org Wed Jun 24 05:44:27 2009 From: errata-notices at freebsd.org (FreeBSD Errata Notices) Date: Wed Jun 24 05:44:48 2009 Subject: [FreeBSD-Announce] FreeBSD Errata Notice FreeBSD-EN-09:03.fxp Message-ID: <200906240544.n5O5iRNE050599@freefall.freebsd.org> -----BEGIN PGP SIGNED MESSAGE----- Hash: SHA1 ============================================================================= FreeBSD-EN-09:03.fxp Errata Notice The FreeBSD Project Topic: Poor TCP performance of fxp(4) Category: core Module: sys/dev Announced: 2009-06-24 Credits: Bjoern Koenig Pyun YongHyeon Affects: FreeBSD 7.2 Corrected: 2009-05-07 01:14:59 (RELENG_7, 7.2-STABLE) 2009-06-24 05:28:09 (RELENG_7_2, 7.2-RELEASE-p3) For general information regarding FreeBSD Errata Notices and Security Advisories, including descriptions of the fields above, security branches, and the following sections, please visit . I. Background fxp(4) is a network device driver which provides support for Ethernet adapters based on the Intel i82557, i82558, i82559, i82550, and i82562 chips. It supports TCP segmentation offload (TSO) for IPv4 on i82550 and i82551. II. Problem Description When a TSO option is enabled, fxp(4) always sets the length of outgoing IP packets as the interface MTU (Maximum Transmission Unit). This could could cause the packet to be lost when the TCP receiver advertises a smaller MSS (Maximum Segment Size) than the interface MTU on the sender side. III. Impact TCP connections via fxp(4) can cause significantly poor performance when the TSO option is enabled due to packet loss. Note that the loss depends on the receiver side's MSS. IV. Workaround Disable TSO of fxp(4) interfaces on your system. There are two ways to do this: (disable TSO of a specific interface; "fxp0" in the below example) # ifconfig fxp0 -tso (disable TSO of all interfaces on the system) # sysctl net.inet.tcp.tso=0 V. Solution Perform one of the following: 1) Upgrade your vulnerable system to 7-STABLE or to the RELENG_7_2 security branch dated after the correction date. 2) To patch your present system: The following patches have been verified to apply to FreeBSD 7.2 system. 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/EN-09:03/fxp.patch # fetch http://security.FreeBSD.org/patches/EN-09:03/fxp.patch.asc b) Apply the patch. # cd /usr/src # patch < /path/to/patch c) Recompile your kernel as described in and reboot the system. VI. Correction details The following list contains the revision numbers of each file that was corrected in FreeBSD. CVS: Branch Revision Path - ------------------------------------------------------------------------- RELENG_7 src/sys/dev/fxp/if_fxp.c 1.266.2.15 RELENG_7_2 src/UPDATING 1.507.2.23.2.5 src/sys/conf/newvers.sh 1.72.2.11.2.6 src/sys/dev/fxp/if_fxp.c 1.266.2.14.2.2 - ------------------------------------------------------------------------- Subversion: Branch/path Revision - ------------------------------------------------------------------------- stable/7/ r191867 releng/7.2/ r194808 - ------------------------------------------------------------------------- VII. References The latest revision of this advisory is available at http://security.FreeBSD.org/advisories/FreeBSD-EN-09:03.fxp.asc -----BEGIN PGP SIGNATURE----- Version: GnuPG v1.4.9 (FreeBSD) iEYEARECAAYFAkpBvA0ACgkQFdaIBMps37IKbACfdnwjftNf/f/3c+hvxOKGz7eg osQAmwRaCBV/a2A3Pdxt/FxGwg+bHXM7 =rUkc -----END PGP SIGNATURE----- From errata-notices at freebsd.org Wed Jun 24 05:44:30 2009 From: errata-notices at freebsd.org (FreeBSD Errata Notices) Date: Wed Jun 24 05:44:49 2009 Subject: [FreeBSD-Announce] FreeBSD Errata Notice FreeBSD-EN-09:04.fork Message-ID: <200906240544.n5O5iTDA050615@freefall.freebsd.org> -----BEGIN PGP SIGNED MESSAGE----- Hash: SHA1 ============================================================================= FreeBSD-EN-09:04.fork Errata Notice The FreeBSD Project Topic: Deadlock in a multi-threaded program during fork(2) Category: core Module: libc Announced: 2009-06-24 Credits: Konstantin Belousov , Max Brazhnikov Affects: FreeBSD 7.2 Corrected: 2009-05-03 17:51:38 (RELENG_7, 7.2-STABLE) 2009-06-24 05:28:09 (RELENG_7_2, 7.2-RELEASE-p2) For general information regarding FreeBSD Errata Notices and Security Advisories, including descriptions of the fields above, security branches, and the following sections, please visit . I. Background fork(2) is a system call which causes creation of a new process. FreeBSD supports invoking the malloc(3) function during the fork(2) in a process running in threaded mode which involves locking of the memory allocator. II. Problem Description A lock order reversal has been found in the interaction between the malloc(3) implementation and threading library. When a multi-threaded process calls the fork(2) system call in a thread and the malloc(3) function in another thread it can cause a deadlock in the child process. III. Impact A multi-threaded program that calls fork(2) in a thread and malloc(3) in another thread can make the child process stop unintentionally. There is no direct impact on the other processes or the kernel. IV. Workaround No workaround is available. V. Solution Perform one of the following: 1) Upgrade your vulnerable system to 7-STABLE or to the RELENG_7_2 security branch dated after the correction date. 2) To patch your present system: The following patches have been verified to apply to FreeBSD 7.2 system. 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/EN-09:04/fork.patch # fetch http://security.FreeBSD.org/patches/EN-09:04/fork.patch.asc b) Execute the following commands as root: # cd /usr/src # patch < /path/to/patch # cd /usr/src/lib/libc # make obj && make depend && make && make install VI. Correction details The following list contains the revision numbers of each file that was corrected in FreeBSD. CVS: Branch Revision Path - ------------------------------------------------------------------------- RELENG_7 src/lib/libc/stdlib/malloc.c 1.147.2.7 RELENG_7_2 src/UPDATING 1.507.2.23.2.5 src/sys/conf/newvers.sh 1.72.2.11.2.6 src/lib/libc/stdlib/malloc.c 1.147.2.6.2.2 - ------------------------------------------------------------------------- Subversion: Branch/path Revision - ------------------------------------------------------------------------- stable/7/ r191767 releng/7.2/ r194808 - ------------------------------------------------------------------------- VII. References The latest revision of this advisory is available at http://security.FreeBSD.org/advisories/FreeBSD-EN-09:04.fork.asc -----BEGIN PGP SIGNATURE----- Version: GnuPG v1.4.9 (FreeBSD) iEYEARECAAYFAkpBvBsACgkQFdaIBMps37LnLQCeNw8Es9R9X8QySoZni2JQ9Kma N+8An3Ff/bB4l3dvgfAa0rAA+TjbfQBV =8YtE -----END PGP SIGNATURE-----