static-delta: Add resource limits for LZMA decompression
authorJoseph Marrero Corchado <jmarrero@redhat.com>
Tue, 28 Jul 2026 18:15:56 +0000 (14:15 -0400)
committerJoseph Marrero Corchado <jmarrero@redhat.com>
Tue, 28 Jul 2026 18:15:56 +0000 (14:15 -0400)
commit7d1c30b2d73caf80ae09e571b4e844afe3610fbc
treeccdbaa73587399f2d82d611d1b7abfb04b1c6009
parentae08c555201ec382ed8ae4fc118e7a714cbb32bb
static-delta: Add resource limits for LZMA decompression

A malicious repository can serve crafted static delta content that
exhausts client memory and disk during ostree pull before checksum
validation completes.

Cap the LZMA decoder memory to 100 MiB (matching RPM's default) and
bound decompressed delta part output to 512 MiB. The size limit is
enforced on both compressed and uncompressed code paths.

Closes: RHEL-189208
Makefile-tests.am
src/libostree/ostree-lzma-decompressor.c
src/libostree/ostree-repo-static-delta-core.c
src/libostree/ostree-repo-static-delta-private.h
src/libotutil/ot-fs-utils.c
src/libotutil/ot-fs-utils.h
tests/test-lzma.c