Scientific Linux Security Update : perl on SL5.x i386/x86_64
High Nessus Plugin ID 60801
SynopsisThe remote Scientific Linux host is missing one or more security updates.
DescriptionPerl is a high-level programming language commonly used for system administration utilities and web programming. The Safe extension module allows users to compile and execute Perl code in restricted compartments. The File::Path module allows users to create and remove directory trees.
The Safe module did not properly restrict the code of implicitly called methods (such as DESTROY and AUTOLOAD) on implicitly blessed objects returned as a result of unsafe code evaluation. These methods could have been executed unrestricted by Safe when such objects were accessed or destroyed. A specially crafted Perl script executed inside of a Safe compartment could use this flaw to bypass intended Safe module restrictions. (CVE-2010-1168)
The Safe module did not properly restrict code compiled in a Safe compartment and executed out of the compartment via a subroutine reference returned as a result of unsafe code evaluation. A specially crafted Perl script executed inside of a Safe compartment could use this flaw to bypass intended Safe module restrictions, if the returned subroutine reference was called from outside of the compartment.
Multiple race conditions were found in the way the File::Path module's rmtree function removed directory trees. A malicious, local user with write access to a directory being removed by a victim, running a Perl script using rmtree, could cause the permissions of arbitrary files to be changed to world-writable and setuid, or delete arbitrary files via a symbolic link attack, if the victim had the privileges to change the permissions of the target files or to remove them. (CVE-2008-5302, CVE-2008-5303)
These packages upgrade the Safe extension module to version 2.27.
Refer to the Safe module's Changes file at the following link for a full list of changes.
All applications using the Safe or File::Path modules must be restarted for this update to take effect.
NOTE: SL 50-52 x86_64 releases originally had a perl.i386 package. It was taken out of the x86_64 SL5 distribution and is not part of this security update. If you have one of these earlier SL5 x86_64 distributions and your perl update does not work due to conflicts, you should do a 'yum remove perl.i386' before doing your update on these earlier SL 5 x86_64 releases.
SolutionUpdate the affected perl and / or perl-suidperl packages.