From owner-freebsd-security-notifications@freebsd.org Tue May 12 19:44:27 2020 Return-Path: Delivered-To: freebsd-security-notifications@mailman.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mailman.nyi.freebsd.org (Postfix) with ESMTP id E10A52F8F20 for ; Tue, 12 May 2020 19:44:27 +0000 (UTC) (envelope-from security-advisories@freebsd.org) Received: from freefall.freebsd.org (freefall.freebsd.org [96.47.72.132]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) server-signature RSA-PSS (4096 bits) client-signature RSA-PSS (4096 bits) client-digest SHA256) (Client CN "freefall.freebsd.org", Issuer "Let's Encrypt Authority X3" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 49M7Y74NLTz3DvB; Tue, 12 May 2020 19:44:27 +0000 (UTC) (envelope-from security-advisories@freebsd.org) Received: by freefall.freebsd.org (Postfix, from userid 945) id 6D390361C; Tue, 12 May 2020 19:44:27 +0000 (UTC) From: FreeBSD Security Advisories To: FreeBSD Security Advisories Subject: FreeBSD Security Advisory FreeBSD-SA-20:12.libalias Reply-To: freebsd-security@freebsd.org Precedence: bulk Message-Id: <20200512194427.6D390361C@freefall.freebsd.org> Date: Tue, 12 May 2020 19:44:27 +0000 (UTC) X-BeenThere: freebsd-security-notifications@freebsd.org X-Mailman-Version: 2.1.33 List-Id: "Moderated Security Notifications \[moderated, low volume\]" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Tue, 12 May 2020 19:44:28 -0000 -----BEGIN PGP SIGNED MESSAGE----- Hash: SHA512 ============================================================================= FreeBSD-SA-20:12.libalias Security Advisory The FreeBSD Project Topic: Insufficient packet length validation in libalias Category: core Module: libalias Announced: 2020-05-12 Credits: Lucas Leong (@_wmliang_) of Trend Micro Zero Day Initiative Vishnu working with Trend Micro Zero Day Initiative Affects: All supported versions of FreeBSD. Corrected: 2020-05-12 16:49:04 UTC (stable/12, 12.1-STABLE) 2020-05-12 16:51:11 UTC (releng/12.1, 12.1-RELEASE-p5) 2020-05-12 16:49:04 UTC (stable/11, 11.4-STABLE) 2020-05-12 16:51:11 UTC (releng/11.4, 11.4-BETA1-p1) 2020-05-12 16:51:11 UTC (releng/11.3, 11.3-RELEASE-p9) CVE Name: CVE-2020-7454 For general information regarding FreeBSD Security Advisories, including descriptions of the fields above, security branches, and the following sections, please visit . I. Background The ipfw(4) system facility allows IP packet filtering, redirecting, and traffic accounting. The ipfw(4) packet filter also contains two different methods of accomplishing network address translation (NAT): in-kernel and userspace. Both implementations use the same functions provided by libalias. The libalias(3) library is a collection of functions for aliasing and dealiasing of IP packets, intended for masquerading and NAT. Additionally, libalias(3) includes modules to support protocols that require additional logic to support address translation. Note: libalias(3) is not used by either the pf(4) or ipf(4) firewalls. II. Problem Description libalias(3) packet handlers do not properly validate the packet length before accessing the protocol headers. As a result, if a libalias(3) module does not properly validate the packet length before accessing the protocol header, it is possible for an out of bound read or write condition to occur. III. Impact A malicious attacker could send specially constructed packets that exploit the lack of validation allowing the attacker to read or write memory either from the kernel (for the in-kernel NAT implementation) or from the process space for natd (for the userspace implementation). IV. Workaround No workaround is available. Only systems using NAT and ipfw together are affected. Systems using ipfw(4) without NAT, or systems leveraging pf(4) or ipf(4) are not affected. V. Solution Upgrade your vulnerable system to a supported FreeBSD stable or release / security branch (releng) dated after the correction date, and reboot. Perform one of the following: 1) 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 # shutdown -r +10min "Rebooting for a security update" 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 https://security.FreeBSD.org/patches/SA-20:12/libalias.patch # fetch https://security.FreeBSD.org/patches/SA-20:12/libalias.patch.asc # gpg --verify libalias.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 and reboot the system. VI. Correction details The following list contains the correction revision numbers for each affected branch. Branch/path Revision - ------------------------------------------------------------------------- stable/12/ r360971 releng/12.1/ r360972 stable/11/ r360971 releng/11.4/ r360972 releng/11.3/ r360972 - ------------------------------------------------------------------------- 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: VII. References The latest revision of this advisory is available at -----BEGIN PGP SIGNATURE----- iQKTBAEBCgB9FiEE/A6HiuWv54gCjWNV05eS9J6n5cIFAl663tdfFIAAAAAALgAo aXNzdWVyLWZwckBub3RhdGlvbnMub3BlbnBncC5maWZ0aGhvcnNlbWFuLm5ldEZD MEU4NzhBRTVBRkU3ODgwMjhENjM1NUQzOTc5MkY0OUVBN0U1QzIACgkQ05eS9J6n 5cK1Iw/7BpU400GeYsWt6xd+tUuBqGGB6a28+4G/e2GkqMF83vwAaf9+M4siM4Md t0RUDLhcC3irLtGehLcXmVdWZUakmacGa3pGza3E8qdCSQC6+VdO4ghzk5fRlVf0 jmcvCi7zml0YhmATkfMBscPeOJmvENUpouVIwzn4CXMwCKMofjKXdW8+tiT6ppsD RVVeUrGdslVo40KZ8wqxx4y2IMKZ7qW/UZnqWQFAAD3d3iQBJXORpy1xn0AZStY2 ddnhkKdBOyKs5JLoJfSwP8vyTi4iMXPFILP1spuTAqxEFBRTZ3rTE81jimznhp5N /OXI92khj6deiTc1kun+ef3n89e1w6KO4Dt1LUNL08N4mpEwLwvBGLS/5v/3KVpm Q6XknASLY4RaWdj1D5zbPY6F+JFUv22la5mdia4Gn1zxjsyZNMGgM6nx8OCZn4qg JTr7RT4f+EubkEwYD1sw60iTYsqM3o1gFUzkFdEAotWU4tl3nxRkUwusikX7Uu7e 2QY46Sg/6NxW+oelx1qDGjMlP2CIlEsEqj4ND3eJzJT6nef1xmmTUUu+kQF4TBtX J7XqmuTzST2ySPhBUEIOKbjmzdbe+zpbraADhq5BS3zKKmcVSqmqJxkXPxzCwIwb uMcg2spQ5fzP/BquOGdQSx0rD3dQ5lTNX6QZyDaKHZR78ZAEiVE= =I9Vz -----END PGP SIGNATURE----- From owner-freebsd-security-notifications@freebsd.org Tue May 12 19:44:31 2020 Return-Path: Delivered-To: freebsd-security-notifications@mailman.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mailman.nyi.freebsd.org (Postfix) with ESMTP id BDF3F2F8FA4 for ; Tue, 12 May 2020 19:44:31 +0000 (UTC) (envelope-from security-advisories@freebsd.org) Received: from freefall.freebsd.org (freefall.freebsd.org [IPv6:2610:1c1:1:6074::16:84]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) server-signature RSA-PSS (4096 bits) client-signature RSA-PSS (4096 bits) client-digest SHA256) (Client CN "freefall.freebsd.org", Issuer "Let's Encrypt Authority X3" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 49M7YC3qpBz3DxK; Tue, 12 May 2020 19:44:31 +0000 (UTC) (envelope-from security-advisories@freebsd.org) Received: by freefall.freebsd.org (Postfix, from userid 945) id 34EFC34CB; Tue, 12 May 2020 19:44:31 +0000 (UTC) From: FreeBSD Security Advisories To: FreeBSD Security Advisories Subject: FreeBSD Security Advisory FreeBSD-SA-20:13.libalias Reply-To: freebsd-security@freebsd.org Precedence: bulk Message-Id: <20200512194431.34EFC34CB@freefall.freebsd.org> Date: Tue, 12 May 2020 19:44:31 +0000 (UTC) X-BeenThere: freebsd-security-notifications@freebsd.org X-Mailman-Version: 2.1.33 List-Id: "Moderated Security Notifications \[moderated, low volume\]" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Tue, 12 May 2020 19:44:32 -0000 -----BEGIN PGP SIGNED MESSAGE----- Hash: SHA512 ============================================================================= FreeBSD-SA-20:13.libalias Security Advisory The FreeBSD Project Topic: Memory disclosure vulnerability in libalias Category: core Module: libalias Announced: 2020-05-12 Credits: Vishnu Dev TJ working with Trend Micro Zero Day Initiative Affects: All supported versions of FreeBSD Corrected: 2020-05-12 16:52:08 UTC (stable/12, 12.1-STABLE) 2020-05-12 16:54:39 UTC (releng/12.1, 12.1-RELEASE-p5) 2020-05-12 16:52:08 UTC (stable/11, 11.4-STABLE) 2020-05-12 16:54:39 UTC (releng/11.4, 11.4-BETA1-p1) 2020-05-12 16:54:39 UTC (releng/11.3, 11.3-RELEASE-p9) CVE Name: CVE-2020-7455 For general information regarding FreeBSD Security Advisories, including descriptions of the fields above, security branches, and the following sections, please visit . I. Background The ipfw(4) system facility allows IP packet filtering, redirecting, and traffic accounting. The ipfw(4) packet filter also contains two different methods of accomplishing network address translation (NAT): in-kernel and userspace. Both implementations use the same functions provided by libalias. The libalias(3) library is a collection of functions for aliasing and dealiasing of IP packets, intended for masquerading and NAT. Additionally, libalias(3) includes modules to support protocols that require additional logic to support address translation. Note: libalias(3) is not used by either the pf(4) or ipf(4) firewalls. II. Problem Description The FTP packet handler in libalias incorrectly calculates some packet lengths. This may result in disclosing small amounts of memory from the kernel (for the in-kernel NAT implementation) or from the process space for natd (for the userspace implementation). III. Impact A malicious attacker could send specially constructed packets that exploit the erroneous calculation allowing the attacker to disclose small amount of memory either from the kernel (for the in-kernel NAT implementation) or from the process space for natd (for the userspace implementation). IV. Workaround No workaround is available. Only systems using NAT and ipfw together are affected. Systems using ipfw without NAT, or systems leveraging pf(4) or ipf(4) are not affected. V. Solution Upgrade your vulnerable system to a supported FreeBSD stable or release / security branch (releng) dated after the correction date, and reboot. Perform one of the following: 1) 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 # shutdown -r +10min "Rebooting for a security update" 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 https://security.FreeBSD.org/patches/SA-20:13/libalias.patch # fetch https://security.FreeBSD.org/patches/SA-20:13/libalias.patch.asc # gpg --verify libalias.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 and reboot the system. VI. Correction details The following list contains the correction revision numbers for each affected branch. Branch/path Revision - ------------------------------------------------------------------------- stable/12/ r360973 releng/12.1/ r360974 stable/11/ r360973 releng/11.4/ r360974 releng/11.3/ r360974 - ------------------------------------------------------------------------- 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: VII. References The latest revision of this advisory is available at -----BEGIN PGP SIGNATURE----- iQKTBAEBCgB9FiEE/A6HiuWv54gCjWNV05eS9J6n5cIFAl663tdfFIAAAAAALgAo aXNzdWVyLWZwckBub3RhdGlvbnMub3BlbnBncC5maWZ0aGhvcnNlbWFuLm5ldEZD MEU4NzhBRTVBRkU3ODgwMjhENjM1NUQzOTc5MkY0OUVBN0U1QzIACgkQ05eS9J6n 5cK3hhAAlkHMjDluGni1AaDicw5jZuyrdGLEMfgH2OdxcrTQvrBN6ZEkfLsiFvLV KWgUS+rx3GJApz4rZ6DFwsb+DG+kMCwYGevbT5zH5IUwe1HklyMLmjw48z47DVhx 8tpjCKNb4ttqBzb6RMURoJgo+2NAUQOZLnFGLSGOkquqeW9AhA97ZIGv7TyOPC1p rJD/ic1IxTUXniNu4soexsRqVoMqv1nA1DLrN4TTooFVCQTHaBUBxSTFlaAsBXyb 7L5GIEydZ2429spQACnFGW4RDveOGB/6Jbt2yHEuu+ASOrwl9sRSu79PYijcz28v yXjI0zG4A+78qmeCMbGHIySrLjc8XaWgr13Kp4S+40MWQhoGHJ2ZZVdLX010WTvm nbGs9NQ60sytxdJn1QRTleiBIKjJiVqNEADfS4DhXa/0HouN3L8dVR/+jPfLMFmT /7GZjhdbn4u0a1ZlgUZ62oHoo8NLop49KY4LHtHd7VpJZ8OfK0qkCN0DL4Ep+Wrg oZWJL5HGhFOEA4TDYuypJ58yIPsTDVa9MuLMx/SBF30jVZcS1LtbiMXXuZs6clig oOk4ZE0hpSRdA69xgX459kcTjU6XVJRnTPWyepG3sNljktwk8jyfwKHXOUpJONos 0jWu0ngj60djS8qCrxdkMn3t26fk0IhbA4leBEM+wAKmWsARt/M= =woOx -----END PGP SIGNATURE----- From owner-freebsd-security-notifications@freebsd.org Tue May 12 19:44:36 2020 Return-Path: Delivered-To: freebsd-security-notifications@mailman.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mailman.nyi.freebsd.org (Postfix) with ESMTP id 56D9C2F9003 for ; Tue, 12 May 2020 19:44:36 +0000 (UTC) (envelope-from security-advisories@freebsd.org) Received: from freefall.freebsd.org (freefall.freebsd.org [IPv6:2610:1c1:1:6074::16:84]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) server-signature RSA-PSS (4096 bits) client-signature RSA-PSS (4096 bits) client-digest SHA256) (Client CN "freefall.freebsd.org", Issuer "Let's Encrypt Authority X3" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 49M7YJ0ZZxz3F0c; Tue, 12 May 2020 19:44:35 +0000 (UTC) (envelope-from security-advisories@freebsd.org) Received: by freefall.freebsd.org (Postfix, from userid 945) id D0CDB362A; Tue, 12 May 2020 19:44:35 +0000 (UTC) From: FreeBSD Security Advisories To: FreeBSD Security Advisories Subject: FreeBSD Security Advisory FreeBSD-SA-20:14.sctp Reply-To: freebsd-security@freebsd.org Precedence: bulk Message-Id: <20200512194435.D0CDB362A@freefall.freebsd.org> Date: Tue, 12 May 2020 19:44:35 +0000 (UTC) X-BeenThere: freebsd-security-notifications@freebsd.org X-Mailman-Version: 2.1.33 List-Id: "Moderated Security Notifications \[moderated, low volume\]" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Tue, 12 May 2020 19:44:36 -0000 -----BEGIN PGP SIGNED MESSAGE----- Hash: SHA512 ============================================================================= FreeBSD-SA-20:14.sctp Security Advisory The FreeBSD Project Topic: Improper checking in SCTP-AUTH shared key update Category: core Module: kernel Announced: 2020-05-12 Credits: da_cheng_shao@yeah.net Affects: FreeBSD 11.3 Corrected: 2019-09-19 10:01:19 UTC (stable/12, 12.1-STABLE) 2019-09-19 10:06:18 UTC (stable/11, 11.3-STABLE) 2020-05-12 16:55:32 UTC (releng/11.3, 11.3-RELEASE-p9) CVE Name: CVE-2019-15878 Note: The upcoming release of FreeBSD 11.4 was branched after the original commit to the stable branch and already includes the fix for this advisory. Similarly, the 12.1 branch was created shortly after the original commit to the stable branch and already includes the fix. For general information regarding FreeBSD Security Advisories, including descriptions of the fields above, security branches, and the following sections, please visit . I. Background The Stream Control Transmission Protocol (SCTP) is a transport protocol supporting the socket API. An SCTP packet consists of an SCTP common header and a number of SCTP chunks. The SCTP extension SCTP-AUTH can be used to authenticate SCTP chunks. It uses shared keys which can be managed via the socket API by the application using an SCTP association. II. Problem Description The SCTP layer does improper checking when an application tries to update a shared key. Therefore an unprivileged local user can trigger a use-after- free situation, for example by specific sequences of updating shared keys and closing the SCTP association. III. Impact Triggering the use-after-free situation may result in unintended kernel behaviour including a kernel panic. IV. Workaround No workaround is available. V. Solution Upgrade your vulnerable system to a supported FreeBSD stable or release / security branch (releng) dated after the correction date, and reboot. Perform one of the following: 1) 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 # shutdown -r +10min "Rebooting for a security update" 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 https://security.FreeBSD.org/patches/SA-20:14/sctp.patch # fetch https://security.FreeBSD.org/patches/SA-20:14/sctp.patch.asc # gpg --verify sctp.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 and reboot the system. VI. Correction details The following list contains the correction revision numbers for each affected branch. Branch/path Revision - ------------------------------------------------------------------------- stable/12/ r352509 stable/11/ r352509 releng/11.3/ r360975 - ------------------------------------------------------------------------- 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: VII. References The latest revision of this advisory is available at -----BEGIN PGP SIGNATURE----- iQKTBAEBCgB9FiEE/A6HiuWv54gCjWNV05eS9J6n5cIFAl666WdfFIAAAAAALgAo aXNzdWVyLWZwckBub3RhdGlvbnMub3BlbnBncC5maWZ0aGhvcnNlbWFuLm5ldEZD MEU4NzhBRTVBRkU3ODgwMjhENjM1NUQzOTc5MkY0OUVBN0U1QzIACgkQ05eS9J6n 5cL7Gg/9GUkrcdpj9hxsSNTdjc4hnnyeMYAtkonQiak6BwrQQ5VgYMTbFDL3iw6b 4v4W8p/pANfeh8nk7h5Agfe39vUe3TuxFEuRn5aCOO/XuYfPYybhq74HrKTz61Iy LLmeExi+6nsWSIIJZVf1S2cyEc0qOV0fW1rE7Q9KQRSmbQF3i0HhUhPT0b8l/qJ9 tfVtkG3VYjWYF5HeV5WE1PyC0Y8pbrUNmZjbe7FxMilqMJ857eXcQqugrdqflri1 pJ5n8vHWy6OwNg8GVefb3Ht77dFBPlj2Kt02bjrA/ctLThBWPbtYgR+7S263TOnY tjeil+VkgOeeFcZLynbvGThE8/e/sl/G72JD7VtsEooVg+tfkIh83rJNCVaWxiEO u0+y+CmBpeD4ZZidOlqXr40WzpAtWTtnYCOn9eDJk3mn795B/GHpSPcH7RR57jr9 yU5lt0vCjktJY4in5VgTbikqD1369t0qZfLRPT84f1tC4AMTvpjG+AcGhwJfmFZL xQht9oXMWiW28J/Vt/AH5yFFGqEyJMNPl6zvqXSfgsKiMKka+5/FzeP1nFzlYEwG 6ygMm333Ur28l+eQ24nL1XpD8ydWXLnfF6N+onyIdH4c9rQ73omnvINmMBTJqEHC NOEJpmOdUFlX2ugzEqPxrVbGlH9s1I/+veuz+uYnGc3Q1Rtvl4c= =h/Gp -----END PGP SIGNATURE----- From owner-freebsd-security-notifications@freebsd.org Tue May 12 19:44:41 2020 Return-Path: Delivered-To: freebsd-security-notifications@mailman.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mailman.nyi.freebsd.org (Postfix) with ESMTP id 42A882F9091 for ; Tue, 12 May 2020 19:44:41 +0000 (UTC) (envelope-from security-advisories@freebsd.org) Received: from freefall.freebsd.org (freefall.freebsd.org [IPv6:2610:1c1:1:6074::16:84]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) server-signature RSA-PSS (4096 bits) client-signature RSA-PSS (4096 bits) client-digest SHA256) (Client CN "freefall.freebsd.org", Issuer "Let's Encrypt Authority X3" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 49M7YP00Wzz3F3F; Tue, 12 May 2020 19:44:40 +0000 (UTC) (envelope-from security-advisories@freebsd.org) Received: by freefall.freebsd.org (Postfix, from userid 945) id 90B05362F; Tue, 12 May 2020 19:44:40 +0000 (UTC) From: FreeBSD Security Advisories To: FreeBSD Security Advisories Subject: FreeBSD Security Advisory FreeBSD-SA-20:15.cryptodev Reply-To: freebsd-security@freebsd.org Precedence: bulk Message-Id: <20200512194440.90B05362F@freefall.freebsd.org> Date: Tue, 12 May 2020 19:44:40 +0000 (UTC) X-BeenThere: freebsd-security-notifications@freebsd.org X-Mailman-Version: 2.1.33 List-Id: "Moderated Security Notifications \[moderated, low volume\]" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Tue, 12 May 2020 19:44:41 -0000 -----BEGIN PGP SIGNED MESSAGE----- Hash: SHA512 ============================================================================= FreeBSD-SA-20:15.cryptodev Security Advisory The FreeBSD Project Topic: Use after free in cryptodev module Category: core Module: cryptodev Announced: 2020-05-12 Credits: Yuval Kanarenstein Affects: All supported versions of FreeBSD. Corrected: 2020-01-20 11:19:55 UTC (stable/12, 12.1-STABLE) 2020-05-12 16:57:47 UTC (releng/12.1, 12.1-RELEASE-p5) 2020-01-20 11:19:55 UTC (stable/11, 11.3-STABLE) 2020-05-12 16:57:47 UTC (releng/11.3, 11.3-RELEASE-p9) CVE Name: CVE-2019-15879 Note: The upcoming release of FreeBSD 11.4 was branched after the original commit to the stable branch and already includes the fix for this advisory. For general information regarding FreeBSD Security Advisories, including descriptions of the fields above, security branches, and the following sections, please visit . I. Background The cryptodev module permits userland applications to offload cryptographic requests to device drivers in the kernel. Applications create sessions via file descriptors opened from /dev/crypto. II. Problem Description A race condition permitted a data structure in the kernel to be used after it was freed by the cryptodev module. III. Impact An unprivileged process can overwrite arbitrary kernel memory. IV. Workaround Unload the cryptodev kernel module if it is loaded: # kldunload cryptodev Note that the cryptodev module is not loaded by default and is not used by most applications. Specificially, use of accelerated software cryptography, such as AES-NI, in userland applications via libraries such as OpenSSL do not make use of the cryptodev module. V. Solution Upgrade your vulnerable system to a supported FreeBSD stable or release / security branch (releng) dated after the correction date, and reboot the system. Perform one of the following: 1) 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 # shutdown -r +10min "Rebooting for a security update" 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. [FreeBSD 12.1] # fetch https://security.FreeBSD.org/patches/SA-20:15/cryptodev.12.patch # fetch https://security.FreeBSD.org/patches/SA-20:15/cryptodev.12.patch.asc # gpg --verify cryptodev.12.patch.asc [FreeBSD 11.3] # fetch https://security.FreeBSD.org/patches/SA-20:15/cryptodev.11.patch # fetch https://security.FreeBSD.org/patches/SA-20:15/cryptodev.11.patch.asc # gpg --verify cryptodev.11.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 and reboot the system. VI. Correction details The following list contains the correction revision numbers for each affected branch. Branch/path Revision - ------------------------------------------------------------------------- stable/12/ r356908 releng/12.1/ r360976 stable/11/ r356908 releng/11.3/ r360976 - ------------------------------------------------------------------------- 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: VII. References The latest revision of this advisory is available at -----BEGIN PGP SIGNATURE----- iQKTBAEBCgB9FiEE/A6HiuWv54gCjWNV05eS9J6n5cIFAl663tdfFIAAAAAALgAo aXNzdWVyLWZwckBub3RhdGlvbnMub3BlbnBncC5maWZ0aGhvcnNlbWFuLm5ldEZD MEU4NzhBRTVBRkU3ODgwMjhENjM1NUQzOTc5MkY0OUVBN0U1QzIACgkQ05eS9J6n 5cLW2A//VW8iJqNaBHhMnCrpl+oDTadzGM3gYVxnM+EEQYzru2Ze0z0tShiAkXrQ NryjwBpMA3r1nyWDYaWMgbHjcG+jQdsIvoiA+fSU9hXEUbpxwX9ZKlaSZUBDX48X YScJMewgHCXNpgkTnIckaIyIadOXX+zWhi5T0LN2tS5M5oejTLndAKo9mQm1Ni50 PYiHFkLzO7v4H6K0cKuJRuHF8+kU1IhvOinZuXwZXoGqmPGTVsA0+T27dWhosaWv Yqh3Pbp5oS1y3NbbOadLPhY146pT2Qrb2mQOEiHvsXMFRgjIEQzH1MYXx5gvpa4K CkMwCV/MuNotscVZ00qhVQEGEVlrhgi2IXinzxde5HYCc3mD/KdcYnYz9zOCeIfb 9RfdvKk8uzUITLyz8ZinZBqIHghnSG3M9/cNj2o/97yRfFJazXF/SI41YoV3hcyE Gb1ncYfaAJ4rL9U6xHMw7V+1LSlMrVsIcWxCM2PS4NTwWcZ8K7mEX51ARjx4k7lx IBEsJ+ExSfZHNkS6/DLZiuLEQKFxIOKlRyZQTALnzNaNTp763idW7zA+9k8ceBRH VO7x3EGNqNPhIss+JHOxDUaXTFfJTcd7XGv291unkZwBJuFhJBfH3S+ZCcF38xVK aweHOoJW5V+D9GKygb9oLjOxOupRkFuRrHFQcvj57FYqs9/GDVc= =8E1l -----END PGP SIGNATURE----- From owner-freebsd-security-notifications@freebsd.org Tue May 12 19:44:46 2020 Return-Path: Delivered-To: freebsd-security-notifications@mailman.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mailman.nyi.freebsd.org (Postfix) with ESMTP id 613102F911A for ; Tue, 12 May 2020 19:44:46 +0000 (UTC) (envelope-from security-advisories@freebsd.org) Received: from freefall.freebsd.org (freefall.freebsd.org [96.47.72.132]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) server-signature RSA-PSS (4096 bits) client-signature RSA-PSS (4096 bits) client-digest SHA256) (Client CN "freefall.freebsd.org", Issuer "Let's Encrypt Authority X3" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 49M7YV0j2Gz3F5l; Tue, 12 May 2020 19:44:46 +0000 (UTC) (envelope-from security-advisories@freebsd.org) Received: by freefall.freebsd.org (Postfix, from userid 945) id C7768353D; Tue, 12 May 2020 19:44:45 +0000 (UTC) From: FreeBSD Security Advisories To: FreeBSD Security Advisories Subject: FreeBSD Security Advisory FreeBSD-SA-20:16.cryptodev Reply-To: freebsd-security@freebsd.org Precedence: bulk Message-Id: <20200512194445.C7768353D@freefall.freebsd.org> Date: Tue, 12 May 2020 19:44:45 +0000 (UTC) X-BeenThere: freebsd-security-notifications@freebsd.org X-Mailman-Version: 2.1.33 List-Id: "Moderated Security Notifications \[moderated, low volume\]" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Tue, 12 May 2020 19:44:46 -0000 -----BEGIN PGP SIGNED MESSAGE----- Hash: SHA512 ============================================================================= FreeBSD-SA-20:16.cryptodev Security Advisory The FreeBSD Project Topic: Insufficient cryptodev MAC key length check Category: core Module: cryptodev Announced: 2020-05-12 Credits: Yuval Kanarenstein Affects: FreeBSD 12.1 Corrected: 2020-01-20 11:54:00 UTC (stable/12, 12.1-STABLE) 2020-05-12 16:59:09 UTC (releng/12.1, 12.1-RELEASE-p5) CVE Name: CVE-2019-15880 For general information regarding FreeBSD Security Advisories, including descriptions of the fields above, security branches, and the following sections, please visit . I. Background The cryptodev module permits userland applications to offload cryptographic requests to device drivers in the kernel. Applications create sessions via file descriptors opened from /dev/crypto. II. Problem Description Requests to create cryptography sessions using a MAC did not validate the user-supplied MAC key length. The cryptodev module allocates a buffer whose size is this user-suppled length. III. Impact An unprivileged process can trigger a kernel panic. IV. Workaround Unload the cryptodev kernel module if it is loaded: # kldunload cryptodev Note that the cryptodev module is not loaded by default and is not used by most applications. Specificially, use of accelerated software cryptography (e.g. AES-NI) in userland applications via libraries such as OpenSSL does not make use of the cryptodev module. V. Solution Upgrade your vulnerable system to a supported FreeBSD stable or release / security branch (releng) dated after the correction date, and reboot the system. Perform one of the following: 1) 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 # shutdown -r +10min "Rebooting for a security update" 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 https://security.FreeBSD.org/patches/SA-20:16/cryptodev.patch # fetch https://security.FreeBSD.org/patches/SA-20:16/cryptodev.patch.asc # gpg --verify cryptodev.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 and reboot the system. VI. Correction details The following list contains the correction revision numbers for each affected branch. Branch/path Revision - ------------------------------------------------------------------------- stable/12/ r356911 releng/12.1/ r360977 - ------------------------------------------------------------------------- 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: VII. References The latest revision of this advisory is available at -----BEGIN PGP SIGNATURE----- iQKTBAEBCgB9FiEE/A6HiuWv54gCjWNV05eS9J6n5cIFAl663tdfFIAAAAAALgAo aXNzdWVyLWZwckBub3RhdGlvbnMub3BlbnBncC5maWZ0aGhvcnNlbWFuLm5ldEZD MEU4NzhBRTVBRkU3ODgwMjhENjM1NUQzOTc5MkY0OUVBN0U1QzIACgkQ05eS9J6n 5cKFbg/+Ou239S9yDp+FTyDlqq4w8p08kh8nHqB6FO6Q6aIxkEgSu/yO9IZsKSnM o05O8iOVOTRR5xSIBN/aW5d4adH81AV6X66NKUZ0bJwAp16v7YIyivY3ySLOB093 oOTy/wlv0jxAYVzOlqMTuVm4dr9dh+9I9kwF94SDY7/maY0pCuUmVCRi2Y5gvCqu LYkDdG0Mq0pka1sGY8aFvG63oMyZ98gkbBNk666SzJnBDq/QDSL0FASCgYDjG1fE R/BciJpucIFi3JPZgSaKi4j56HiN/LaX63A1rdjza3aRh/sLMr7+GHFI3sn474tu xrkRjwnxr7/dghjspHAvsv+8U1oRIGVxeyaQB+Hd4WvNcVzp2McNBJ9c/z7Ugt1r affyXl0JBBkdVa45xDf/weGwwxcmCWxXxv7gDPelf07p3MNjl5G3pPUCUoRA3XE5 Am1v5E0Eui5s/H4ncodY/ECIAHuOfenzdcpK5xCQUMHkgikfiLftNfLWSVOrqEJn Wxl8/ttKWLYYwYDSYrN0kNvQWc6LHsuA1I7Zt7wpRW09wB2OlZ7Hn2nZebTrXjKG P/AeGa+JVCJ2HZzj1+8qxcFHgq8IRINICvq743e2vIQak0KsgqmtvnLavAlv/p3d zPxFJOPAw0bhJj14qLT+cXGC9u3/qrZWWR0b4S7qeMlLG3Cw4fk= =j3X1 -----END PGP SIGNATURE-----