[Openstack-security] [Bug 1434545] Re: Several command injection vulnerabilities in guestagent/pkg

Anna Shen 1434545 at bugs.launchpad.net
Thu May 14 21:08:28 UTC 2015


** Changed in: trove
     Assignee: (unassigned) => Anna Shen (ruiyuan-shen)

-- 
You received this bug notification because you are a member of OpenStack
Security, which is subscribed to OpenStack.
https://bugs.launchpad.net/bugs/1434545

Title:
  Several command injection vulnerabilities in guestagent/pkg

Status in OpenStack Security Advisories:
  Won't Fix
Status in Openstack Database (Trove):
  Triaged

Bug description:
  At several places in the file guestagent/pkg.py, there are shell
  injection vulnerabilities:

  https://github.com/openstack/trove/blob/master/trove/guestagent/pkg.py#L209

  In this line, the cmd_list is being built parameterized, but then it
  is just combined into one big string and called directly on a shell
  through the command getstatusoutput, which does a popen.  If package
  name is set maliciously, the command will execute arbitrary code with
  the privilege of the trove process.

  The same is true on this line,
  https://github.com/openstack/trove/blob/master/trove/guestagent/pkg.py#L258
  , where a package named something like "abc; rm -rf /etc" will cause
  all files in /etc which Trove has permissions for, to be deleted.

  Again, on this line:
  https://github.com/openstack/trove/blob/master/trove/guestagent/pkg.py#L371
  , a malicious package name will cause arbitrary code injection with
  the privileges of the Trove process.

  I'm not nearly familiar enough with the Trove code and uses to know
  all the ways that package names for this code can be set, but these
  commands should be parameterized.

  Finally, os.popen is a deprecated function.  The subprocess module
  should be used instead.

To manage notifications about this bug go to:
https://bugs.launchpad.net/ossa/+bug/1434545/+subscriptions




More information about the Openstack-security mailing list