aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorLeonardo Arena <rnalrd@alpinelinux.org>2013-12-03 14:55:07 +0000
committerLeonardo Arena <rnalrd@alpinelinux.org>2013-12-03 14:55:07 +0000
commitfc63abb7cf648e265ac8976e6ff92197a6599348 (patch)
treed1202c6fa0ff8e809bfaa46c594decec3ef43f16
parent84bc00a876b34d79953014d30291c32d31a406f2 (diff)
downloadaports-fc63abb7cf648e265ac8976e6ff92197a6599348.tar.bz2
aports-fc63abb7cf648e265ac8976e6ff92197a6599348.tar.xz
main/perl-http-body: security fix CVE-2013-4407. Fixes #2460
-rw-r--r--main/perl-http-body/APKBUILD13
-rw-r--r--main/perl-http-body/CVE-2013-4407.patch26
2 files changed, 36 insertions, 3 deletions
diff --git a/main/perl-http-body/APKBUILD b/main/perl-http-body/APKBUILD
index cabfbabe5d..43a24c25db 100644
--- a/main/perl-http-body/APKBUILD
+++ b/main/perl-http-body/APKBUILD
@@ -2,7 +2,7 @@
# Maintainer: Natanael Copa <ncopa@alpinelinux.org>
pkgname=perl-http-body
pkgver=1.15
-pkgrel=0
+pkgrel=1
pkgdesc="HTTP::Body perl module"
url="http://search.cpan.org/dist/HTTP-Body/"
arch="noarch"
@@ -11,7 +11,9 @@ depends="perl perl-http-message perl-uri"
makedepends="perl-dev perl-test-deep"
install=""
subpackages="$pkgname-doc"
-source="http://search.cpan.org/CPAN/authors/id/G/GE/GETTY/HTTP-Body-$pkgver.tar.gz"
+source="http://search.cpan.org/CPAN/authors/id/G/GE/GETTY/HTTP-Body-$pkgver.tar.gz
+ CVE-2013-4407.patch
+ "
_builddir="$srcdir"/HTTP-Body-$pkgver
prepare() {
@@ -36,4 +38,9 @@ package() {
find "$pkgdir" \( -name perllocal.pod -o -name .packlist \) -delete
}
-md5sums="cccf0211c15a9fed67c68c826c5efeaf HTTP-Body-1.15.tar.gz"
+md5sums="cccf0211c15a9fed67c68c826c5efeaf HTTP-Body-1.15.tar.gz
+8e5a8675955e2bb7a23579be4df6558d CVE-2013-4407.patch"
+sha256sums="dc2b67750d186e6fc9bf98354b972b644300a06af88fdbe0e0291dbc853c839a HTTP-Body-1.15.tar.gz
+5bacbbeda2c4297188f2fdfb03ee7d00785452bb72fac8ac0e8bd5e3575c7061 CVE-2013-4407.patch"
+sha512sums="920deabbe8c7c8dc7af308fddb51bdaf83d70066d056dc112b15d3d2c5d401fd7f84b36913d113a5c5017ec35e623f10e86b43260c18303115f593ba7d5a299e HTTP-Body-1.15.tar.gz
+f6a53949bdb592e9cf10771f3b38b538ac8aeacaddbb7f4f71528147ae2c16ff27a1b191210ec3df3592ad5377beaef4db988ae5eb7a003f4aea558c02995d69 CVE-2013-4407.patch"
diff --git a/main/perl-http-body/CVE-2013-4407.patch b/main/perl-http-body/CVE-2013-4407.patch
new file mode 100644
index 0000000000..5071bac31a
--- /dev/null
+++ b/main/perl-http-body/CVE-2013-4407.patch
@@ -0,0 +1,26 @@
+Description: Allow only word characters in filename suffixes
+ CVE-2013-4407: Allow only word characters in filename suffixes. An
+ attacker able to upload files to a service that uses
+ HTTP::Body::Multipart could use this issue to upload a file and create
+ a specifically-crafted temporary filename on the server, that when
+ processed without further validation, could allow execution of commands
+ on the server.
+Origin: vendor
+Bug: https://rt.cpan.org/Ticket/Display.html?id=88342
+Bug-Debian: http://bugs.debian.org/721634
+Bug-RedHat: https://bugzilla.redhat.com/show_bug.cgi?id=1005669
+Forwarded: no
+Author: Salvatore Bonaccorso <carnil@debian.org>
+Last-Update: 2013-10-21
+
+--- a/lib/HTTP/Body/MultiPart.pm
++++ b/lib/HTTP/Body/MultiPart.pm
+@@ -275,7 +275,7 @@
+
+ if ( $filename ne "" ) {
+ my $basename = (File::Spec->splitpath($filename))[2];
+- my $suffix = $basename =~ /[^.]+(\.[^\\\/]+)$/ ? $1 : q{};
++ my $suffix = $basename =~ /(\.\w+(?:\.\w+)*)$/ ? $1 : q{};
+
+ my $fh = File::Temp->new( UNLINK => 0, DIR => $self->tmpdir, SUFFIX => $suffix );
+