Skip to content

GHSA-pg7g-xqmr-xpfh on CTRL-OS 26.05

Aliases: GHSA-pg7g-xqmr-xpfh, CVE-2026-70457

Packages: rsync

Status: Plausible

Advisory Information

parse_size_arg() used snprintf()'s return value -- which on truncation is the length the output WOULD have been, not what was written -- as an index into err_buf[]. An oversized --max-size / --min-size / --max-alloc / --bwlimit / --block-size value makes that return value attacker-influenced, producing a two-byte (0x0A, 0x00) write at an attacker-chosen offset in .bss.

These options are forwardable to a daemon by a peer through server_options(), so the value need not come from the local command line. The written bytes are fixed (newline, NUL) and only the offset is controlled, so the demonstrated impact is an out-of-bounds write and corruption of adjacent static state, not useful control of a security-sensitive target.

Fixed by not using the truncation return as an index. A separate integer-overflow defect in the same function -- the size value itself wrapping a signed ssize_t -- is a different issue and is listed under the additional hardening below, not here.


Affected: 3.2.3 through 3.4.4 (the unsafe indexing dates from 2020)

Fixed in: 3.5.0

Reporter: Greg Kroah-Hartman (daemon-protocol fuzzing)

Test: daemon-size-arg-overflow

Updates

2026-08-14 16:57 CEST

Metadata changes:

  • Status for package rsync: “Plausible

2026-08-14 16:55 CEST

Metadata changes:

  • Status for package rsync: “New