svn commit: r54065 - in head/share: security/advisories security/patches/EN-20:07 security/patches/SA-20:10 security/patches/SA-20:11 xml

Gordon Tetlow <[email protected]>
Newsgroups gmane.os.freebsd.devel.cvs.doc
Message-ID <[email protected]>
Author: gordon (src committer)
Date: Tue Apr 21 16:29:32 2020
New Revision: 54065
URL: https://svnweb.freebsd.org/changeset/doc/54065

Log:
  Add EN-20:07, SA-20:10, and SA-20:11.
  
  Approved by:	so

Added:
  head/share/security/advisories/FreeBSD-EN-20:07.quotad.asc   (contents, props changed)
  head/share/security/advisories/FreeBSD-SA-20:10.ipfw.asc   (contents, props changed)
  head/share/security/advisories/FreeBSD-SA-20:11.openssl.asc   (contents, props changed)
  head/share/security/patches/EN-20:07/
  head/share/security/patches/EN-20:07/quotad.patch   (contents, props changed)
  head/share/security/patches/EN-20:07/quotad.patch.asc   (contents, props changed)
  head/share/security/patches/SA-20:10/
  head/share/security/patches/SA-20:10/ipfw.11.patch   (contents, props changed)
  head/share/security/patches/SA-20:10/ipfw.11.patch.asc   (contents, props changed)
  head/share/security/patches/SA-20:10/ipfw.12.patch   (contents, props changed)
  head/share/security/patches/SA-20:10/ipfw.12.patch.asc   (contents, props changed)
  head/share/security/patches/SA-20:11/
  head/share/security/patches/SA-20:11/openssl.patch   (contents, props changed)
  head/share/security/patches/SA-20:11/openssl.patch.asc   (contents, props changed)
Modified:
  head/share/xml/advisories.xml
  head/share/xml/notices.xml

Added: head/share/security/advisories/FreeBSD-EN-20:07.quotad.asc
==============================================================================
--- /dev/null	00:00:00 1970	(empty, because file is newly added)
+++ head/share/security/advisories/FreeBSD-EN-20:07.quotad.asc	Tue Apr 21 16:29:32 2020	(r54065)
@@ -0,0 +1,133 @@
+-----BEGIN PGP SIGNED MESSAGE-----
+Hash: SHA512
+
+=============================================================================
+FreeBSD-EN-20:07.quotad                                         Errata Notice
+                                                          The FreeBSD Project
+
+Topic:          Regression in rpc.rquotad with certain NFS servers
+
+Category:       core
+Module:         rpc.quotad
+Announced:      2020-04-21
+Affects:        All supported versions of FreeBSD
+Corrected:      2019-09-21 14:03:41 UTC (stable/12, 12.1-STABLE)
+                2020-04-21 15:50:57 UTC (releng/12.1, 12.1-RELEASE-p4)
+                2019-09-21 14:06:16 UTC (stable/11, 11.3-STABLE)
+                2020-04-21 15:50:57 UTC (releng/11.3, 11.3-RELEASE-p8)
+
+For general information regarding FreeBSD Errata Notices and Security
+Advisories, including descriptions of the fields above, security
+branches, and the following sections, please visit
+<URL:https://security.FreeBSD.org/>.
+
+I.   Background
+
+The Network File System (NFS) allows a system to share directories and files
+with others over a network.  By using this, users and programs can access
+files on remote systems almost as if they were local files.
+
+The rpc.rquotad utility is an rpc(3) server which returns quotas for a user
+of a local file system which is NFS-mounted onto a remote machine.
+
+II.  Problem Description
+
+A change in rpc.rquotad made it send RQUOTA v2 requests instead of RQUOTA v1
+requests.  Some vendors would send RPC_PROGNOTREGISTERED ("Program Not
+Registered") response instead of the desired RPC_PROGVERSMISMATCH ("Program
+Version Mismatch") response, preventing the mechanism from working.
+
+III. Impact
+
+The quota(8) command will not be able obtain quota information for some NFS
+server vendors.
+
+IV.  Workaround
+
+No workaround is available.  Systems not using quotas on NFS mounted file
+systems are unaffected.
+
+V.   Solution
+
+Upgrade your system to a supported FreeBSD stable or release / security
+branch (releng) dated after the correction date.
+
+Perform one of the following:
+
+1) To update your 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
+
+2) To update your 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/EN-20:07/quotad.patch
+# fetch https://security.FreeBSD.org/patches/EN-20:07/quotad.patch.asc
+# gpg --verify quotad.patch.asc
+
+b) Apply the patch.  Execute the following commands as root:
+
+# cd /usr/src
+# patch < /path/to/patch
+
+c) Recompile the operating system using buildworld and installworld as
+described in <URL:https://www.FreeBSD.org/handbook/makeworld.html>.
+
+Restart the applicable daemons, or reboot the system.
+
+VI.  Correction details
+
+The following list contains the correction revision numbers for each
+affected branch.
+
+Branch/path                                                      Revision
+- -------------------------------------------------------------------------
+stable/12/                                                        r352575
+releng/12.1/                                                      r360148
+stable/11/                                                        r352576
+releng/11.3/                                                      r360148
+- -------------------------------------------------------------------------
+
+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:https://svnweb.freebsd.org/base?view=revision&revision=NNNNNN>
+
+VII. References
+
+<URL:https://bugs.freebsd.org/bugzilla/show_bug.cgi?id=NNNNNN>
+
+The latest revision of this advisory is available at
+<URL:https://security.FreeBSD.org/advisories/FreeBSD-EN-20:07.quotad.asc>
+-----BEGIN PGP SIGNATURE-----
+
+iQKTBAEBCgB9FiEE/A6HiuWv54gCjWNV05eS9J6n5cIFAl6fHKNfFIAAAAAALgAo
+aXNzdWVyLWZwckBub3RhdGlvbnMub3BlbnBncC5maWZ0aGhvcnNlbWFuLm5ldEZD
+MEU4NzhBRTVBRkU3ODgwMjhENjM1NUQzOTc5MkY0OUVBN0U1QzIACgkQ05eS9J6n
+5cKrMg/+LLZH7D0fPM2gvxxgDi078N0yfnb4hjbJxI+xdDrbWMEqy/Y9k5hi6+AD
+iEnSdQ1/Ak6n174b4Xz2L+Dpih4BEzLumfwb9oFCudUFvyuxNwQmO9tkGLCdu9ps
+wRp2quYw0T/whnIS2tTsOM/TPCNZa72mym19OTZi9pgSh82Z+raUeRlfXyOS6HlL
+8GkIqkMBBEXRYEQnWX7FAcN+4G1kUHCzHIsyLImCaic8YL/+rX2bqalhFGdLGbJd
+epKQQ8FvT1kMns6XVkzSfL35LDoOfbOYjWYTwp3D5Fxk0I5gSK1u3LTrhVZpEV0p
+EBO7l2ivee/cwtdOjkIZR1NF+Lp+gHeXxWaJFz0tE6skB2fCYdZq4EeIjXg1okqQ
+piWmiesIDpmzz5P2e1OEbkrh5yKr/FeLYDOlge3D1jFZd7iBxeS/BvdGGhSVZI4F
+wssveFUnGiKm47kFRzXJnSPz0Nji2R2KyKaaNSB6dqZGW0ZelgPgjh09j09FijbH
+mvFPSsxWSKH3rD0CE2QeWIvwk0dbtAhti1TM0gJque8D50IZB8VlNNtOa4V+fyQ6
+puH+5+haHzwfUXwSrLcYK+v0xMdQ71oYqC5G5tV/eYXJCbzIu1Y3hbgmbLzAx+xf
+LwW3uCcm1cDQpzs2WxirHE+jS4DbYIMqS/K2c5+tj9kAEtXX1b0=
+=mFhE
+-----END PGP SIGNATURE-----

Added: head/share/security/advisories/FreeBSD-SA-20:10.ipfw.asc
==============================================================================
--- /dev/null	00:00:00 1970	(empty, because file is newly added)
+++ head/share/security/advisories/FreeBSD-SA-20:10.ipfw.asc	Tue Apr 21 16:29:32 2020	(r54065)
@@ -0,0 +1,141 @@
+-----BEGIN PGP SIGNED MESSAGE-----
+Hash: SHA512
+
+=============================================================================
+FreeBSD-SA-20:10.ipfw                                       Security Advisory
+                                                          The FreeBSD Project
+
+Topic:          ipfw invalid mbuf handling
+
+Category:       core
+Module:         kernel
+Announced:      2020-04-21
+Credits:        Maxime Villard
+                All supported versions of FreeBSD.
+Corrected:      2019-12-23 10:02:55 UTC (stable/12, 12.1-STABLE)
+                2020-04-21 15:52:22 UTC (releng/12.1, 12.1-RELEASE-p4)
+                2019-12-23 10:06:32 UTC (stable/11, 11.3-STABLE)
+                2020-04-21 15:52:22 UTC (releng/11.3, 11.3-RELEASE-p8)
+CVE Name:       CVE-2019-5614, CVE-2019-15874
+
+
+For general information regarding FreeBSD Security Advisories,
+including descriptions of the fields above, security branches, and the
+following sections, please visit <URL:https://security.FreeBSD.org/>.
+
+I.   Background
+
+The ipfw system facility allows filtering, redirecting, and other operations
+on IP packets travelling through network interfaces.
+
+II.  Problem Description
+
+Incomplete packet data validation may result in accessing out-of-bounds
+memory (CVE-2019-5614) or may access memory after it has been freed
+(CVE-2019-15874).
+
+III. Impact
+
+Access to out of bounds or freed mbuf data can lead to a kernel panic or
+other unpredictable results.
+
+IV.  Workaround
+
+No workaround is available.  Systems not using the ipfw firewall are
+not vulnerable.
+
+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.
+
+[FreeBSD 11.3]
+# fetch https://security.FreeBSD.org/patches/SA-20:10/ipfw.11.patch
+# fetch https://security.FreeBSD.org/patches/SA-20:10/ipfw.11.patch.asc
+# gpg --verify ipfw.11.patch.asc
+
+[FreeBSD 12.1]
+# fetch https://security.FreeBSD.org/patches/SA-20:10/ipfw.12.patch
+# fetch https://security.FreeBSD.org/patches/SA-20:10/ipfw.12.patch.asc
+# gpg --verify ipfw.12.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:https://www.FreeBSD.org/handbook/kernelconfig.html> and reboot the
+system.
+
+VI.  Correction details
+
+The following list contains the correction revision numbers for each
+affected branch.
+
+Branch/path                                                      Revision
+- -------------------------------------------------------------------------
+stable/12/                                                        r356035
+releng/12.1/                                                      r360149
+stable/11/                                                        r356036
+releng/11.3/                                                      r360149
+- -------------------------------------------------------------------------
+
+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:https://svnweb.freebsd.org/base?view=revision&revision=NNNNNN>
+
+VII. References
+
+<other info on vulnerability>
+
+<URL:https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2019-5614>
+<URL:https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2019-15874>
+
+The latest revision of this advisory is available at
+<URL:https://security.FreeBSD.org/advisories/FreeBSD-SA-20:10.ipfw.asc>
+-----BEGIN PGP SIGNATURE-----
+
+iQKTBAEBCgB9FiEE/A6HiuWv54gCjWNV05eS9J6n5cIFAl6fHK1fFIAAAAAALgAo
+aXNzdWVyLWZwckBub3RhdGlvbnMub3BlbnBncC5maWZ0aGhvcnNlbWFuLm5ldEZD
+MEU4NzhBRTVBRkU3ODgwMjhENjM1NUQzOTc5MkY0OUVBN0U1QzIACgkQ05eS9J6n
+5cJnFA//Zqygqhfo2vs/FBe67+/MILbAn5KeZoha6jbhr7YGD//Yzdy0+LtiaMpL
+DskM6z2bF6VKMuB5XQufUcAPTqzf8m3pgdFoPBT2P47ndkqDsF7/EDe5IaYCQZq+
+CB0tTuD6m3/8qYXvKyD+c6WV92Tn75GOpguKEYWnoBlOe8YVoVWxIknl+wuG+w4h
+D6hGGntvvs7RyXVITo9wzW70W8b57fIszVHTvH0YoFwBLGeie/uNomkcawti6jcp
+h703a4VsGeM1FFqb8hrNgKdDMC8Xmddjd78PMxl4wjC4WrrziQ1M8RxEoLHCSrH0
+4hLSjQOIVuI+OoEArn533QyHWQa1KbeECc2GgSlUrq6rlNk3SELWl72tugETT0JJ
+EYWFaLUGLUV5PMeuv7c6HfuXXtaVOEP/Gyvf9Rduesohdzw+DYrzXSyVv9wsRbfx
+34H9Xcjlu+BzYrHyKJkgdILwEFpEHCZmxRLxeJLGBjPAsudhN2XzGfKEQNd8olTr
+pe0Cw+C/sBhe0jh42REDRXW/Vr0YF4ivZf6L8d1zdG462GMn9aZteCjRmfMOWN1D
+BjU0+qY6mkWU0bVep0sjPU9ON8T9vnEinjhfqIb/A9XOvKag7cehpxWC+PJyf3I4
+eAjdzQeq0FH08XMWFfFWDqa7VmGYhmp/e53HNbHb90NtW07GtHE=
+=p+5n
+-----END PGP SIGNATURE-----

Added: head/share/security/advisories/FreeBSD-SA-20:11.openssl.asc
==============================================================================
--- /dev/null	00:00:00 1970	(empty, because file is newly added)
+++ head/share/security/advisories/FreeBSD-SA-20:11.openssl.asc	Tue Apr 21 16:29:32 2020	(r54065)
@@ -0,0 +1,132 @@
+-----BEGIN PGP SIGNED MESSAGE-----
+Hash: SHA512
+
+=============================================================================
+FreeBSD-SA-20:11.openssl                                    Security Advisory
+                                                          The FreeBSD Project
+
+Topic:          OpenSSL remote denial of service vulnerability
+
+Category:       contrib
+Module:         openssl
+Announced:      2020-04-21
+Credits:        Bernd Edlinger
+Affects:        FreeBSD 12.1
+Corrected:      2020-04-21 15:47:58 UTC (stable/12, 12.1-STABLE)
+                2020-04-21 15:53:08 UTC (releng/12.1, 12.1-RELEASE-p4)
+CVE Name:       CVE-2020-1967
+
+For general information regarding FreeBSD Security Advisories,
+including descriptions of the fields above, security branches, and the
+following sections, please visit <URL:https://security.FreeBSD.org/>.
+
+I.   Background
+
+FreeBSD includes software from the OpenSSL Project.  The OpenSSL Project is a
+collaborative effort to develop a robust, commercial-grade, full-featured
+Open Source toolkit for the Transport Layer Security (TLS) and Secure Sockets
+Layer (SSL) protocols.  It is also a full-strength general purpose
+cryptography library.
+
+II.  Problem Description
+
+Server or client applications that call the SSL_check_chain() function during
+or after a TLS 1.3 handshake may crash due to a NULL pointer dereference as a
+result of incorrect handling of the "signature_algorithms_cert" TLS
+extension.  The crash occurs if an invalid or unrecognized signature
+algorithm is received from the peer.
+
+III. Impact
+
+A malicious peer could exploit the NULL pointer dereference crash, causing a
+denial of service attack.
+
+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.
+
+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:11/openssl.patch
+# fetch https://security.FreeBSD.org/patches/SA-20:11/openssl.patch.asc
+# gpg --verify openssl.patch.asc
+
+b) Apply the patch.  Execute the following commands as root:
+
+# cd /usr/src
+# patch < /path/to/patch
+
+c) Recompile the operating system using buildworld and installworld as
+described in <URL:https://www.FreeBSD.org/handbook/makeworld.html>.
+
+Restart all daemons that use the library, or reboot the system.
+
+VI.  Correction details
+
+The following list contains the correction revision numbers for each
+affected branch.
+
+Branch/path                                                      Revision
+- -------------------------------------------------------------------------
+stable/12/                                                        r360147
+releng/12.1/                                                      r360150
+- -------------------------------------------------------------------------
+
+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:https://svnweb.freebsd.org/base?view=revision&revision=NNNNNN>
+
+VII. References
+
+<URL:https://www.openssl.org/news/secadv/20200421.txt>
+
+<URL:https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2020-1967>
+
+The latest revision of this advisory is available at
+<URL:https://security.FreeBSD.org/advisories/FreeBSD-SA-20:11.openssl.asc>
+-----BEGIN PGP SIGNATURE-----
+
+iQKTBAEBCgB9FiEE/A6HiuWv54gCjWNV05eS9J6n5cIFAl6fHLBfFIAAAAAALgAo
+aXNzdWVyLWZwckBub3RhdGlvbnMub3BlbnBncC5maWZ0aGhvcnNlbWFuLm5ldEZD
+MEU4NzhBRTVBRkU3ODgwMjhENjM1NUQzOTc5MkY0OUVBN0U1QzIACgkQ05eS9J6n
+5cJEGw/7BWgBW3Vi98Sj0OFQnKUyckFaKxOY5WNl+N2k1MC5QIwtFRknS/i4xiBe
+wfpudj8PRiYe5sXC7C0vpHBB6LAq9RCflZAu3auRD/r/wShAq1wVY6nC7zJ+nXKX
+r7OuUj0NBQK7Gc5k89LEeRI8qjcJv7XwUY63msVvDUzqWwZeVDufrRnSwoUi0LR/
+qbya9ICb9qt7o52QNpECccEUVB4Qc1mfdESpDi/7h/JYXvLptsa/W6DtTZRlJ2n/
+f/hi2ja7xUD78NlQ6Sbc17+QUFWWIvyljl255Nhi3YhjWpFSWewmJg3aLqQ3O4uB
+g632jncGVFtRiDWHvUPqIx0Ephs3Ubd0llBsWXJ4uEQzeqVVVk05oomWDBjUoxW/
+Iw7kfVJDBNrrIuNikhOaf3lmUEJ8iXUhg8NxLwoyq6v2SM2eFLqYxx9MLwH5RQkV
+nAuWszYSnxkReUE4oGrm7Vn3Mq7yhiM8KpNS08BSADeWRWEJSsdeA5BC2bLIUgE+
+UKRDYaTyLSl9knHNmCd9W/8b3w03k2E4lrosc+hiaYoVB9l83e5elQm/tgdBynmL
+w653iJIoATgApXXresLW3x/by9+BhCq1fLkipDoaRZTrsg7zaYCyseDmfvmaV6Pn
+x8nm+i+VHeB8hp+vurijO9wuaisPs4LNv7pPcler2LmtAGYV3Lg=
+=231J
+-----END PGP SIGNATURE-----

Added: head/share/security/patches/EN-20:07/quotad.patch
==============================================================================
--- /dev/null	00:00:00 1970	(empty, because file is newly added)
+++ head/share/security/patches/EN-20:07/quotad.patch	Tue Apr 21 16:29:32 2020	(r54065)
@@ -0,0 +1,11 @@
+--- usr.bin/quota/quota.c.orig
++++ usr.bin/quota/quota.c
+@@ -606,7 +606,7 @@
+ 	call_stat = callaurpc(host, RQUOTAPROG, EXT_RQUOTAVERS,
+ 			      RQUOTAPROC_GETQUOTA, (xdrproc_t)xdr_ext_getquota_args, (char *)&gq_args,
+ 			      (xdrproc_t)xdr_getquota_rslt, (char *)&gq_rslt);
+-	if (call_stat == RPC_PROGVERSMISMATCH) {
++	if (call_stat == RPC_PROGVERSMISMATCH || call_stat == RPC_PROGNOTREGISTERED) {
+ 		if (quotatype == USRQUOTA) {
+ 			old_gq_args.gqa_pathp = cp + 1;
+ 			old_gq_args.gqa_uid = id;

Added: head/share/security/patches/EN-20:07/quotad.patch.asc
==============================================================================
--- /dev/null	00:00:00 1970	(empty, because file is newly added)
+++ head/share/security/patches/EN-20:07/quotad.patch.asc	Tue Apr 21 16:29:32 2020	(r54065)
@@ -0,0 +1,18 @@
+-----BEGIN PGP SIGNATURE-----
+
+iQKTBAABCgB9FiEE/A6HiuWv54gCjWNV05eS9J6n5cIFAl6fHMNfFIAAAAAALgAo
+aXNzdWVyLWZwckBub3RhdGlvbnMub3BlbnBncC5maWZ0aGhvcnNlbWFuLm5ldEZD
+MEU4NzhBRTVBRkU3ODgwMjhENjM1NUQzOTc5MkY0OUVBN0U1QzIACgkQ05eS9J6n
+5cI6Hg/+IjHObivifL7eLY2O8ydr8fj8q735PmFvWCzWdUl2vhNC64Rb3jcELcCo
+L+8CkBtWNklTZo4HWB5R+6oQSfDwLnW9tHQ/aVg308IZOZ8b680RT0SI83mwfmG9
+SwzPj8SqINTRUO0pWaKtS3sP4tXytCVBu70uet3L57cozP9ylVmC4z+ecwkXosq+
+bnIe1gJMs5xTTkX1JierutJ/cMlma/nJ0aenW2um85CSuTsQBTsEPxug7NCm8UeG
+1ABpzQ3TdkSciRQNoPjM5VrUkm05PA+zHrHE0tTyN3wwef4Pcyte2dnfJ8gBjUzI
+PveME1u1DSxSRwaBSNdUVJtXgLDTdeeN/OjTQFRSxT5BJi7a5ux4CI8OIbXkS4gE
+nRTcl0VKbDnQ2R16OPzEIzHvItXomHTnRvcuzT8oLZj/9pRdr6kWuAYsAx4jU1wn
+/QE7LtqNS89X9+tGjfbqO1kgnMb6SfNJ0me2U+L7Syw+SRWa9lVxdGUe0Oantexu
+Xe0hZ+DOMDH+ntcAEenmZ2lsMCGH1triQINW/laA9gz1Ad045yleC33V/RSYwGiU
+cw4+0M9kxMTB7vMCMP0+788VE382aTzi5t8tZNM98iGsA4UrlUg4K/XX9KI0PI/0
+qrNyUNGTpDqey7mbSE1sYiih1Etx8UO4k+ryvabNydhC4sJICzQ=
+=9zFb
+-----END PGP SIGNATURE-----

Added: head/share/security/patches/SA-20:10/ipfw.11.patch
==============================================================================
--- /dev/null	00:00:00 1970	(empty, because file is newly added)
+++ head/share/security/patches/SA-20:10/ipfw.11.patch	Tue Apr 21 16:29:32 2020	(r54065)
@@ -0,0 +1,136 @@
+--- sys/netpfil/ipfw/ip_fw2.c.orig
++++ sys/netpfil/ipfw/ip_fw2.c
+@@ -328,50 +328,71 @@
+ 	return (flags_match(cmd, bits));
+ }
+ 
++/*
++ * Parse TCP options. The logic copied from tcp_dooptions().
++ */
+ static int
+-tcpopts_match(struct tcphdr *tcp, ipfw_insn *cmd)
++tcpopts_parse(const struct tcphdr *tcp, uint16_t *mss)
+ {
++	const u_char *cp = (const u_char *)(tcp + 1);
+ 	int optlen, bits = 0;
+-	u_char *cp = (u_char *)(tcp + 1);
+-	int x = (tcp->th_off << 2) - sizeof(struct tcphdr);
++	int cnt = (tcp->th_off << 2) - sizeof(struct tcphdr);
+ 
+-	for (; x > 0; x -= optlen, cp += optlen) {
++	for (; cnt > 0; cnt -= optlen, cp += optlen) {
+ 		int opt = cp[0];
+ 		if (opt == TCPOPT_EOL)
+ 			break;
+ 		if (opt == TCPOPT_NOP)
+ 			optlen = 1;
+ 		else {
++			if (cnt < 2)
++				break;
+ 			optlen = cp[1];
+-			if (optlen <= 0)
++			if (optlen < 2 || optlen > cnt)
+ 				break;
+ 		}
+ 
+ 		switch (opt) {
+-
+ 		default:
+ 			break;
+ 
+ 		case TCPOPT_MAXSEG:
++			if (optlen != TCPOLEN_MAXSEG)
++				break;
+ 			bits |= IP_FW_TCPOPT_MSS;
++			if (mss != NULL)
++				*mss = be16dec(cp + 2);
+ 			break;
+ 
+ 		case TCPOPT_WINDOW:
+-			bits |= IP_FW_TCPOPT_WINDOW;
++			if (optlen == TCPOLEN_WINDOW)
++				bits |= IP_FW_TCPOPT_WINDOW;
+ 			break;
+ 
+ 		case TCPOPT_SACK_PERMITTED:
++			if (optlen == TCPOLEN_SACK_PERMITTED)
++				bits |= IP_FW_TCPOPT_SACK;
++			break;
++
+ 		case TCPOPT_SACK:
+-			bits |= IP_FW_TCPOPT_SACK;
++			if (optlen > 2 && (optlen - 2) % TCPOLEN_SACK == 0)
++				bits |= IP_FW_TCPOPT_SACK;
+ 			break;
+ 
+ 		case TCPOPT_TIMESTAMP:
+-			bits |= IP_FW_TCPOPT_TS;
++			if (optlen == TCPOLEN_TIMESTAMP)
++				bits |= IP_FW_TCPOPT_TS;
+ 			break;
+-
+ 		}
+ 	}
+-	return (flags_match(cmd, bits));
++	return (bits);
++}
++
++static int
++tcpopts_match(struct tcphdr *tcp, ipfw_insn *cmd)
++{
++
++	return (flags_match(cmd, tcpopts_parse(tcp, NULL)));
+ }
+ 
+ static int
+@@ -1419,17 +1440,31 @@
+  * this way).
+  */
+ #define PULLUP_TO(_len, p, T)	PULLUP_LEN(_len, p, sizeof(T))
+-#define PULLUP_LEN(_len, p, T)					\
++#define	_PULLUP_LOCKED(_len, p, T, unlock)			\
+ do {								\
+ 	int x = (_len) + T;					\
+ 	if ((m)->m_len < x) {					\
+ 		args->m = m = m_pullup(m, x);			\
+-		if (m == NULL)					\
++		if (m == NULL) {				\
++			unlock;					\
+ 			goto pullup_failed;			\
++		}						\
+ 	}							\
+ 	p = (mtod(m, char *) + (_len));				\
+ } while (0)
+ 
++#define	PULLUP_LEN(_len, p, T)	_PULLUP_LOCKED(_len, p, T, )
++#define	PULLUP_LEN_LOCKED(_len, p, T)	\
++    _PULLUP_LOCKED(_len, p, T, IPFW_PF_RUNLOCK(chain));	\
++    UPDATE_POINTERS()
++/*
++ * In case pointers got stale after pullups, update them.
++ */
++#define	UPDATE_POINTERS()			\
++do {						\
++	ip = mtod(m, struct ip *);		\
++} while (0)
++
+ 	/*
+ 	 * if we have an ether header,
+ 	 */
+@@ -2255,7 +2290,7 @@
+ 
+ 			case O_TCPOPTS:
+ 				if (proto == IPPROTO_TCP && offset == 0 && ulp){
+-					PULLUP_LEN(hlen, ulp,
++					PULLUP_LEN_LOCKED(hlen, ulp,
+ 					    (TCP(ulp)->th_off << 2));
+ 					match = tcpopts_match(TCP(ulp), cmd);
+ 				}
+@@ -3106,6 +3141,7 @@
+ 
+ 		}	/* end of inner loop, scan opcodes */
+ #undef PULLUP_LEN
++#undef PULLUP_LEN_LOCKED
+ 
+ 		if (done)
+ 			break;

Added: head/share/security/patches/SA-20:10/ipfw.11.patch.asc
==============================================================================
--- /dev/null	00:00:00 1970	(empty, because file is newly added)
+++ head/share/security/patches/SA-20:10/ipfw.11.patch.asc	Tue Apr 21 16:29:32 2020	(r54065)
@@ -0,0 +1,18 @@
+-----BEGIN PGP SIGNATURE-----
+
+iQKTBAABCgB9FiEE/A6HiuWv54gCjWNV05eS9J6n5cIFAl6fHNNfFIAAAAAALgAo
+aXNzdWVyLWZwckBub3RhdGlvbnMub3BlbnBncC5maWZ0aGhvcnNlbWFuLm5ldEZD
+MEU4NzhBRTVBRkU3ODgwMjhENjM1NUQzOTc5MkY0OUVBN0U1QzIACgkQ05eS9J6n
+5cKVEhAApEcxwYJh0IP2/JPsfaNkAKLflaiaTY1MHd0SK4icoGYgbUFXGfYFFx5y
+V+xYyzJ6hqufaLgRDlOUWy7QLqkSD5iuNas7ZC9Sorge24uVYS9QKoQETAUc4EsA
+puyWWfFA8jD/cUIzmLpuTlz8qUFT2n4j28djmbYvH46jgoOyMGrUzoTKfeyPSvMR
+LCkzyzsnkfauwl8lpAkyWqhi3VPmCLtzd4boVmG2UnpaKKny0l3M2/CRHJhCute4
+3+15ilzONzcr0J38hd6sM11HZIVEUK3DywefMhiMx9sQQD71sqisvADCxZ8cdML/
+he+mBB38YzGyy/qezb/ZC1oXfPHmNKlJjxHzCyZkgkLd03GSrviykj4o8I9HOgty
+X2NmrUoi22j3nezE4lEqh+6f6yXRVsBmJjzFGUXTSgjP6vGIewZiwmQReadGzcZk
+nwCdtZSMbPAFLt6EBXMfU/pvLAokYk87XCyivAPkrbojrbDKg0ucUfttgPjwuAkN
+G3s4xsmC+XuAbGrzCJwDr1o8zPcDLJlfPijJAmzWlQReHHAaVSgVt0jRoFvznZjh
+QCI3b9aRPHayGBoJxFNripYdggF9jcaUA7OGrLjw86VHBFvAl2fKZxZexUbKVFqX
+c8wvkiWbAvknV18pbVlifSdjKgylY8vwi39dj8zDxpWULRXFLYg=
+=aOrU
+-----END PGP SIGNATURE-----

Added: head/share/security/patches/SA-20:10/ipfw.12.patch
==============================================================================
--- /dev/null	00:00:00 1970	(empty, because file is newly added)
+++ head/share/security/patches/SA-20:10/ipfw.12.patch	Tue Apr 21 16:29:32 2020	(r54065)
@@ -0,0 +1,132 @@
+--- sys/netpfil/ipfw/ip_fw2.c.orig
++++ sys/netpfil/ipfw/ip_fw2.c
+@@ -330,22 +330,27 @@
+ 	return (flags_match(cmd, bits));
+ }
+ 
++/*
++ * Parse TCP options. The logic copied from tcp_dooptions().
++ */
+ static int
+-tcpopts_parse(struct tcphdr *tcp, uint16_t *mss)
++tcpopts_parse(const struct tcphdr *tcp, uint16_t *mss)
+ {
+-	u_char *cp = (u_char *)(tcp + 1);
++	const u_char *cp = (const u_char *)(tcp + 1);
+ 	int optlen, bits = 0;
+-	int x = (tcp->th_off << 2) - sizeof(struct tcphdr);
++	int cnt = (tcp->th_off << 2) - sizeof(struct tcphdr);
+ 
+-	for (; x > 0; x -= optlen, cp += optlen) {
++	for (; cnt > 0; cnt -= optlen, cp += optlen) {
+ 		int opt = cp[0];
+ 		if (opt == TCPOPT_EOL)
+ 			break;
+ 		if (opt == TCPOPT_NOP)
+ 			optlen = 1;
+ 		else {
++			if (cnt < 2)
++				break;
+ 			optlen = cp[1];
+-			if (optlen <= 0)
++			if (optlen < 2 || optlen > cnt)
+ 				break;
+ 		}
+ 
+@@ -354,22 +359,31 @@
+ 			break;
+ 
+ 		case TCPOPT_MAXSEG:
++			if (optlen != TCPOLEN_MAXSEG)
++				break;
+ 			bits |= IP_FW_TCPOPT_MSS;
+ 			if (mss != NULL)
+ 				*mss = be16dec(cp + 2);
+ 			break;
+ 
+ 		case TCPOPT_WINDOW:
+-			bits |= IP_FW_TCPOPT_WINDOW;
++			if (optlen == TCPOLEN_WINDOW)
++				bits |= IP_FW_TCPOPT_WINDOW;
+ 			break;
+ 
+ 		case TCPOPT_SACK_PERMITTED:
++			if (optlen == TCPOLEN_SACK_PERMITTED)
++				bits |= IP_FW_TCPOPT_SACK;
++			break;
++
+ 		case TCPOPT_SACK:
+-			bits |= IP_FW_TCPOPT_SACK;
++			if (optlen > 2 && (optlen - 2) % TCPOLEN_SACK == 0)
++				bits |= IP_FW_TCPOPT_SACK;
+ 			break;
+ 
+ 		case TCPOPT_TIMESTAMP:
+-			bits |= IP_FW_TCPOPT_TS;
++			if (optlen == TCPOLEN_TIMESTAMP)
++				bits |= IP_FW_TCPOPT_TS;
+ 			break;
+ 		}
+ 	}
+@@ -1427,18 +1441,32 @@
+  * pointer might become stale after other pullups (but we never use it
+  * this way).
+  */
+-#define PULLUP_TO(_len, p, T)	PULLUP_LEN(_len, p, sizeof(T))
+-#define PULLUP_LEN(_len, p, T)					\
++#define	PULLUP_TO(_len, p, T)	PULLUP_LEN(_len, p, sizeof(T))
++#define	_PULLUP_LOCKED(_len, p, T, unlock)			\
+ do {								\
+ 	int x = (_len) + T;					\
+ 	if ((m)->m_len < x) {					\
+ 		args->m = m = m_pullup(m, x);			\
+-		if (m == NULL)					\
++		if (m == NULL) {				\
++			unlock;					\
+ 			goto pullup_failed;			\
++		}						\
+ 	}							\
+ 	p = (mtod(m, char *) + (_len));				\
+ } while (0)
+ 
++#define	PULLUP_LEN(_len, p, T)	_PULLUP_LOCKED(_len, p, T, )
++#define	PULLUP_LEN_LOCKED(_len, p, T)	\
++    _PULLUP_LOCKED(_len, p, T, IPFW_PF_RUNLOCK(chain));	\
++    UPDATE_POINTERS()
++/*
++ * In case pointers got stale after pullups, update them.
++ */
++#define	UPDATE_POINTERS()			\
++do {						\
++	ip = mtod(m, struct ip *);		\
++} while (0)
++
+ 	/*
+ 	 * if we have an ether header,
+ 	 */
+@@ -2269,7 +2297,7 @@
+ 
+ 			case O_TCPOPTS:
+ 				if (proto == IPPROTO_TCP && offset == 0 && ulp){
+-					PULLUP_LEN(hlen, ulp,
++					PULLUP_LEN_LOCKED(hlen, ulp,
+ 					    (TCP(ulp)->th_off << 2));
+ 					match = tcpopts_match(TCP(ulp), cmd);
+ 				}
+@@ -2294,7 +2322,7 @@
+ 					uint16_t mss, *p;
+ 					int i;
+ 
+-					PULLUP_LEN(hlen, ulp,
++					PULLUP_LEN_LOCKED(hlen, ulp,
+ 					    (TCP(ulp)->th_off << 2));
+ 					if ((tcpopts_parse(TCP(ulp), &mss) &
+ 					    IP_FW_TCPOPT_MSS) == 0)
+@@ -3145,6 +3173,7 @@
+ 
+ 		}	/* end of inner loop, scan opcodes */
+ #undef PULLUP_LEN
++#undef PULLUP_LEN_LOCKED
+ 
+ 		if (done)
+ 			break;

Added: head/share/security/patches/SA-20:10/ipfw.12.patch.asc
==============================================================================
--- /dev/null	00:00:00 1970	(empty, because file is newly added)
+++ head/share/security/patches/SA-20:10/ipfw.12.patch.asc	Tue Apr 21 16:29:32 2020	(r54065)
@@ -0,0 +1,18 @@
+-----BEGIN PGP SIGNATURE-----
+
+iQKTBAABCgB9FiEE/A6HiuWv54gCjWNV05eS9J6n5cIFAl6fHNVfFIAAAAAALgAo
+aXNzdWVyLWZwckBub3RhdGlvbnMub3BlbnBncC5maWZ0aGhvcnNlbWFuLm5ldEZD
+MEU4NzhBRTVBRkU3ODgwMjhENjM1NUQzOTc5MkY0OUVBN0U1QzIACgkQ05eS9J6n
+5cJiwQ/+Lpt5TbpgVsZBpwt/LlMngD3jQzuP4NR41LSpynro/diN4ZKyUIDZ2y1r
+RMOy2kVVEQfaO3TdzQzA290ZIZevoZeMWzchG3N23Ya9Ddyz4ChLNWdhdqJwX0Lf
+tIgYuOh3Nd90FP+BSx5KbKC4P9Y2DiXOX6FmzKbCBvNH+etAs8hshbqty1Fcahtv
+aBOjYGvB1tBAl29brsxpSROd0aMVayxbk+2zs4nfrU7RuIHcjjNT0tWlDYrrFZ4a
+qBUucxtv/+UgTDiXIOao55tx2cw4st9Kj6mUp5h3RMNTkB2piztFpH8XLOYq6PLK
+7HzJFbji9sFHQyEjtoa/OoM+o52yfDqEU4YXfKtjvA21xjzfi00shnPY9Cp96CY5
+Q7zjXJsV2J6rvMXm9DY3Dis2cbkgt8nBU2B3ftSFWrCkblmeS49dCUzv+YtJ/J22
+eU7Tkc/bw8dqcZZgiJhEiOTRjSDZzNM9UJBeHpQBcppIltG3TdzDD3YY6KFIBjae
+FwijjljfyA0wAEJREO+km2KpQca1wYyQKFNOVOimenazI+qsSvZg+xotyaGjYKWf
+sDxnieRHzkqrp+6z3fMbo+n7Xz+KLQAxTBAN4YOAv04cePVOVx0/YeiWqWiy7LEk
+Ponji3sfgPmuze/T785zIumLbo7HmoJQJg5o34wRtuF/1ANx0Bg=
+=e2S6
+-----END PGP SIGNATURE-----

Added: head/share/security/patches/SA-20:11/openssl.patch
==============================================================================
--- /dev/null	00:00:00 1970	(empty, because file is newly added)
+++ head/share/security/patches/SA-20:11/openssl.patch	Tue Apr 21 16:29:32 2020	(r54065)
@@ -0,0 +1,11 @@
+--- crypto/openssl/ssl/t1_lib.c.orig
++++ crypto/openssl/ssl/t1_lib.c
+@@ -2099,7 +2099,7 @@
+         sigalg = use_pc_sigalgs
+                  ? tls1_lookup_sigalg(s->s3->tmp.peer_cert_sigalgs[i])
+                  : s->shared_sigalgs[i];
+-        if (sig_nid == sigalg->sigandhash)
++        if (sigalg != NULL && sig_nid == sigalg->sigandhash)
+             return 1;
+     }
+     return 0;

Added: head/share/security/patches/SA-20:11/openssl.patch.asc
==============================================================================
--- /dev/null	00:00:00 1970	(empty, because file is newly added)
+++ head/share/security/patches/SA-20:11/openssl.patch.asc	Tue Apr 21 16:29:32 2020	(r54065)
@@ -0,0 +1,18 @@
+-----BEGIN PGP SIGNATURE-----
+
+iQKTBAABCgB9FiEE/A6HiuWv54gCjWNV05eS9J6n5cIFAl6fHMlfFIAAAAAALgAo
+aXNzdWVyLWZwckBub3RhdGlvbnMub3BlbnBncC5maWZ0aGhvcnNlbWFuLm5ldEZD
+MEU4NzhBRTVBRkU3ODgwMjhENjM1NUQzOTc5MkY0OUVBN0U1QzIACgkQ05eS9J6n
+5cL1OxAAgpwan3XY96qOUx5NVpagPkYkqtGrJsXS4PFwYl3UbWFx6iLXIQCFZxVV
+N5aODi0ixr0oMSlzM8hUhn590LG8UnU2UbUK2WwyhlzDMQaB04kT1xK1V0fqU0vy
+BdRx0sIOGDz38qHLkGKEjJI7M41k5f/2wj65I16YCD3LDaUNzYQvHHRA4nMWa/iG
+g/arSEBSXWEOmAdtazTGzb4x7umLfTzR7fkVBKW5RsaQrPNDaKsGvfkvgi9ZCpc0
+nqcDV07ivPMoM/DkYMO1RYrqHuGch8hejaDrJrf9hu5oYeUFRsl+XqUjVi1H33T6
+Wov9/FzzMEUxwkBm9wzH1vn2rGFncDa6/WR00iHMEKOcGM6B9lCqBNNnpNVC7vEC
+/KVZasjRRwcRGpHMYte0R6rqoxJ4Pas6iaUUJwmv10S1mBaIPLV0k30o5J9G4euf
+r2tsRBQCcY0dyyqO89k1krdFSQw36PDCe/vGoGoIUHsvIWcn894EBW6BdKeky6ns
+PyON5G0/oM+oeyzL+bmocqj479S1poyRY++gGRpkgtVWoOV1+GaiyEhqfJK0srGZ
+vbln/FMvL1mHstM6pyGwYFcd8aYZM+tkp9+hv4T2JCZ0Wj/zEEbGg72vClU+Fuji
+XJsBJu435h0Kl/SZTUYcudwjLai9oHfxAOopyffsfV6NrZU53iE=
+=1JP9
+-----END PGP SIGNATURE-----

Modified: head/share/xml/advisories.xml
==============================================================================
--- head/share/xml/advisories.xml	Mon Apr 20 14:14:06 2020	(r54064)
+++ head/share/xml/advisories.xml	Tue Apr 21 16:29:32 2020	(r54065)
@@ -8,6 +8,23 @@
     <name>2020</name>
 
     <month>
+      <name>4</name>
+
+      <day>
+	<name>21</name>
+
+	<advisory>
+	  <name>FreeBSD-SA-20:11.openssl</name>
+	</advisory>
+
+	<advisory>
+	  <name>FreeBSD-SA-20:10.ipfw</name>
+	</advisory>
+
+      </day>
+    </month>
+
+    <month>
       <name>3</name>
 
       <day>

Modified: head/share/xml/notices.xml
==============================================================================
--- head/share/xml/notices.xml	Mon Apr 20 14:14:06 2020	(r54064)
+++ head/share/xml/notices.xml	Tue Apr 21 16:29:32 2020	(r54065)
@@ -8,6 +8,19 @@
     <name>2020</name>
 
     <month>
+      <name>4</name>
+
+      <day>
+	<name>21</name>
+
+	<notice>
+	  <name>FreeBSD-EN-20:07.quotad</name>
+	</notice>
+
+      </day>
+    </month>
+
+    <month>
       <name>3</name>
 
       <day>
_______________________________________________
[email protected] mailing list
https://lists.freebsd.org/mailman/listinfo/svn-doc-all
To unsubscribe, send any mail to "[email protected]"
lmpx.com only provides a reader for public news (NNTP) servers. It is not affiliated with the servers or forums shown here and is not responsible for the content of articles, which is written by their respective authors.