[Perl] Le répertoire courant n'est plus dans @INC ?
David Rigaudiere
david at rigaudiere.net
Dim 7 Mai 14:28:07 CEST 2017
Hello
Oui depuis perl 5.24.1 :
http://search.cpan.org/dist/perl-5.24.1/pod/perldelta.pod#Core_modules_and_tools_no_longer_search_"."_for_optional_modules
<>
Core modules and tools no longer search "." for optional modules <>
The tools and many modules supplied in core no longer search the default current directory entry in @INC <http://search.cpan.org/~shay/perl-5.24.1/pod/perlvar.pod#@INC> for optional modules. For example, Storable <http://search.cpan.org/perldoc?Storable> will remove the final "." from @INC before trying to load Log::Agent <http://search.cpan.org/perldoc?Log%3A%3AAgent>.
This prevents an attacker injecting an optional module into a process run by another user where the current directory is writable by the attacker, e.g. the /tmp directory.
> Le 7 mai 2017 à 12:01, Sylvain Lhullier <sylvain at lhullier.org> a écrit :
>
> Bonjour,
>
> Suite à la mise à jour de mes systèmes vers Ubuntu 17.04, je suis passé en Perl v5.24.1.
> Et j'ai remarqué que @INC ne contient plus '.' (le répertoire courant) par défaut.
>
> J'ai noté que le fichier /etc/perl/sitecustomize.pl contient
> pop @INC if $INC[-1] eq '.' and !$ENV{PERL_USE_UNSAFE_INC};
> (si je commente cette ligne, perl fonctionne comme avant avec '.' dans @INC)
>
> Est-ce une volonté côté Perl ? côté Debian/Ubuntu ?
>
> En attendant d'en savoir plus, j'ai ajouté
> BEGIN { push @INC, '.' }
> dans mes programmes pour utiliser mes modules
> plutôt qu'un PERL_USE_UNSAFE_INC=1 ./prog.pl
> ou que de modifier le système.
>
> Avez-vous constaté cela dans vos systèmes (récents) ?
>
> Merci de vos éclairages
>
> Librement,
>
> --
> Sylvain Lhullier
> Formation Perl http://formation-perl.fr/
> Président des Mongueurs de Perl http://mongueurs.net/
> _______________________________________________
> Perl mailing list
> Perl at mongueurs.net
> http://listes.mongueurs.net/mailman/listinfo/perl
>
-------------- section suivante --------------
Une pièce jointe HTML a été nettoyée...
URL: <http://listes.mongueurs.net/mailman/private/perl/attachments/20170507/08bc4d49/attachment.html>
Plus d'informations sur la liste de diffusion Perl