ActivePython CVE-2012-5379 Insecure File Permissions Vulnerability


We have read the Security alert for CVE-2012-5379, and would like more information.


This is not a new issue, and it's not really an ActivePython issue. This vulnerability is a member of a class of vulnerabilities that apply to any software which needs to have a user-writable directory on $PATH. It has been a security concern on Windows for as long as software has been avoiding dll conflicts by using custom library paths.

It is already possible to mitigate the vulnerability by choosing to override the default install path and install to one of the various protected program files silos that newer versions of Windows offer. We don't do this as the default because ActivePython has a long legacy of scripts and modules which do not handle spaces in the pathname.

It is also possible to migate the vulnerability on an inplace install. This powershell script will copy the permissions to the Python directory (replace with your directory name, as installed):

powershell -command "(Get-Item 'C:\Program Files').GetAccessControl('Access') | set-acl 'C:\Python'"

Be advised that protecting Python from this vulnerability *will* result in reduced functionality. With altered acls, PyPM will be unable to manage modules unless it is run with elevated priviledges. If you are using virtualenv, you will not be fully protected from this vulnerability unless you protect your virtualenv directory as well.

Powershell is included in Windows 7. With older versions, you may be able to download.

Net-Sftp-Foreign not working with PerlNET

I have a script that uses Net-Sftp-Foreign that works every time from perl interpreter, and fails everytime when ran as a compiled exe from perlnet. I connect to an sftp site, and get a directory listing. In perl, it works, in exe it dies. Any ideas?

Example exe output w/ debug turned on:

# This is Net::SFTP::Foreign 1.73
# Loaded from /Net/SFTP/
# Running on Perl v5.10.1 for MSWin32
# debug set to 25
# ~0 is 4294967295
# Using backend Net::SFTP::Foreign::Backend::Windows 1.70_08
# ssh cmd: plink -P xxx -pw xxx -l xxx -v xxxx -s sftp

Not able to install ETS due to the dependency enable>=4.2.0

I have installed ActivePython on Windows XP, and am trying to install ETS.
From the PyPM console, I did

pypm install ets

Getting the below error on the enable package dependency:

error: no such package found for requirement "enable>; enable";
required by "ets"; try PyPM Index:>; enable/

However, even with pypm install enable, it installs 4.2.0 version of enable.

entry point

Hello -- I am trying to start python interpreter from another program via the API call ... I want the interpreter to run in the same process as the caller -- It not clear which directory need to be in my path so the EP can be found -- also what is the name of the dll that has the EP

ack broken in Perl 5.16

ack is currently broken in the PPM repository for 5.16:

I've checked the build log and the source, and it looks like the only problem is that one of the patch hunks is no longer required (it has been applied upstream).

Could you please fix the build, then?

Exe fails on other Win hosts

I have the trial version of perlapp and I am trying to make an independent exe from a running perl script. The script runs fine and the exe does too when run from the PC it was built on (Windows XP 32bit). However, when I try the app on any other Windows machine (XP or 7) I get the following error:

"The program can't start because libgcc_s_sjlj-1.dll is missing from your computer...." The next error complains about not finding perl516.dll

If I run perapp with verbose logging I can see both these files get added to the exe.

Has anyone any ideas?


32 bit executable from a 64 bit machine

I'm running Windows on a 64 bit machine along with perl5 for "MSWin32-x64-multi-thread".
Created a simple perl script and compiled into an executable with perlapp.

The app doesn't run at all on a 32 bit machine. My first thought was to select a new target system from the perlapp "Main" tab, but a popup message indicates, "PerlApp doesn't have a cached copy of ActivePerl for Windows. A copy will be downloaded from ActiveState and installed in the target cache if you try to create an executable or visit the files tab with this target setting."

Tk module no longer supported?

I've noticed that the Tk module is no longer supported on ActivePerl 5.14 and later. I have a script I wrote a few years ago that lots of new users want to use, but they're unable to install the module. What options do I have? Tell them to install an older version of Perl?

I see Tkx which I know nothing about. Is it possible to port my script over to Tkx? I also use Tk::Dialog and don't see that in any module list for Tkx.


encrypting/hidding password in net use command


I am trying to invoke net use command in my perl script as follows:

my $cmd = "net use \\\\" . $server . "\\ipc\$ /u:" . $self->{DOMAIN} . "\\" . $self->{USER} . " \"" . $self->{PASSWORD} . "\"";

my @results = `$cmd 2>&1`;

The problem is that if I run the perl script and open Process explorer, my password is visible in cleartext.
I am not sure how I can send an encrypted password or hidden password in this command so that it doesnt show up in process explorer.

Any help is greatly appreciated!

Thanks & Regards,

VMWare Stackato Zip file won't unzip


Do I really need 735 PB to unzip the VMWare Stackato VM?


No you certainly do not. Windows zip program is interpreting the zip file incorrectly and is looking for far more space than it needs. Just download 7zip and use it to unzip your file.