Cloudanix VulnDB

CVE-2021-43086

Critical · 9.8

CVSS

9.8

EPSS

1.2%

Published

Feb 28, 2022

CISA due date

—

Cloudanix analysis

Schedule a fix SSVC: Track

A flaw in a texture compression tool can let attackers take over computers that process untrusted image files, so organizations should stop using the affected version right away.

Exploit Available
Exploitation
Remote Unauthenticated
Attacker needs
None
Complexity
Low
Impact
Full Compromise
Component
Application
Class
Memory Corruption
Remediation
Upgrade
Effort
Medium
Patch risk
Low

What it actually does

Stack-based buffer overflow in encode_ise() during compress_symbolic_block_for_partition_2planes() when processing input under the -cl compression option, allowing out-of-bounds writes in memory.

Why it matters to the business

Applications or build pipelines that compress texture assets with this encoder can be crashed or have arbitrary code executed if they process attacker-controlled input files, potentially compromising build servers or end-user devices that ship the resulting assets.

How an attack unfolds

An attacker crafts a malicious texture input that triggers the overflow when the encoder runs with the -cl flag; because the flaw is reachable over the network or via automated pipelines, the overflow can be used to overwrite return addresses and achieve code execution without authentication.

How to fix it

Upgrade to a version of the ARM ASTC encoder later than 3.2.0 that contains the fix for the buffer overflow; if no patched release is available, replace the encoder with an alternative ASTC implementation or disable use of the -cl option on untrusted inputs.

How to confirm the fix worked

Confirm the installed astcenc binary reports a version greater than 3.2.0; re-run compression of known-good and known-bad test files to verify absence of crashes or memory errors under AddressSanitizer or similar instrumentation.

Typical attack path

  1. Identify systems or CI jobs that invoke astcenc with the -cl option on untrusted texture files
  2. Supply a specially crafted input file designed to overflow the stack buffer in encode_ise()
  3. Trigger compression via command line, API wrapper, or automated asset pipeline
  4. Leverage the resulting memory corruption to execute attacker-supplied code or crash the process

How to detect it

Search process execution logs and command-line audit trails for invocations of astcenc or astc-encoder containing the -cl flag together with non-standard input file paths; inspect crash dumps or sanitizer reports for stack-buffer-overflow signatures in compress_symbolic_block_for_partition_2planes or encode_ise.

  • astcenc.*-cl
  • compress_symbolic_block_for_partition_2planes
  • encode_ise

What your security team should do

  • Inventory all build systems and developer workstations using astcenc and block execution of version 3.2.0
  • Replace the vulnerable encoder with a maintained alternative or apply vendor patches immediately
  • Add input validation or sandboxing around texture compression steps in CI/CD pipelines
  • Monitor vulnerability feeds for any future ARM ASTC encoder updates

The record

ARM astcenc 3.2.0 is vulnerable to Buffer Overflow. When the compression function of the astc-encoder project with -cl option was used, a stack-buffer-overflow occurred in function encode_ise() in function compress_symbolic_block_for_partition_2planes() in "/Source/astcenc_compress_symbolic.cpp".

Affected packages

Ecosystem Package Introduced Fixed
Ubuntu:22.04:LTS astc-encoder 0 No fix
Ubuntu:24.04:LTS astc-encoder 0 No fix
Ubuntu:24.10 astc-encoder 0 No fix
Ubuntu:25.04 astc-encoder 0 No fix
Ubuntu:25.10 astc-encoder 0 No fix

Related vulnerabilities