[Bug network/20018] getaddrinfo should reject IP addresses with trailing characters (CVE-2016-10739)
cvs-commit at gcc dot gnu.org
sourceware-bugzilla@sourceware.org
Mon Feb 4 20:57:00 GMT 2019
https://sourceware.org/bugzilla/show_bug.cgi?id=20018
--- Comment #15 from cvs-commit at gcc dot gnu.org <cvs-commit at gcc dot gnu.org> ---
This is an automated email from the git hooks/post-receive script. It was
generated because a ref change was pushed to the repository containing
the project "GNU C Library master sources".
The branch, release/2.28/master has been updated
via c533244b8e00ae701583ec50aeb43377d292452d (commit)
via 2373941bd73cb288c8a42a33e23e7f7bb81151e7 (commit)
via 37edf1d3f8ab9adefb61cc466ac52b53114fbd5b (commit)
via 8e92ca5dd7a7e38a4dddf1ebc4e1e8f0cb27e4aa (commit)
from 9aaa083387fd1e19eb0bbd9f25444a5d5c91e210 (commit)
Those revisions listed above that are new to this repository have
not appeared on any other notification email; so we list those
revisions in full, below.
- Log -----------------------------------------------------------------
https://sourceware.org/git/gitweb.cgi?p=glibc.git;h=c533244b8e00ae701583ec50aeb43377d292452d
commit c533244b8e00ae701583ec50aeb43377d292452d
Author: Florian Weimer <fweimer@redhat.com>
Date: Mon Feb 4 20:07:18 2019 +0100
nscd: Do not use __inet_aton_exact@GLIBC_PRIVATE [BZ #20018]
This commit avoids referencing the __inet_aton_exact@GLIBC_PRIVATE
symbol from nscd. In master, the separately-compiled getaddrinfo
implementation in nscd needs it, however such an internal ABI change
is not desirable on a release branch if it can be avoided.
https://sourceware.org/git/gitweb.cgi?p=glibc.git;h=2373941bd73cb288c8a42a33e23e7f7bb81151e7
commit 2373941bd73cb288c8a42a33e23e7f7bb81151e7
Author: Florian Weimer <fweimer@redhat.com>
Date: Mon Jan 21 21:26:03 2019 +0100
CVE-2016-10739: getaddrinfo: Fully parse IPv4 address strings [BZ #20018]
The IPv4 address parser in the getaddrinfo function is changed so that
it does not ignore trailing whitespace and all characters after it.
For backwards compatibility, the getaddrinfo function still recognizes
legacy name syntax, such as 192.000.002.010 interpreted as 192.0.2.8
(octal).
This commit does not change the behavior of inet_addr and inet_aton.
gethostbyname already had additional sanity checks (but is switched
over to the new __inet_aton_exact function for completeness as well).
To avoid sending the problematic query names over DNS, commit
6ca53a2453598804a2559a548a08424fca96434a ("resolv: Do not send queries
for non-host-names in nss_dns [BZ #24112]") is needed.
(cherry picked from commit 108bc4049f8ae82710aec26a92ffdb4b439c83fd)
https://sourceware.org/git/gitweb.cgi?p=glibc.git;h=37edf1d3f8ab9adefb61cc466ac52b53114fbd5b
commit 37edf1d3f8ab9adefb61cc466ac52b53114fbd5b
Author: Florian Weimer <fweimer@redhat.com>
Date: Mon Jan 21 09:26:41 2019 +0100
resolv: Do not send queries for non-host-names in nss_dns [BZ #24112]
Before this commit, nss_dns would send a query which did not contain a
host name as the query name (such as invalid\032name.example.com) and
then reject the answer in getanswer_r and gaih_getanswer_slice, using
a check based on res_hnok. With this commit, no query is sent, and a
host-not-found error is returned to NSS without network interaction.
(cherry picked from commit 6ca53a2453598804a2559a548a08424fca96434a)
https://sourceware.org/git/gitweb.cgi?p=glibc.git;h=8e92ca5dd7a7e38a4dddf1ebc4e1e8f0cb27e4aa
commit 8e92ca5dd7a7e38a4dddf1ebc4e1e8f0cb27e4aa
Author: Florian Weimer <fweimer@redhat.com>
Date: Mon Jan 21 08:59:42 2019 +0100
resolv: Reformat inet_addr, inet_aton to GNU style
(cherry picked from commit 5e30b8ef0758763effa115634e0ed7d8938e4bc0)
-----------------------------------------------------------------------
Summary of changes:
ChangeLog | 57 ++++++++++
NEWS | 4 +
include/arpa/inet.h | 6 +-
nscd/Makefile | 2 +-
nscd/gai.c | 7 +-
nscd/gethstbynm3_r.c | 2 -
nscd/nscd-inet_addr.c | 32 ++++++
nss/digits_dots.c | 3 +-
resolv/Makefile | 7 ++
resolv/Versions | 1 +
resolv/inet_addr.c | 226 +++++++++++++++++++++++-----------------
resolv/nss_dns/dns-host.c | 24 ++++-
resolv/res_init.c | 17 ++-
resolv/tst-aton.c | 35 +++++-
resolv/tst-inet_aton_exact.c | 47 ++++++++
resolv/tst-resolv-nondecimal.c | 139 ++++++++++++++++++++++++
resolv/tst-resolv-trailing.c | 136 ++++++++++++++++++++++++
sysdeps/posix/getaddrinfo.c | 2 +-
18 files changed, 627 insertions(+), 120 deletions(-)
create mode 100644 nscd/nscd-inet_addr.c
create mode 100644 resolv/tst-inet_aton_exact.c
create mode 100644 resolv/tst-resolv-nondecimal.c
create mode 100644 resolv/tst-resolv-trailing.c
--
You are receiving this mail because:
You are on the CC list for the bug.
More information about the Glibc-bugs
mailing list