aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorLeonardo Arena <rnalrd@alpinelinux.org>2017-10-24 14:50:30 +0000
committerLeonardo Arena <rnalrd@alpinelinux.org>2017-10-25 06:36:29 +0000
commit0c68cb103fe19b6450e104b6c1aae05644c4b1c2 (patch)
tree63971785adf6f24b6b2d448eb9de23692285de1c
parent427ff6422a5158b148b925494e82d2da9dd9cafb (diff)
downloadaports-0c68cb103fe19b6450e104b6c1aae05644c4b1c2.tar.bz2
aports-0c68cb103fe19b6450e104b6c1aae05644c4b1c2.tar.xz
main/newsbeuter: security fix (CVE-2017-14500)
fixes #7876
-rw-r--r--main/newsbeuter/APKBUILD10
-rw-r--r--main/newsbeuter/CVE-2017-14500.patch40
2 files changed, 47 insertions, 3 deletions
diff --git a/main/newsbeuter/APKBUILD b/main/newsbeuter/APKBUILD
index 7dc511de20..4267fe6c9c 100644
--- a/main/newsbeuter/APKBUILD
+++ b/main/newsbeuter/APKBUILD
@@ -1,7 +1,7 @@
# Maintainer: Natanael Copa <ncopa@alpinelinux.org>
pkgname=newsbeuter
pkgver=2.9
-pkgrel=4
+pkgrel=5
pkgdesc="Configurable text-based feed reader"
url="http://newsbeuter.org/"
arch="all"
@@ -18,11 +18,14 @@ source="http://newsbeuter.org/downloads/newsbeuter-$pkgver.tar.gz
fix-segfault.patch
musl_const.patch
CVE-2017-12904.patch
+ CVE-2017-14500.patch
"
# secfixes:
+# 2.9-r5:
+# - CVE-2017-14500
# 2.9-r4:
-# - CVE-2017-12904
+# - CVE-2017-12904
_builddir="$srcdir"/newsbeuter-$pkgver
prepare() {
@@ -54,4 +57,5 @@ sha512sums="b173008c8c8d3729f8ccef3ce62645a05c1803fb842d5c0afdf9ffd4ed3726030f9c
08f7125fd8f2b33fa5e36cbd947ec90bcd8b08be2df7961aced20ce031788b3970c1adeb027b1527ba06f18ddbc38518f2c22da6b5fdbc4b1cd5b0edda22ba0b newsbeuter-2.9-ncurses6.patch
da986beb12b0ba473fea55c067abcdcdae6c073bf4d66bc8913696a4da99c4072edaf3910769d8e4bcef3a0411875eb23fbc840e0e7572aa0e16e922cc3d2947 fix-segfault.patch
f5be61b58aa1470090f0bbd519d00a8dae9ef78214787664fd05a8274877b1a20fb38e88058ab6dd8fb61f7fa433683fbecbc16d03bc625cef0cfc0cccf5e246 musl_const.patch
-cef1a625781081430bcaa7fbec74a58ce656a22cd94d5ff1a6983165e053fdfbd869aebd8041fb34a7325a312f15c84b2a1093d237e2680b9244f0917baa1c4c CVE-2017-12904.patch"
+cef1a625781081430bcaa7fbec74a58ce656a22cd94d5ff1a6983165e053fdfbd869aebd8041fb34a7325a312f15c84b2a1093d237e2680b9244f0917baa1c4c CVE-2017-12904.patch
+8836fa3fa48268a5492e3ba16e4d4fc47514ee4ba661cc84c6ea87b61abd7bdfd438fa90fcb0546b75212a9cf5ea9e001396a32fad223500d65bad76b1bfc6f3 CVE-2017-14500.patch"
diff --git a/main/newsbeuter/CVE-2017-14500.patch b/main/newsbeuter/CVE-2017-14500.patch
new file mode 100644
index 0000000000..4dc4642421
--- /dev/null
+++ b/main/newsbeuter/CVE-2017-14500.patch
@@ -0,0 +1,40 @@
+From 26f5a4350f3ab5507bb8727051c87bb04660f333 Mon Sep 17 00:00:00 2001
+From: Alexander Batischev <eual.jp@gmail.com>
+Date: Sat, 16 Sep 2017 19:31:43 +0300
+Subject: [PATCH] Work around shell code in podcast names (#598)
+
+---
+ src/pb_controller.cpp | 6 +++---
+ src/queueloader.cpp | 2 +-
+ 2 files changed, 4 insertions(+), 4 deletions(-)
+
+diff --git a/src/pb_controller.cpp b/src/pb_controller.cpp
+index 09b5e897..213216cd 100644
+--- a/src/pb_controller.cpp
++++ b/src/pb_controller.cpp
+@@ -306,9 +306,9 @@ void pb_controller::play_file(const std::string& file) {
+ if (player == "")
+ return;
+ cmdline.append(player);
+- cmdline.append(" \"");
+- cmdline.append(utils::replace_all(file,"\"", "\\\""));
+- cmdline.append("\"");
++ cmdline.append(" \'");
++ cmdline.append(utils::replace_all(file,"'", "%27"));
++ cmdline.append("\'");
+ stfl::reset();
+ LOG(LOG_DEBUG, "pb_controller::play_file: running `%s'", cmdline.c_str());
+ ::system(cmdline.c_str());
+diff --git a/src/queueloader.cpp b/src/queueloader.cpp
+index c1dabdd8..ae725e04 100644
+--- a/src/queueloader.cpp
++++ b/src/queueloader.cpp
+@@ -130,7 +130,7 @@ std::string queueloader::get_filename(const std::string& str) {
+ strftime(lbuf, sizeof(lbuf), "%Y-%b-%d-%H%M%S.unknown", localtime(&t));
+ fn.append(lbuf);
+ } else {
+- fn.append(base);
++ fn.append(utils::replace_all(base, "'", "%27"));
+ }
+ return fn;
+ }