GHSA-x7cr-6qr6-2hh6

    Dashboard / Vulnerabilities / GHSA-x7cr-6qr6-2hh6

    GHSA-x7cr-6qr6-2hh6

    Published: 22 Apr 2022Last Modified: 21 Feb 2024

    Summary: Missing input validation can lead to command execution in composer

    Details: The Composer method `VcsDriver::getFileContent()` with user-controlled `$file` or `$identifier` arguments is susceptible to an argument injection vulnerability. It can be leveraged to gain arbitrary command execution if the Mercurial or the Git driver are used. This led to a vulnerability on Packagist.org and Private Packagist, i.e., using the composer.json `readme` field as a vector for injecting parameters into the `$file` argument for the Mercurial driver or via the `$identifier` argument for the Git and Mercurial drivers. Composer itself can be attacked through branch names by anyone controlling a Git or Mercurial repository, which is explicitly listed by URL in a project's composer.json. To the best of our knowledge, this was not actively exploited. The vulnerability has been patched on Packagist.org and Private Packagist within a day of the vulnerability report.

    Affected packages

    Package

    Name: composer/composer

    Purl: pkg:composer/composer/composer

    Affected ranges

    Type: ECOSYSTEM

    Events:

    Introduced- 0
    Fixed -1.10.26

    Affected versions

    1.0.0
    1.0.0-alpha1
    1.0.0-alpha10
    1.0.0-alpha11
    1.0.0-alpha2
    1.0.0-alpha3
    1.0.0-alpha4
    1.0.0-alpha5
    1.0.0-alpha6
    1.0.0-alpha7
    1.0.0-alpha8
    1.0.0-alpha9
    1.0.0-beta1
    1.0.0-beta2
    1.0.1
    1.0.2
    1.0.3

    Common Vulnerability Scoring System

    Attack Vector
    Network
    Adjacent
    Local
    Physical
    Privileges Required
    None
    Low
    High
    User Interaction
    None
    Required
    Scope
    Unchanged
    Changed
    Confidentiality
    None
    Low
    High
    Integrity
    None
    Low
    High
    Availability
    None
    Low
    High
    GHSA-x7cr-6qr6-2hh6 | CVE-DB