PHPCSUtils: Remote code execution via eval() in AbstractArrayDeclarationSniff::getActualArrayKey()
PHPCSUtils is a suite of utility functions for use with PHP_CodeSniffer. From 1.0.0-alpha1 until 1.2.3, PHPCSUtils\AbstractSniffs\AbstractArrayDeclarationSniff::getActualArrayKey() evaluates attacker-controlled array-key expressions with eval(), allowing callback-form keys in untrusted PHP code scanned by an extending sniff to execute arbitrary commands on the scanning host. Known reachable paths include Universal.Arrays.DuplicateArrayKey and Universal.Arrays.MixedArrayKeyTypes. This issue is fixed in version 1.2.3.
- Products
- Not specified
- Affected versions
- Not specified
- Fixed versions
- Not specified
- CVEs
- CVE-2026-65954
- Confirmed fixed CVEs
- Not specified
- Updated in this feed
- 8 Nov 2026, 01:36 UTC · Revision 1
Source evidence
PHPCSUtils: Remote code execution via eval() in AbstractArrayDeclarationSniff::getActualArrayKey()
core-osv · Original sourcePublished 12 Oct 2026, 18:51 UTC
PHPCSUtils is a suite of utility functions for use with PHP_CodeSniffer. From 1.0.0-alpha1 until 1.2.3, PHPCSUtils\AbstractSniffs\AbstractArrayDeclarationSniff::getActualArrayKey() evaluates attacker-controlled array-key expressions with eval(), allowing callback-form keys in untrusted PHP code scanned by an extending sniff to execute arbitrary commands on the scanning host. Known reachable paths include Universal.Arrays.DuplicateArrayKey and Universal.Arrays.MixedArrayKeyTypes. This issue is fixed in version 1.2.3.
osv:CVE-2026-65954
Complete source record
{
"id": "4823976597000504cd99678ebc8c53bc8ee74a63035c1ed6314a579476aa0fdb",
"url": "https://osv.dev/vulnerability/CVE-2026-65954",
"method": "structured",
"payload": {
"kind": "advisory",
"title": "PHPCSUtils: Remote code execution via eval() in AbstractArrayDeclarationSniff::getActualArrayKey()",
"summary": "PHPCSUtils is a suite of utility functions for use with PHP_CodeSniffer. From 1.0.0-alpha1 until 1.2.3, PHPCSUtils\\AbstractSniffs\\AbstractArrayDeclarationSniff::getActualArrayKey() evaluates attacker-controlled array-key expressions with eval(), allowing callback-form keys in untrusted PHP code scanned by an extending sniff to execute arbitrary commands on the scanning host. Known reachable paths include Universal.Arrays.DuplicateArrayKey and Universal.Arrays.MixedArrayKeyTypes. This issue is fixed in version 1.2.3.",
"evidence": "osv:CVE-2026-65954",
"products": [],
"severity": "high",
"structured": {
"id": "CVE-2026-65954",
"aliases": [
"CVE-2026-65954",
"GHSA-r6hr-vr92-vv28"
],
"metrics": [
{
"type": "CVSS_V3",
"score": "CVSS:3.1/AV:L/AC:L/PR:N/UI:R/S:C/C:H/I:H/A:H"
}
],
"affected": [
{
"ranges": [
{
"repo": "https://github.com/phpcsstandards/phpcsutils",
"type": "GIT",
"events": [
{
"introduced": "17c369202671ed42cfb9e653c3a865a68595fac6"
},
{
"fixed": "e8648633ff5b8219b1b3e6346ce85abfc30f1429"
},
{
"fixed": "5f35d9408c54d7b529501f3c688b6eae562aea1f"
}
],
"database_specific": {
"extracted_events": [
{
"range": [
{
"introduced": "1.0.0-alpha1"
},
{
"last_affected": "1.2.2"
}
],
"source": "AFFECTED_FIELD",
"strategy": "StringRangeExpression"
},
{
"range": [
{
"fixed": "e8648633ff5b8219b1b3e6346ce85abfc30f1429"
}
],
"source": "REFERENCES_COMMIT"
},
{
"range": [
{
"fixed": "5f35d9408c54d7b529501f3c688b6eae562aea1f"
}
],
"source": "REFERENCES_TAG",
"original_tag": "1.2.3"
}
]
}
}
],
"versions": [
"1.2.2",
"1.2.1",
"1.2.0",
"1.1.3",
"1.1.2",
"1.1.1",
"1.1.0",
"1.0.12",
"1.0.11",
"1.0.10",
"1.0.9",
"1.0.8",
"1.0.7",
"1.0.6",
"1.0.5",
"1.0.4",
"1.0.3",
"1.0.2",
"1.0.1",
"1.0.0",
"1.0.0-rc1",
"1.0.0-alpha4",
"1.0.0-alpha3",
"1.0.0-alpha2",
"1.0.0-alpha1"
],
"database_specific": {
"source": "https://storage.googleapis.com/cve-osv-conversion/osv-output/CVE-2026-65954.json"
}
}
],
"modified": "2026-10-28T02:30:52.508581852Z",
"provider": "osv",
"references": [
"https://github.com/PHPCSStandards/PHPCSUtils/releases/tag/1.2.3",
"https://github.com/CVEProject/cvelistV5/tree/main/cves/2026/65xxx/CVE-2026-65954.json",
"https://github.com/PHPCSStandards/PHPCSUtils/security/advisories/GHSA-r6hr-vr92-vv28",
"https://nvd.nist.gov/vuln/detail/CVE-2026-65954",
"https://github.com/PHPCSStandards/PHPCSUtils/commit/e8648633ff5b8219b1b3e6346ce85abfc30f1429"
],
"provider_metadata": {
"cwe_ids": [
"CWE-95"
],
"cna_assigner": "GitHub_M",
"osv_generated_from": "https://github.com/CVEProject/cvelistV5/tree/main/cves/2026/65xxx/CVE-2026-65954.json"
}
},
"related_cves": [
{
"value": "CVE-2026-65954",
"evidence": "/id"
}
],
"security_relevant": true,
"severity_evidence": "/severity/0/score"
},
"source_id": "core-osv",
"document_id": 521408,
"published_at": "2026-10-12T18:51:01.522+00:00"
}