Date: Tue, 1 Jun 2021 20:51:34 GMT From: Gordon Tetlow <gordon@FreeBSD.org> To: doc-committers@FreeBSD.org, dev-commits-doc-all@FreeBSD.org Subject: git: caf6116627 - main - Add EN-21:17. Approved by: so Message-ID: <202106012051.151KpY8V080284@gitrepo.freebsd.org>
next in thread | raw e-mail | index | archive | help
The branch main has been updated by gordon (src committer): URL: https://cgit.FreeBSD.org/doc/commit/?id=caf6116627fb89e2d4020f04255c0133d6faaa58 commit caf6116627fb89e2d4020f04255c0133d6faaa58 Author: Gordon Tetlow <gordon@FreeBSD.org> AuthorDate: 2021-06-01 20:51:11 +0000 Commit: Gordon Tetlow <gordon@FreeBSD.org> CommitDate: 2021-06-01 20:51:11 +0000 Add EN-21:17. Approved by: so --- website/data/security/errata.toml | 4 + .../advisories/FreeBSD-EN-21:17.libradius.asc | 147 +++++++++++++++++++++ .../security/patches/EN-21:17/libradius.patch | 16 +++ .../security/patches/EN-21:17/libradius.patch.asc | 16 +++ 4 files changed, 183 insertions(+) diff --git a/website/data/security/errata.toml b/website/data/security/errata.toml index de0a6f640f..4c1b2b1704 100644 --- a/website/data/security/errata.toml +++ b/website/data/security/errata.toml @@ -1,6 +1,10 @@ # Sort errata notices by year, month and day # $FreeBSD$ +[[notices]] +name = "FreeBSD-EN-21:17.libradius" +date = "2021-06-01" + [[notices]] name = "FreeBSD-EN-21:16.bc" date = "2021-05-26" diff --git a/website/static/security/advisories/FreeBSD-EN-21:17.libradius.asc b/website/static/security/advisories/FreeBSD-EN-21:17.libradius.asc new file mode 100644 index 0000000000..889553b23f --- /dev/null +++ b/website/static/security/advisories/FreeBSD-EN-21:17.libradius.asc @@ -0,0 +1,147 @@ +-----BEGIN PGP SIGNED MESSAGE----- +Hash: SHA512 + +============================================================================= +FreeBSD-EN-21:17.libradius Errata Notice + The FreeBSD Project + +Topic: Incorrect validation in rad_get_attr(3) + +Category: core +Module: libradius +Announced: 2021-06-01 +Affects: All supported versions of FreeBSD. +Corrected: 2021-05-28 17:00:19 UTC (stable/13, 13.0-STABLE) + 2021-06-01 20:26:32 UTC (releng/13.0, 13.0-RELEASE-p2) + 2021-05-28 17:03:20 UTC (stable/12, 12.2-STABLE) + 2021-06-01 20:38:39 UTC (releng/12.2, 12.2-RELEASE-p8) + 2021-05-28 17:02:43 UTC (stable/11, 11.4-STABLE) + 2021-05-28 20:37:54 UTC (releng/11.4, 11.4-RELEASE-p11) + +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 + +libradius(3) is a client and server library implementing the Remote +Authentication Dial In User Service (RADIUS) protocol. It is used by +pam_radius(8) and mpd5 (available in the ports tree as net/mpd5). + +II. Problem Description + +The patch for FreeBSD-SA-21:12.libradius modified rad_get_attr(3) to +verify that an attribute length smaller than the minimum required for +the attribute type and length fields is disallowed. This check may fail +incorrectly for the final attribute in a RADIUS message. + +III. Impact + +The bug may cause request validation to fail when it should succeed. +This can result in errors in applications making using of libradius(3). + +IV. Workaround + +No workaround is available. Systems not using libradius(3) 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 amd64, i386, or +(on FreeBSD 13 and later) arm64 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-21:17/libradius.patch +# fetch https://security.FreeBSD.org/patches/EN-21:17/libradius.patch.asc +# gpg --verify libradius.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 + +This issue is corrected by the corresponding Git commit hash or Subversion +revision number in the following stable and release branches: + +Branch/path Hash Revision +- ------------------------------------------------------------------------- +stable/13/ f9972532343b stable/13-n245792 +releng/13.0/ 8acc450613c3 releng/13.0-n244745 +stable/12/ r369897 +releng/12.2/ r369921 +stable/11/ r369896 +releng/11.4/ r369919 +- ------------------------------------------------------------------------- + +For FreeBSD 13 and later: + +Run the following command to see which files were modified by a +particular commit: + +# git show --stat <commit hash> + +Or visit the following URL, replacing NNNNNN with the hash: + +<URL:https://cgit.freebsd.org/src/commit/?id=NNNNNN> + +To determine the commit count in a working tree (for comparison against +nNNNNNN in the table above), run: + +# git rev-list --count --first-parent HEAD + +For FreeBSD 12 and earlier: + +Run the following command to see which files were modified by a particular +revision, replacing NNNNNN with the revision number: + +# 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 + +The latest revision of this advisory is available at +<URL:https://security.FreeBSD.org/advisories/FreeBSD-EN-21:17.libradius.asc> +-----BEGIN PGP SIGNATURE----- + +iQIzBAEBCgAdFiEE/A6HiuWv54gCjWNV05eS9J6n5cIFAmC2nUcACgkQ05eS9J6n +5cIyuxAAgNcgrQ/+3NRWPk8N0iqjIs5fN0HHdKF91o8FtCel9JW0UXXH9LZEsJiX +5twBTXHy8QL5yleJy83KDgHtIAKFTgILr2NaKBsc9T10sKJ7QWqpTUYKy9YXbqfO +3eX2+60j5LVfazoRMrPZotLxvvexa3imHQh4IrUEr/eDdUs1kB/fIc1bwi6sBksK +5Mqg6rlm1FusruUFfRynEUCQY7MhuFMTPUDvOOu8bvfmYK+sFB2lyfH1mxv7eaNA +LtiTrP/EcMDxpxbPL+fwEJgHnz50K4UIwaqpt9x46z3tNEDB/NJI5XWJ8KHG7liW +mJvPJIhu0QV2+Q04r5zqF9Io8PSulowS7NYxgGwcFXL7ZquLFxR2w/IdPkkqoLmZ +kTHW3Zz2kyDDJ7c3kg2dafolMS2G5MmUy91cIpR8T6o4ARYHIHuojXE4E8M2JUPQ +GV/HP0keMNKHRAy674Ie1Pa+Lmzwa1o1MNj/znF/8kR7pFqY60TqQ+h2jsHKO+ov +TZEjVf886LOmw6z/q7s2WBl2sq2JMiffWoFBx6URGKPtjCYYOWbC4AocsbAeu4a1 +5aNOa5otm25JjSZi6h0nepbw/QQHhR6LgqAIJue1bD4uA0Sbhf4Vwcbte1aMasGs +Te0nK0Q2QAdzfSI7TJdzAazXPHeqDfWnKAw2h57jJnMQH5IbMss= +=lZku +-----END PGP SIGNATURE----- diff --git a/website/static/security/patches/EN-21:17/libradius.patch b/website/static/security/patches/EN-21:17/libradius.patch new file mode 100644 index 0000000000..4f8e05c631 --- /dev/null +++ b/website/static/security/patches/EN-21:17/libradius.patch @@ -0,0 +1,16 @@ +--- lib/libradius/radlib.c.orig ++++ lib/libradius/radlib.c +@@ -964,7 +964,12 @@ + } + type = h->in[h->in_pos++]; + len = h->in[h->in_pos++]; +- if (len < 2 || h->in_pos + len > h->in_len) { ++ if (len < 2) { ++ generr(h, "Malformed attribute in response"); ++ return -1; ++ } ++ len -= 2; ++ if (h->in_pos + len > h->in_len) { + generr(h, "Malformed attribute in response"); + return -1; + } diff --git a/website/static/security/patches/EN-21:17/libradius.patch.asc b/website/static/security/patches/EN-21:17/libradius.patch.asc new file mode 100644 index 0000000000..fdc7c1af1e --- /dev/null +++ b/website/static/security/patches/EN-21:17/libradius.patch.asc @@ -0,0 +1,16 @@ +-----BEGIN PGP SIGNATURE----- + +iQIzBAABCgAdFiEE/A6HiuWv54gCjWNV05eS9J6n5cIFAmC2nUgACgkQ05eS9J6n +5cLZcxAApmo7ozxwyMyLpvozf94MtA4spYgM3/MQb8WiO4gd1FkQOKjqyLVTnSF3 +Hbb8VTrhDp13K5o5v4wCtF102P5LWnRC1Ny0ivOGVBmtOnZsDsMHCH1FSSGE8V9z +8kFtFWSxaW5GKyA8KWHNxfWnxbwlrK0PXNBYgcGbXv8t1LBO/OJ6AKv7ghuNHaSR +wPcLekQXRc4AyjkqNETiXLwc+zUTXT9uEgbtQw9TgFjhP15R1EIwFBfL9IdyLaW3 +8cShW2JbByCIPocVzCjZGbgLYWXGoysrIVTM7bKMvJmmOUbP++b+WDpFhdhDQh7v +RYpkBcU4uSsSKmMp/y9b9oJf0s2ARkrK5TJphQ3hecdpINFnQeq2jC1YP95DuW+U +9JARIvL1R8bQgdg3BihpZUgpdV0nOLc+V5rTTu7zbB5mhc1PdppIUKHOS26bmzbP +lIaqQb3npiCMslcjsybYNCpYfLIGbPP+aoSzvu/uAOkXhWp4CPlwvCEberM8jtVo +h7/3XmfzMkKqpf86OVm7/xXxPQgP/F5HZm66hFeaUZOIutAKcmJGkOaH3gzO1U9N +oyUQPbDkbTEUKuGRnxHBXf3ne6KUfxx8k6zq0Xr9St5MXSRjLH8gdfSyTS4EgXtb +s9XrgdHfvsJlOff/p3m17sEm4hrX3fXJeX1e+adG54N4rldPgHM= +=CECh +-----END PGP SIGNATURE-----
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?202106012051.151KpY8V080284>