apko affected by unbounded resource consumption in expandapk.Split on attacker-controlled .apk streams
Moderate severity
GitHub Reviewed
Published
Feb 3, 2026
in
chainguard-dev/apko
•
Updated Feb 23, 2026
Description
Published to the GitHub Advisory Database
Feb 3, 2026
Reviewed
Feb 3, 2026
Published by the National Vulnerability Database
Feb 4, 2026
Last updated
Feb 23, 2026
expandapk.Splitdrains the first gzip stream of an APK archive viaio.Copy(io.Discard, gzi)without explicit bounds. With an attacker-controlled input stream, this can force large gzip inflation work and lead to resource exhaustion (availability impact).The
Splitfunction reads the first tar header, then drains the remainder of the gzip stream by reading from the gzip reader directly without any maximum uncompressed byte limit or inflate-ratio cap. A caller that parses attacker-controlled APK streams may be forced to spend excessive CPU time inflating gzip data, leading to timeouts or process slowdown.Fix: Fixed with 2be3903, Released in v1.1.0.
Acknowledgements
apko thanks Oleh Konko from 1seal for discovering and reporting this issue.
References