Skip to content
Heist/ feed
Back to feed
High

PHPCSUtils: Remote code execution via eval() in AbstractArrayDeclarationSniff::getActualArrayKey()

Type: advisorySources: OSV

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 source

Published 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"
}