{"items":[{"id":"NVI-00008257","kind":"vulnerability","title":"PHPUnit vulnerable to code execution by other local users via shared temporary directory in PHPT code coverage handling","revision":4,"unknowns":["Customer inventory, deployment, reachability and exploitation have not been inspected."],"lifecycle":"active","identifiers":["GHSA-9vw2-f4vp-x7gf","CVE-2026-119193"],"plain_summary":"GitHub lists this reviewed advisory for phpunit/phpunit. Published version ranges and source prerequisites are shown below; this is not an inspection of a visitor’s application.","review_status":"source_listed","control_topics":[],"public_actions":[{"summary":"Identify the exact component and deployed version, examine the linked publisher’s conditions, and retain evidence of any mitigation.","source_ids":["sr-250e3d055ecd32ebbc1764420365005e"],"action_type":"investigate","limitations":"Confirm current vendor support, compatibility and deployment evidence. This report has not tested a fix in your system.","current_supported_target":null},{"summary":"The original advisory lists fixed boundaries 13.4.4 for phpunit/phpunit. Confirm the publisher’s latest guidance.","source_ids":["sr-fc18bf9da1ac0f131aa7b18e04d13a4b"],"action_type":"vendor_patch","limitations":"Confirm current vendor support, compatibility and deployment evidence. This report has not tested a fix in your system.","current_supported_target":null}],"schema_version":"1.1.0","source_metrics":[{"kind":"EPSS","as_of":"2026-11-02T12:00:30.000Z","value":"0.113%","meaning":"FIRST EPSS model v2026.06.15; exploitation probability over 30 days, percentile 0.01414. Missing scores are unknown.","source_id":"sr-250e3d055ecd32ebbc1764420365005e"}],"why_it_matters":"Published affected context helps an owner decide what evidence to gather. This report has not examined your application.","related_sources":[{"id":"sr-7bf00848bc9b69c01b23ed626404855b","url":"https://github.com/advisories/GHSA-9vw2-f4vp-x7gf","basis":"vendor_advisory","notes":"GitHub Advisory Database; CC-BY-4.0. Each advisory links its original attribution. Null normalizes fields.","title":"GHSA-9vw2-f4vp-x7gf","publisher":"GitHub Advisory Database","observed_at":"2026-10-31T21:55:49.621Z"},{"id":"sr-fc18bf9da1ac0f131aa7b18e04d13a4b","url":"https://github.com/advisories/GHSA-9vw2-f4vp-x7gf","basis":"vendor_advisory","notes":"GitHub-origin advisory, CC-BY-4.0; OSV is an aggregate copy, not independent corroboration.","title":"GHSA-9vw2-f4vp-x7gf","publisher":"GitHub Advisory Database via OSV","observed_at":"2026-10-31T21:42:10.691Z"},{"id":"sr-250e3d055ecd32ebbc1764420365005e","url":"https://www.first.org/epss/data.html","basis":"official_catalog","notes":"FIRST EPSS; probability of exploitation in the next 30 days, not local compromise. Dataset date/model retained; FIRST services terms apply.","title":"CVE-2026-119193","publisher":"FIRST EPSS","observed_at":"2026-11-02T20:15:58.845Z"}],"affected_context":[{"certainty":"source_listed","source_ids":["sr-7bf00848bc9b69c01b23ed626404855b"],"technology":"phpunit/phpunit","known_exclusions":[],"conditions_summary":"### Summary\n\nWhen PHPT tests are run with code coverage, PHPUnit 13.4.0 to 13.4.3 writes the code of each PHPT test to a directory with a fixed name below the operating system's path used for temporary files, for instance `/tmp/phpunit-phpt` on Linux, and executes it from there. PHPUnit uses this directory even when it was created by another user.\n\nOn a system where the path used for temporary files is shared between users, another local user can create this directory before the developer runs PHPUnit, replace the code of a PHPT test before it is executed, and thereby execute arbitrary code with the privileges of the developer. The test still passes and the code coverage report is complete, so the attack is not visible.\n\nThe impact is full code execution as the user who runs PHPUnit. The likelihood is low: the attacker needs an account on the same system and must create the directory before the developer runs PHPT tests with code coverage. macOS and Windows use per-user temporary directories by default and are not affected in their default configuration. PHPUnit 12.5 and earlier are not affected.\n\n### Details\n\nWhen code coverage is collected for a PHPT test, PHPUnit writes two temp","public_affected_ranges":[">= 13.4.0, < 13.4.4"]},{"certainty":"source_listed","source_ids":["sr-fc18bf9da1ac0f131aa7b18e04d13a4b"],"technology":"phpunit/phpunit","known_exclusions":[],"conditions_summary":"### Summary\n\nWhen PHPT tests are run with code coverage, PHPUnit 13.4.0 to 13.4.3 writes the code of each PHPT test to a directory with a fixed name below the operating system's path used for temporary files, for instance `/tmp/phpunit-phpt` on Linux, and executes it from there. PHPUnit uses this directory even when it was created by another user.\n\nOn a system where the path used for temporary files is shared between users, another local user can create this directory before the developer runs PHPUnit, replace the code of a PHPT test before it is executed, and thereby execute arbitrary code with the privileges of the developer. The test still passes and the code coverage report is complete, so the attack is not visible.\n\nThe impact is full code execution as the user who runs PHPUnit. The likelihood is low: the attacker needs an account on the same system and must create the directory before the developer runs PHPT tests with code coverage. macOS and Windows use per-user temporary directories by default and are not affected in their default configuration. PHPUnit 12.5 and earlier are not affected.\n\n### Details\n\nWhen code coverage is collected for a PHPT test, PHPUnit writes two temp","public_affected_ranges":["ECOSYSTEM: introduced 13.4.0; fixed 13.4.4"]}],"null_published_at":"2026-11-08T19:53:33.655Z","source_updated_at":"2026-10-30T23:01:23.000Z","source_disclosed_at":"2026-10-30T23:01:21.000Z","is_synthetic_fixture":false,"null_last_reviewed_at":null,"public_change_summary":"Dated EPSS estimate updated; this is not a new disclosure or proof of exploitation.","null_first_observed_at":"2026-10-31T21:42:10.691Z"},{"id":"NVI-00008257","kind":"vulnerability","title":"PHPUnit vulnerable to code execution by other local users via shared temporary directory in PHPT code coverage handling","revision":3,"unknowns":["Customer inventory, deployment, reachability and exploitation have not been inspected."],"lifecycle":"active","identifiers":["GHSA-9vw2-f4vp-x7gf","CVE-2026-119193"],"plain_summary":"GitHub lists this reviewed advisory for phpunit/phpunit. Published version ranges and source prerequisites are shown below; this is not an inspection of a visitor’s application.","review_status":"source_listed","control_topics":[],"public_actions":[{"summary":"Identify the exact component and deployed version, examine the linked publisher’s conditions, and retain evidence of any mitigation.","source_ids":["sr-025d8c4deb9e73162c9d798143de29e5"],"action_type":"investigate","limitations":"Confirm current vendor support, compatibility and deployment evidence. This report has not tested a fix in your system.","current_supported_target":null},{"summary":"The original advisory lists fixed boundaries 13.4.4 for phpunit/phpunit. Confirm the publisher’s latest guidance.","source_ids":["sr-fc18bf9da1ac0f131aa7b18e04d13a4b"],"action_type":"vendor_patch","limitations":"Confirm current vendor support, compatibility and deployment evidence. This report has not tested a fix in your system.","current_supported_target":null}],"schema_version":"1.1.0","source_metrics":[{"kind":"EPSS","as_of":"2026-10-31T12:00:27.000Z","value":"0.113%","meaning":"FIRST EPSS model v2026.06.15; exploitation probability over 30 days, percentile 0.01418. Missing scores are unknown.","source_id":"sr-025d8c4deb9e73162c9d798143de29e5"}],"why_it_matters":"Published affected context helps an owner decide what evidence to gather. This report has not examined your application.","related_sources":[{"id":"sr-7bf00848bc9b69c01b23ed626404855b","url":"https://github.com/advisories/GHSA-9vw2-f4vp-x7gf","basis":"vendor_advisory","notes":"GitHub Advisory Database; CC-BY-4.0. Each advisory links its original attribution. Null normalizes fields.","title":"GHSA-9vw2-f4vp-x7gf","publisher":"GitHub Advisory Database","observed_at":"2026-10-31T21:55:49.621Z"},{"id":"sr-fc18bf9da1ac0f131aa7b18e04d13a4b","url":"https://github.com/advisories/GHSA-9vw2-f4vp-x7gf","basis":"vendor_advisory","notes":"GitHub-origin advisory, CC-BY-4.0; OSV is an aggregate copy, not independent corroboration.","title":"GHSA-9vw2-f4vp-x7gf","publisher":"GitHub Advisory Database via OSV","observed_at":"2026-10-31T21:42:10.691Z"},{"id":"sr-025d8c4deb9e73162c9d798143de29e5","url":"https://www.first.org/epss/data.html","basis":"official_catalog","notes":"FIRST EPSS; probability of exploitation in the next 30 days, not local compromise. Dataset date/model retained; FIRST services terms apply.","title":"CVE-2026-119193","publisher":"FIRST EPSS","observed_at":"2026-10-31T22:06:15.375Z"}],"affected_context":[{"certainty":"source_listed","source_ids":["sr-7bf00848bc9b69c01b23ed626404855b"],"technology":"phpunit/phpunit","known_exclusions":[],"conditions_summary":"### Summary\n\nWhen PHPT tests are run with code coverage, PHPUnit 13.4.0 to 13.4.3 writes the code of each PHPT test to a directory with a fixed name below the operating system's path used for temporary files, for instance `/tmp/phpunit-phpt` on Linux, and executes it from there. PHPUnit uses this directory even when it was created by another user.\n\nOn a system where the path used for temporary files is shared between users, another local user can create this directory before the developer runs PHPUnit, replace the code of a PHPT test before it is executed, and thereby execute arbitrary code with the privileges of the developer. The test still passes and the code coverage report is complete, so the attack is not visible.\n\nThe impact is full code execution as the user who runs PHPUnit. The likelihood is low: the attacker needs an account on the same system and must create the directory before the developer runs PHPT tests with code coverage. macOS and Windows use per-user temporary directories by default and are not affected in their default configuration. PHPUnit 12.5 and earlier are not affected.\n\n### Details\n\nWhen code coverage is collected for a PHPT test, PHPUnit writes two temp","public_affected_ranges":[">= 13.4.0, < 13.4.4"]},{"certainty":"source_listed","source_ids":["sr-fc18bf9da1ac0f131aa7b18e04d13a4b"],"technology":"phpunit/phpunit","known_exclusions":[],"conditions_summary":"### Summary\n\nWhen PHPT tests are run with code coverage, PHPUnit 13.4.0 to 13.4.3 writes the code of each PHPT test to a directory with a fixed name below the operating system's path used for temporary files, for instance `/tmp/phpunit-phpt` on Linux, and executes it from there. PHPUnit uses this directory even when it was created by another user.\n\nOn a system where the path used for temporary files is shared between users, another local user can create this directory before the developer runs PHPUnit, replace the code of a PHPT test before it is executed, and thereby execute arbitrary code with the privileges of the developer. The test still passes and the code coverage report is complete, so the attack is not visible.\n\nThe impact is full code execution as the user who runs PHPUnit. The likelihood is low: the attacker needs an account on the same system and must create the directory before the developer runs PHPT tests with code coverage. macOS and Windows use per-user temporary directories by default and are not affected in their default configuration. PHPUnit 12.5 and earlier are not affected.\n\n### Details\n\nWhen code coverage is collected for a PHPT test, PHPUnit writes two temp","public_affected_ranges":["ECOSYSTEM: introduced 13.4.0; fixed 13.4.4"]}],"null_published_at":"2026-10-31T22:13:44.214Z","source_updated_at":"2026-10-30T23:01:23.000Z","source_disclosed_at":"2026-10-30T23:01:21.000Z","is_synthetic_fixture":false,"null_last_reviewed_at":null,"public_change_summary":"Dated EPSS estimate updated; this is not a new disclosure or proof of exploitation.","null_first_observed_at":"2026-10-31T21:42:10.691Z"}],"next_cursor":null,"snapshot_revision":"42594"}