From 0fe9a26ca302821aa9976bd64e2f2d537495999d Mon Sep 17 00:00:00 2001 From: Fabrice Fontaine Date: Wed, 26 Oct 2022 23:03:34 +0200 Subject: [PATCH] package/shapelib: fix CVE-2022-0699 A double-free condition exists in contrib/shpsort.c of shapelib 1.5.0 and older releases. This issue may allow an attacker to cause a denial of service or have other unspecified impact via control over malloc. Signed-off-by: Fabrice Fontaine Signed-off-by: Thomas Petazzoni (cherry picked from commit 810c0eecf1fb81de43c67d602290e911d6a3a486) Signed-off-by: Peter Korsgaard --- ...Remove-double-free-in-contrib-shpsrt.patch | 26 +++++++++++++++++++ package/shapelib/shapelib.mk | 3 +++ 2 files changed, 29 insertions(+) create mode 100644 package/shapelib/0001-Remove-double-free-in-contrib-shpsrt.patch diff --git a/package/shapelib/0001-Remove-double-free-in-contrib-shpsrt.patch b/package/shapelib/0001-Remove-double-free-in-contrib-shpsrt.patch new file mode 100644 index 0000000000..a565874b8c --- /dev/null +++ b/package/shapelib/0001-Remove-double-free-in-contrib-shpsrt.patch @@ -0,0 +1,26 @@ +From c75b9281a5b9452d92e1682bdfe6019a13ed819f Mon Sep 17 00:00:00 2001 +From: =?UTF-8?q?Albin=20Eldst=C3=A5l-Ahrens?= +Date: Mon, 3 Jan 2022 12:34:41 +0100 +Subject: [PATCH] Remove double free() in contrib/shpsrt, issue #39 + +This fixes issue #39 + +[Retrieved from: +https://github.com/OSGeo/shapelib/commit/c75b9281a5b9452d92e1682bdfe6019a13ed819f] +Signed-off-by: Fabrice Fontaine +--- + contrib/shpsort.c | 1 - + 1 file changed, 1 deletion(-) + +diff --git a/contrib/shpsort.c b/contrib/shpsort.c +index e21e9e0..920cd8c 100644 +--- a/contrib/shpsort.c ++++ b/contrib/shpsort.c +@@ -113,7 +113,6 @@ static char ** split(const char *arg, const char *delim) { + free(result[--i]); + } + free(result); +- free(copy); + return NULL; + } + result = tmp; diff --git a/package/shapelib/shapelib.mk b/package/shapelib/shapelib.mk index 52f9584e19..37d2d9ae64 100644 --- a/package/shapelib/shapelib.mk +++ b/package/shapelib/shapelib.mk @@ -11,4 +11,7 @@ SHAPELIB_LICENSE_FILES = web/license.html COPYING SHAPELIB_CPE_ID_VENDOR = osgeo SHAPELIB_INSTALL_STAGING = YES +# 0001-Remove-double-free-in-contrib-shpsrt.patch +SHAPELIB_IGNORE_CVES += CVE-2022-0699 + $(eval $(autotools-package))