github.com/checkmarx/ast-cli: ast-cli: Auto-update downloads are not verified against a checksum before execution
What fixes it
- 2.3.60github.com/checkmarx/ast-cli, goGitHub
go get github.com/checkmarx/ast-cli@v2.3.60
A fixed version on one release line is not the upgrade target for every line. Check your exact version and any vendor backports.
Description
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.
Text from GitHub Advisory Database
Affected versions 3
- github.com/checkmarx/ast-cliaffected: all versions through 2.3.59CVE List
- github.com/checkmarx/ast-cliunaffected: 2.3.60CVE List
- github.com/checkmarx/ast-cli, go<= 2.3.59GitHub