CVE-2022-24828

Source
https://nvd.nist.gov/vuln/detail/CVE-2022-24828
Import Source
https://storage.googleapis.com/cve-osv-conversion/osv-output/CVE-2022-24828.json
JSON Data
https://api.osv.dev/v1/vulns/CVE-2022-24828
Aliases
Downstream
Related
Published
2022-04-13T21:00:22Z
Modified
2025-10-14T19:05:05.887932Z
Severity
  • 8.3 (High) CVSS_V3 - CVSS:3.1/AV:N/AC:H/PR:N/UI:R/S:C/C:H/I:H/A:H CVSS Calculator
Summary
Missing input validation can lead to command execution in composer
Details

Composer is a dependency manager for the PHP programming language. Integrators using Composer code to call VcsDriver::getFileContent can have a code injection vulnerability if the user can control the $file or $identifier argument. This leads to a vulnerability on packagist.org for example where the composer.json's readme field can be used as a vector for injecting parameters into hg/Mercurial via the $file argument, or git via the $identifier argument if you allow arbitrary data there (Packagist does not, but maybe other integrators do). Composer itself should not be affected by the vulnerability as it does not call getFileContent with arbitrary data into $file/$identifier. To the best of our knowledge this was not abused, and the vulnerability has been patched on packagist.org and Private Packagist within a day of the vulnerability report.

References

Affected packages

Git / github.com/composer/composer

Affected ranges

Type
GIT
Repo
https://github.com/composer/composer
Events
Introduced
0 Unknown introduced commit / All previous commits are affected
Fixed
Type
GIT
Repo
https://github.com/composer/composer
Events
Type
GIT
Repo
https://github.com/composer/composer
Events

Affected versions

1.*

1.0.0-alpha10
1.0.0-alpha9
1.10.24
1.10.25

2.*

2.2.11
2.2.12
2.2.13
2.3.0
2.3.1
2.3.2
2.3.3
2.3.4
2.3.5