In the Linux kernel, the following vulnerability has been resolved:s390/decompressor: specify __decompress() buf len to avoid overflowHistorically calls to __decompress() didn't specify "out_len" parameteron many architectures including s390, expecting that no writes beyonduncompressed kernel image are performed. This has changed since commit2aa14b1ab2c4 ("zstd: import usptream v1.5.2") which includes zstd librarycommit 6a7ede3dfccb ("Reduce size of dctx by reutilizing dst buffer(#2751)"). Now zstd decompression code might store literal buffer inthe unwritten portion of the destination buffer. Since "out_len" isnot set, it is considered to be unlimited and hence free to use foroptimization needs. On s390 this might corrupt initrd or ipl reportwhich are often placed right after the decompressor buffer. Luckily thesize of uncompressed kernel image is already known to the decompressor,so to avoid the problem simply specify it in the "out_len" parameter.
No PoCs from references.
- https://github.com/fkie-cad/nvd-json-data-feeds