[Openstack-security] [Bug 1348416] Re: Popen with shell=True
Steve Lewis
steve.lewis at rackspace.com
Thu Jan 22 01:36:44 UTC 2015
The point of concern in the description
(glance/tests/unit/test_migrations.py) is no longer vulnerable as the
tests there no longer rely on a call to subprocess.Popen directly. The
other point of concern from the comments was glance.tests.utils and this
can safely be refactored to eliminate the use of shell=True as none of
the callers need a shell. The callers simply need to have their cmd
string correctly split to an args list.
--
You received this bug notification because you are a member of OpenStack
Security Group, which is subscribed to OpenStack.
https://bugs.launchpad.net/bugs/1348416
Title:
Popen with shell=True
Status in OpenStack Image Registry and Delivery Service (Glance):
In Progress
Status in OpenStack Security Advisories:
Won't Fix
Bug description:
Glance uses subprocess.Popen with shell=True in
glance/tests/unit/test_migrations.py line 175 in function
_reset_datases:
def execute_cmd(cmd=None):
proc = subprocess.Popen(cmd, stdout=subprocess.PIPE,
stderr=subprocess.STDOUT, shell=True)
If execute_cmd contains, either accidentally or maliciously, a double
quote then arbitrary data will be executed. Popen should be called
with an argument list instead of directly through the shell. For more
information on subprocess, shell=True and command injection see:
https://docs.python.org/2/library/subprocess.html#frequently-used-
arguments
Since these are unit tests and the likelihood of malicious input is
low the severity should also be low.
To manage notifications about this bug go to:
https://bugs.launchpad.net/glance/+bug/1348416/+subscriptions
More information about the Openstack-security
mailing list