Skip to main content
← All vulnerabilities
CVE-2026-46420

setup-php: Command Injection in Repository-Derived PHP Version Resolution

Published
Last modified
published
Not listed in CISA KEV
Fix
Fixed in 2.37.1
1 proof of concept on GitHub
  • Exploitation: none
  • Automatable: no
  • Technical impact: partial

Summary

setup-php is a GitHub action to set up PHP with extensions, php.ini configuration, coverage drivers, and tools. From 2.25.0 prior to 2.37.1, shivammathur/setup-php resolves the PHP version from repository-controlled files such as .php-version, composer.lock through platform-overrides.php, and composer.json through config.platform.php, and insufficiently constrains those values before incorporating them into generated shell or PowerShell setup scripts, allowing command injection on a GitHub Actions runner when workflows such as pull_request_target check out attacker-controlled contents before invoking setup-php. This issue is fixed in version 2.37.1.

Timeline

  1. CVE published
  2. CISA SSVC assessment

    Exploitation: none · Automatable: no · Technical impact: partial

  3. Record last updated

Affected versions

  • shivammathur setup-php

    From 2.25.0 · fixed in 2.37.1

References 4

GitHub · shivammathur/setup-php

GitHub · Jvr2022/CVE-2026-46420