Threats / PHPUnit / CVE-2017-9841
CVE-2017-9841
· EUVD no mirror located
· GCVE no mirror located
Verified 2026-08-04
PHPUnit vulnerability
PHPUnit versions allow remote code execution through the eval-stdin.php utility when the vendor directory is publicly accessible, enabling attackers to execute arbitrary PHP code via crafted POST requests.
Verdict
Today item — known-exploited.
An exposed PHPUnit vendor directory permits unauthenticated remote attackers to execute arbitrary PHP code on the server. This is a critical vulnerability affecting any deployment with publicly accessible vendor files, particularly in development or misconfigured production environments.
CISA KEV Yes · 2022-02-154EPSS 0.99999 (verify live)5Exploit Weaponized · public PoC6CVSS 9.8 (CISA)3CISA SSVC Exploitation: active · Automatable: yes · Impact: total3
01
Is it exploitable?
— the evidence, ranked above the scoreExploit available
Fully weaponized — public exploit code is cataloged for this vulnerability.We link the existence of the exploit; we do not host or redistribute payloads.
Reported exploitation
1340 independent public reports of in-the-wild exploitation are cataloged.Distinct reporting sources (vendor, incident response, government); open them for the underlying claims.
Exploited in the wild
Listed in the CISA Known Exploited Vulnerabilities catalog (added 2022-02-15).
Probability (EPSS)
EPSS 0.99999 — modeled likelihood of exploitation activity.EPSS is a daily-changing model output — open the source for today's value.
Severity / affected
CVSS 9.8 (CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:H/A:H) · Affected: PHPUnit, PHPUnit. Confirm exact fixed builds in the vendor advisory.CVSS — CISA-assigned via the ADP container (CVE.org), version 3.1; the CNA left no metrics, so CISA's own score is used ahead of NVD.
Weakness (CWE)
Mapped to CWE-94 Code Injection — weakness family: Injection.CWE assignment from the public NVD record (may be stale); the weakness class drives how the flaw is exploited.
CISA SSVC (triage disposition)
Exploitation: active · Automatable: yes · Technical Impact: totalCISA's own stakeholder-specific triage inputs, published in the CVE record (CISA Coordinator role). NOTE: this is CISA's three decision points; the final Act/Attend/Track decision also requires a Mission & Well-being input not published here, so no overall decision is asserted.
Currency of the record
CISA added this to its KEV catalog 1694 days after the CVE record was published.KEV lag = CISA-KEV dateAdded − CVE.org datePublished; a floor on how long the known-exploited flaw sat in the public record before the federal catalog listed it. Severity/weakness here is CNA- or CISA-assigned (current at disclosure), independent of NVD's analysis backlog.
Public exploit available
Public exploit tooling is catalogued for this CVE (a public proof-of-concept / detection template). Catalog entries: nuclei template. We link the catalog page(s) only — no payload or code is hosted or restated here.Link, never host — the catalog page is the source; basicsecurity.net does not redistribute payloads.
02
Who’s exploiting it?
— attribution turns risk into urgencyAttribution not established
No confirmed (advisory-backed) threat-actor attribution is established for this record. Absence of a named actor is not absence of compromise — see Coverage & confidence.
03
Why it matters
— the attack path, told twice: adversary, then board1
Front door — unauthenticated access narrative 1
Attacker
I discover the target has a publicly accessible vendor directory through directory enumeration or common path scanning.
Business
Reconnaissance reveals the organization has failed to restrict access to development dependencies, indicating weak deployment security practices.
2
Keys to the kingdom — privilege/identity takeover narrative 2
Attacker
I craft an HTTP POST request to eval-stdin.php containing PHP code prefixed with '?php ' to bypass input validation.
Business
The application processes untrusted input without proper sandboxing, allowing code injection at the interpreter level.
3
Lateral reach — past segmentation narrative 3
Attacker
I execute arbitrary PHP commands with the privileges of the web server process, gaining full application and system access.
Business
Complete compromise of the application server, data stores, and potential lateral movement to internal infrastructure.
04
What to do
— defensible action- Remediate per the vendor advisory — confirm the fixed build for your version and verify exposure.1
Say it to the boardA vulnerability with this evidence profile is a defensible budget line, not a backlog ticket — fund the change against the proof above.
05