diff --git a/CVE-2023-38403.patch b/CVE-2023-38403.patch new file mode 100644 index 0000000000000000000000000000000000000000..8665a4d3199f988ca89e5ea9b05e917516223f52 --- /dev/null +++ b/CVE-2023-38403.patch @@ -0,0 +1,44 @@ +From 0ef151550d96cc4460f98832df84b4a1e87c65e9 Mon Sep 17 00:00:00 2001 +From: "Bruce A. Mah" +Date: Fri, 7 Jul 2023 11:35:02 -0700 +Subject: [PATCH] Fix memory allocation hazard (#1542). (#1543) + +Reported by: @someusername123 on GitHub +--- + src/iperf_api.c | 9 ++++++++- + 1 file changed, 8 insertions(+), 1 deletion(-) + +diff --git a/src/iperf_api.c b/src/iperf_api.c +index f2d416214..a95e02418 100644 +--- a/src/iperf_api.c ++++ b/src/iperf_api.c +@@ -2670,6 +2670,7 @@ static cJSON * + JSON_read(int fd) + { + uint32_t hsize, nsize; ++ size_t strsize; + char *str; + cJSON *json = NULL; + int rc; +@@ -2682,7 +2683,9 @@ JSON_read(int fd) + if (Nread(fd, (char*) &nsize, sizeof(nsize), Ptcp) >= 0) { + hsize = ntohl(nsize); + /* Allocate a buffer to hold the JSON */ +- str = (char *) calloc(sizeof(char), hsize+1); /* +1 for trailing null */ ++ strsize = hsize + 1; /* +1 for trailing NULL */ ++ if (strsize) { ++ str = (char *) calloc(sizeof(char), strsize); + if (str != NULL) { + rc = Nread(fd, str, hsize, Ptcp); + if (rc >= 0) { +@@ -2701,6 +2704,10 @@ JSON_read(int fd) + } + } + free(str); ++ } ++ else { ++ printf("WARNING: Data length overflow\n"); ++ } + } + return json; + } diff --git a/iperf3.spec b/iperf3.spec index d0ad310d6ba2d535c76d07cf55ad9b71cff92d78..84223f4af820e199c192d52e1b75a69a683e2341 100644 --- a/iperf3.spec +++ b/iperf3.spec @@ -1,10 +1,11 @@ Name: iperf3 Version: 3.6 -Release: 5 +Release: 6 Summary: TCP,UDP,and SCTP network bandwidth measurement tool License: BSD URL: http://github.com/esnet/iperf Source0: http://downloads.es.net/pub/iperf/iperf-%{version}.tar.gz +Patch0: CVE-2023-38403.patch BuildRequires: libuuid-devel gcc Requires: %{name}-help = %{version}-%{release} @@ -54,6 +55,9 @@ mkdir -p %{buildroot}%{_mandir}/man1 %{_mandir}/man3/libiperf.3.gz %changelog +* Mon Aug 07 2023 yaoxin - 3.6-6 +- Fix CVE-2023-38403 + * Fri Nov 06 2020 leiju - 3.6-5 - Add Requires iperf3-help into iperf3