mitr pushed to perl-IPTables-Parse (perl-IPTables-Parse-1.5-1.fc24). "Fix use of predictable temporary file names"
notifications at fedoraproject.org
notifications at fedoraproject.org
Tue Sep 29 17:44:33 UTC 2015
From 8093e46d867638a508e443702a85be91a2499d3b Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?Miloslav=20Trma=C4=8D?= <mitr at redhat.com>
Date: Tue, 29 Sep 2015 19:36:58 +0200
Subject: Fix use of predictable temporary file names
diff --git a/IPTables-Parse-1.5-predictable-tmp.patch b/IPTables-Parse-1.5-predictable-tmp.patch
new file mode 100644
index 0000000..7e2d9de
--- /dev/null
+++ b/IPTables-Parse-1.5-predictable-tmp.patch
@@ -0,0 +1,48 @@
+From b400b976d81140f6971132e94eb7657b5b0a2b87 Mon Sep 17 00:00:00 2001
+From: =?UTF-8?q?Miloslav=20Trma=C4=8D?= <mitr at redhat.com>
+Date: Tue, 29 Sep 2015 19:09:43 +0200
+Subject: [PATCH] Don't use predictable names for temporary files
+
+This allows an attacker on a multi-user system to set up symlinks to
+overwrite any file the current user has write access to.
+
+Don't recommend users of this module to use predictable names either.
+---
+ lib/IPTables/Parse.pm | 7 +++----
+ 1 file changed, 3 insertions(+), 4 deletions(-)
+
+diff --git a/lib/IPTables/Parse.pm b/lib/IPTables/Parse.pm
+index 7c27b8b..cbd2042 100644
+--- a/lib/IPTables/Parse.pm
++++ b/lib/IPTables/Parse.pm
+@@ -17,6 +17,7 @@ package IPTables::Parse;
+ use 5.006;
+ use POSIX ":sys_wait_h";
+ use Carp;
++use File::Temp;
+ use strict;
+ use warnings;
+ use vars qw($VERSION);
+@@ -36,8 +37,8 @@ sub new() {
+ _firewall_cmd => $args{'firewall-cmd'} || '',
+ _fwd_args => $args{'fwd_args'} || '--direct --passthrough ipv4',
+ _ipv6 => $args{'use_ipv6'} || 0,
+- _iptout => $args{'iptout'} || '/tmp/ipt.out' . $$,
+- _ipterr => $args{'ipterr'} || '/tmp/ipt.err' . $$,
++ _iptout => $args{'iptout'} || mktemp('/tmp/ipt.out.XXXXXX'),
++ _ipterr => $args{'ipterr'} || mktemp('/tmp/ipt.err.XXXXXX'),
+ _ipt_alarm => $args{'ipt_alarm'} || 30,
+ _debug => $args{'debug'} || 0,
+ _verbose => $args{'verbose'} || 0,
+@@ -980,8 +981,6 @@ IPTables::Parse - Perl extension for parsing iptables and ip6tables policies
+ 'use_ipv6' => 0, # can set to 1 to force ip6tables usage
+ 'ipt_rules_file' => '', # optional file path from
+ # which to read iptables rules
+- 'iptout' => '/tmp/iptables.out',
+- 'ipterr' => '/tmp/iptables.err',
+ 'debug' => 0,
+ 'verbose' => 0
+ );
+--
+2.4.3
+
diff --git a/perl-IPTables-Parse.spec b/perl-IPTables-Parse.spec
index 74602db..ee40570 100644
--- a/perl-IPTables-Parse.spec
+++ b/perl-IPTables-Parse.spec
@@ -7,6 +7,8 @@ Group: Development/Libraries
URL: http://www.cipherdyne.org/modules/
Source0: http://www.cipherdyne.org/modules/IPTables-Parse-%{version}.tar.bz2
Source1: http://www.cipherdyne.org/modules/IPTables-Parse-%{version}.tar.bz2.asc
+# https://github.com/mrash/IPTables-Parse/pull/6
+Patch0: IPTables-Parse-1.5-predictable-tmp.patch
BuildArch: noarch
BuildRequires: perl(ExtUtils::MakeMaker)
Requires: perl(:MODULE_COMPAT_%(eval "`%{__perl} -V:version`"; echo $version))
@@ -21,6 +23,7 @@ rules exist.
%prep
%setup -q -n IPTables-Parse-%{version}
+%patch0 -p1
%build
%{__perl} Makefile.PL INSTALLDIRS=vendor
@@ -49,6 +52,7 @@ rm -rf $RPM_BUILD_ROOT
%changelog
* Tue Sep 29 2015 Miloslav Trmač <mitr at redhat.com> - 1.5-1
- Update to IPTables-Parse-1.5
+- Fix use of predictable temporary file names
* Thu Jun 18 2015 Fedora Release Engineering <rel-eng at lists.fedoraproject.org> - 1.4-3
- Rebuilt for https://fedoraproject.org/wiki/Fedora_23_Mass_Rebuild
--
cgit v0.10.2
http://pkgs.fedoraproject.org/cgit/perl-IPTables-Parse.git/commit/?h=perl-IPTables-Parse-1.5-1.fc24&id=8093e46d867638a508e443702a85be91a2499d3b
More information about the perl-devel
mailing list