Commit graph

14 commits

Author SHA1 Message Date
Jo-Philipp Wich
0d18627cd2 perl: securely handle duplicate environment variables [CVE-2016-2381]
Stephane Chazelas discovered a bug in the environment handling in Perl.

Perl provides a Perl-space hash variable, %ENV, in which environment
variables can be looked up.  If a variable appears twice in envp, only
the last value would appear in %ENV, but getenv would return the first.
Perl's taint security mechanism would be applied to the value in %ENV,
but not to the other rest of the environment.  This could result in an
ambiguous environment causing environment variables to be propagated to
subprocesses, despite the protections supposedly offered by taint
checking.

With this update Perl changes the behavior to match the following:

 a) %ENV is populated with the first environment variable, as getenv
    would return.
 b) Duplicate environment entries are removed.

References:

 * http://perl5.git.perl.org/perl.git/commit/ae37b791a73a9e78dedb89fb2429d2628cf58076
 * https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2016-2381

Signed-off-by: Jo-Philipp Wich <jow@openwrt.org>
2016-03-01 17:26:51 +01:00
Jo-Philipp Wich
f73e358558 perl: ensure File::Spec::canonpath() preserves taint [CVE-2015-8607]
Beginning in PathTools 3.47 and/or perl 5.20.0, the File::Spec::canonpath()
routine returned untained strings even if passed tainted input. This defect
undermines the guarantee of taint propagation, which is sometimes used to
ensure that unvalidated user input does not reach sensitive code.

This defect was found and reported by David Golden of MongoDB, and a patch
was provided by Tony Cook.

References:

 * https://rt.perl.org/Public/Bug/Display.html?id=126862
 * https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2015-8607

Signed-off-by: Jo-Philipp Wich <jow@openwrt.org>
2016-01-14 12:17:56 +01:00
Marcel Denia
8829ae3de6 perl: Work around recompile failures
Apparently, recompiling/relinking fails under some circumstances. This
patch has been reported to work around that issue.

Signed-off-by: Marcel Denia <naoir@gmx.net>
2015-12-10 22:40:54 +01:00
Marcel Denia
3aaaede7b2 perl: Reorganize patches
The old scheme didn't make any sense...not that there was a scheme really.

Signed-off-by: Marcel Denia <naoir@gmx.net>
2015-09-25 11:50:52 +02:00
Marcel Denia
d57f34795c perl: Remove microperl caretx dependency patch
This will make microperl unable to build. That's okay, since we haven't
been building it for quite a while now.

Signed-off-by: Marcel Denia <naoir@gmx.net>
2015-09-25 11:50:33 +02:00
Marcel Denia
7d38a15bc4 perl: Skip $0 test on busybox in dist/threads/t/join.t
This test requires a ps which provides the -f option, as well as suitable output.
We can't provide either with busybox. Just skip it for now.

Signed-off-by: Marcel Denia <naoir@gmx.net>
2015-09-01 09:23:24 +02:00
Marcel Denia
948a4cc165 perl: Skip crypt() tests if unavailable in t/op/tie_fetch_count.t
Signed-off-by: Marcel Denia <naoir@gmx.net>
2015-09-01 09:23:24 +02:00
Jo-Philipp Wich
f9ac3e632b perl: fix musl compatibility
- Add patch to inhibit the libm IEEE math switch on musl
 - Add postprocessing for config.sh to the Makefile to fixup
   defines for musl, idea taken
   from http://patchwork.openembedded.org/patch/91707/

This is the least invasive approach I could come up to fix the build
failure asap. Another possibility is maintaining yet another set of
musl specific architecture config files, but I think that this introduces
a lot of maintenance overhead.

Signed-off-by: Jo-Philipp Wich <jow@openwrt.org>
2015-06-17 17:42:00 +02:00
Marcel Denia
71b97e4f88 perl: Add host-perl relink hack
Signed-off-by: Marcel Denia <naoir@gmx.net>
2014-08-14 17:14:22 +02:00
Marcel Denia
b5967bd21b lang/perl: Add microperl caretx dependency
Signed-off-by: Marcel Denia <naoir@gmx.net>
2014-07-07 22:54:14 +02:00
Marcel Denia
11dec6fc85 lang/perl: Remove old static uudmap handling
Signed-off-by: Marcel Denia <naoir@gmx.net>
2014-07-07 22:54:14 +02:00
Marcel Denia
4c57844f0f lang/perl: Add hack to make perl always use miniperl during build
Signed-off-by: Marcel Denia <naoir@gmx.net>
2014-07-07 22:54:14 +02:00
Marcel Denia
6818ac4313 lang/perl: Rebase patches
Signed-off-by: Marcel Denia <naoir@gmx.net>
2014-07-07 22:54:13 +02:00
Marcel Denia
6420bbd712 Import of oldpackages/perl
Signed-off-by: Marcel Denia <naoir@gmx.net>
2014-07-07 22:54:12 +02:00