---
id: "CVE-2026-77157"
kind: "vulnerability"
aliases: ["CVE-2026-77157"]
title: "Checkmarx ast-cli: unverified helper download lets substituted binaries run"
severity: "medium"
cvss: 6.4
epss: 0.00143
exploited: false
status: "open"
category: "package"
products: []
ecosystems: []
tags: ["ast-cli", "checkmarx", "ci", "developer-machines", "jetbrains", "package", "vscode"]
not_affected_if: ["fixed-version", "no-ide-extensions", "no-sca-realtime"]
published_at: "2026-10-22T18:17:29+00:00"
first_seen_at: "2026-10-23T21:57:31+00:00"
updated_at: "2026-10-25T03:59:17+00:00"
sources: [{"source": "nvd", "url": "https://nvd.nist.gov/vuln/detail/CVE-2026-77157", "first_seen_at": "2026-10-23T21:57:31+00:00"}, {"source": "epss", "url": "https://api.first.org/data/v1/epss?cve=CVE-2026-77157", "first_seen_at": "2026-10-24T07:15:51+00:00"}]
---

# Checkmarx ast-cli: unverified helper download lets substituted binaries run

ast-cli downloads the Vorpal ASCA engine and SCA Resolver helper binaries from download.checkmarx.com during auto-update and does not check a checksum before extracting and running them. An attacker who can substitute the served archive could get arbitrary code run on developer machines or CI pipelines that invoke ASCA or cx scan sca-realtime.

_Summary, check and fix written by a model from the sources; labelled as such._

## How to check

- Run `cx version` or `ast-cli version` and compare against the fixed release; the sources do not name the fixed version.
- unknown for affected version range.

## Fix

- Upgrade ast-cli to a release that verifies the download against its published SHA-256 checksum before extraction; the sources do not name the version.
- unknown for whether any credential rotation is needed.

## Timeline

- 2026-10-23T21:57:31+00:00 nvd https://nvd.nist.gov/vuln/detail/CVE-2026-77157
- 2026-10-24T07:15:51+00:00 epss https://api.first.org/data/v1/epss?cve=CVE-2026-77157

## From the sources

ast-cli downloads two helper binaries, the Vorpal ASCA real-time engine and the SCA Resolver, from "download.checkmarx.com" as part of its auto-update flow, triggered by the Checkmarx’s "VSCode/JetBrains" extensions and by cx scan "sca-realtime".



Prior to the fix, the downloaded archive was not verified against a checksum before extraction and execution. An attacker able to substitute the served archive could deliver an arbitrary binary that ast-cli would extract and execute the contents of the archive, since no integrity check was performed on the download.



Successful exploitation requires compromising "download.checkmarx.com" and replacing the served archive with one containing an attacker-controlled binary. If the served archive had been replaced that way, any developer machine or CI pipeline invoking ASCA (via Checkmarx's VSCode/JetBrains extensions) or cx scan "sca-realtime" on an affected version would have extracted and executed that binary in place of the intended download.



The download is now verified against a published SHA-256 checksum before extraction.

---

_Free to read at a human pace. An API with keys and an MCP server are in preparation; early access: hello@infrastack.ai_
