Skip to content
Heist/ feed
Back to feed
Medium

ast-cli: Path traversal in tar extraction on Linux/macOS allows writes outside the install directory

Type: advisorySources: OSV

Incomplete validation of extracted archive entry paths in ast-cli's tar extraction logic on Linux and macOS (used when installing the Vorpal ASCA real-time engine and the SCA Resolver) would allow a malicious tar archive containing absolute or traversal path entries to write files outside the install directory. Windows builds were not affected, as the Windows extractor performs this path validation. Exploitation required substituting the archive served at "download.checkmarx.com". An attacker able to compromise that server and replace the archive could write arbitrary, executable files to arbitrary filesystem paths via this path traversal. Extraction now validates that each entry's destination path resolves within the working directory and rejects absolute paths.

Products
Not specified
Affected versions
Not specified
Fixed versions
Not specified
CVEs
CVE-2026-77156
Confirmed fixed CVEs
Not specified
Updated in this feed
8 Nov 2026, 02:27 UTC · Revision 1

Source evidence

ast-cli: Path traversal in tar extraction on Linux/macOS allows writes outside the install directory

core-osv · Original source

Published 22 Oct 2026, 17:44 UTC

Incomplete validation of extracted archive entry paths in ast-cli's tar extraction logic on Linux and macOS (used when installing the Vorpal ASCA real-time engine and the SCA Resolver) would allow a malicious tar archive containing absolute or traversal path entries to write files outside the install directory. Windows builds were not affected, as the Windows extractor performs this path validation. Exploitation required substituting the archive served at "download.checkmarx.com". An attacker able to compromise that server and replace the archive could write arbitrary, executable files to arbitrary filesystem paths via this path traversal. Extraction now validates that each entry's destination path resolves within the working directory and rejects absolute paths.

osv:CVE-2026-77156
Complete source record
{
  "id": "afcc938bbb851326f52c25b1f7202ffbee7dcdab1a98c94ea84f249faf9c06c6",
  "url": "https://osv.dev/vulnerability/CVE-2026-77156",
  "method": "structured",
  "payload": {
    "kind": "advisory",
    "title": "ast-cli: Path traversal in tar extraction on Linux/macOS allows writes outside the install directory",
    "summary": "Incomplete validation of extracted archive entry paths in ast-cli's tar extraction logic on Linux and macOS (used when installing the Vorpal ASCA real-time engine and the SCA Resolver) would allow a malicious tar archive containing absolute or traversal path entries to write files outside the install directory. Windows builds were not affected, as the Windows extractor performs this path validation. Exploitation required substituting the archive served at \"download.checkmarx.com\". An attacker able to compromise that server and replace the archive could write arbitrary, executable files to arbitrary filesystem paths via this path traversal. Extraction now validates that each entry's destination path resolves within the working directory and rejects absolute paths.",
    "evidence": "osv:CVE-2026-77156",
    "products": [],
    "severity": "medium",
    "structured": {
      "id": "CVE-2026-77156",
      "aliases": [
        "CVE-2026-77156",
        "GHSA-9gff-3q53-q75x"
      ],
      "metrics": [
        {
          "type": "CVSS_V4",
          "score": "CVSS:4.0/AV:N/AC:L/AT:N/PR:H/UI:P/VC:N/VI:N/VA:N/SC:H/SI:H/SA:H"
        }
      ],
      "affected": [
        {
          "ranges": [
            {
              "repo": "https://github.com/checkmarx/ast-cli",
              "type": "GIT",
              "events": [
                {
                  "introduced": "0"
                },
                {
                  "fixed": "f933d72a275ba46534e4d621b7afaf0b0479ec4a"
                }
              ],
              "database_specific": {
                "extracted_events": [
                  {
                    "range": [
                      {
                        "introduced": "0"
                      },
                      {
                        "fixed": "2.3.51"
                      }
                    ],
                    "source": "AFFECTED_FIELD",
                    "strategy": "StandardRange"
                  }
                ]
              }
            }
          ],
          "versions": [
            "2.3.51",
            "2.3.48",
            "2.3.47",
            "2.3.46",
            "2.3.45",
            "2.3.44",
            "2.3.43-iac-main-release",
            "2.3.43",
            "2.3.41",
            "2.3.42",
            "standalone-licence-info",
            "2.3.38-standalone-license-enabled",
            "2.3.38",
            "2.3.37",
            "2.3.36-pre-release-check",
            "2.3.36",
            "2.3.35",
            "2.3.34",
            "2.3.33",
            "2.3.32-Remove-filePath-ignore-Final",
            "2.3.32",
            "2.3.31",
            "2.3.31-iac-realtime",
            "2.3.30",
            "2.3.29",
            "2.3.38-iac-realtime",
            "2.3.28",
            "2.3.27-Containers.1",
            "2.3.27-MiryamFoifer-Containers",
            "2.3.30-containers-upgrade",
            "2.3.29-containers-upgrade-01",
            "2.3.29-containers-upgrade",
            "2.3.27-cloud-scan-containers",
            "2.3.27",
            "2.3.26",
            "2.3.25",
            "test-oss",
            "2.3.24",
            "2.3.23-test-oss",
            "2.3.20",
            "2.3.23",
            "2.3.22",
            "2.3.21",
            "2.3.20-remove-ignore-policy",
            "2.3.19",
            "custom-config-file-main",
            "2.3.19-traits",
            "2.3.18",
            "cli-pre-commit",
            "2.3.17",
            "2.3.17-test",
            "test-pre",
            "2.3.16-test",
            "2.3.16",
            "2.3.15",
            "test-sonar",
            "2.3.15-cloudscan",
            "1.1.1-test-sonar",
            "2.3.14",
            "2.4.0-TempCleanup",
            "TempCleanup",
            "2.3.13",
            "2.3.12",
            "2.3.11",
            "2.0.0-nightly",
            "2.3.10",
            "2.2.6-vorpal",
            "2.2.6-check-pre-release",
            "2.2.5",
            "2.2.4",
            "2.2.3",
            "2.2.2",
            "2.2.1",
            "2.2.0",
            "2.1.6",
            "2.1.5",
            "2.1.4",
            "2.1.3",
            "2.1.2",
            "2.1.1",
            "2.1.0",
            "2.0.76",
            "2.0.76-Pre-release",
            "application-association-prerelease",
            "2.0.76-prerelease-2",
            "prerelease-releasefix",
            "try-pre-release-tamar",
            "try-pre-release",
            "2.0.75-pre-tamar",
            "2.0.75-prerelease",
            "2.0.75",
            "2.0.74",
            "2.0.73",
            "2.0.73-prerelease",
            "2.0.72",
            "2.0.72-prerelease",
            "2.0.71",
            "2.0.7-PreRelease",
            "2.0.69",
            "2.0.65",
            "2.0.68",
            "2.0.67",
            "2.0.66",
            "2.0.64-sast-chat",
            "1.0.65",
            "2.0.64",
            "2.0.63",
            "2.0.62",
            "2.0.61",
            "2.0.60",
            "2.0.59",
            "2.0.58",
            "2.0.57",
            "2.0.56",
            "2.0.55",
            "2.0.54",
            "2.0.53",
            "2.0.52",
            "2.0.51",
            "2.0.50",
            "2.0.49",
            "2.0.48",
            "2.0.47",
            "2.0.46",
            "2.0.45",
            "2.0.44",
            "2.0.43",
            "2.0.42",
            "2.0.41",
            "2.0.40",
            "2.0.39",
            "2.0.38",
            "2.0.37",
            "2.0.36",
            "2.0.35",
            "2.0.34",
            "2.0.33",
            "2.0.32",
            "2.0.31",
            "2.0.30",
            "2.0.29",
            "2.0.28",
            "2.0.27",
            "2.0.26",
            "2.0.25",
            "2.0.24",
            "2.0.23",
            "2.0.22",
            "2.0.21",
            "2.0.20",
            "2.0.19",
            "2.0.18",
            "2.0.17",
            "2.0.16",
            "2.0.15",
            "2.0.14",
            "2.0.13",
            "2.0.12",
            "2.0.11",
            "2.0.10",
            "2.0.9",
            "2.0.8",
            "2.0.7",
            "2.0.6",
            "2.0.5",
            "2.0.4",
            "2.0.3",
            "2.0.2",
            "2.0.1",
            "2.0.0",
            "2.0.0-rc.23",
            "2.0.0-rc.22",
            "2.0.0-rc.21",
            "2.0.0-rc.20",
            "2.0.0-rc.19",
            "2.0.0-rc.16",
            "2.0.0-rc.14",
            "2.0.0_RC13",
            "2.0.0_RC12",
            "2.0.0_RC11",
            "2.0.0_RC10",
            "2.0.0_RC9",
            "2.0.0_RC8",
            "2.0.0_RC7",
            "2.0.0_RC6",
            "2.0.0_RC5",
            "2.0.0_RC4",
            "2.0.0_RC2",
            "2.0.0_RC1",
            "1.0.0_RC5",
            "v1.0.0_RC4",
            "v1.0.0_RC3",
            "v1.0.0_RC2",
            "v1.10.0",
            "v1.0.0_RC1",
            "v1.0.0"
          ],
          "database_specific": {
            "source": "https://storage.googleapis.com/cve-osv-conversion/osv-output/CVE-2026-77156.json"
          }
        }
      ],
      "modified": "2026-10-28T02:30:52.757634489Z",
      "provider": "osv",
      "references": [
        "https://golang.org/pkg",
        "https://github.com/CVEProject/cvelistV5/tree/main/cves/2026/77xxx/CVE-2026-77156.json",
        "https://github.com/Checkmarx/ast-cli/security/advisories/GHSA-9gff-3q53-q75x",
        "https://nvd.nist.gov/vuln/detail/CVE-2026-77156",
        "https://github.com/Checkmarx/ast-cli",
        "https://github.com/checkmarx/ast-cli"
      ],
      "provider_metadata": {
        "cwe_ids": [
          "CWE-22"
        ],
        "cna_assigner": "Checkmarx",
        "osv_generated_from": "https://github.com/CVEProject/cvelistV5/tree/main/cves/2026/77xxx/CVE-2026-77156.json"
      }
    },
    "related_cves": [
      {
        "value": "CVE-2026-77156",
        "evidence": "/id"
      }
    ],
    "security_relevant": true,
    "severity_evidence": "/severity/0/score"
  },
  "source_id": "core-osv",
  "document_id": 521784,
  "published_at": "2026-10-22T17:44:34.313+00:00"
}