Description
phar_tar_number() parses the octal size field of a TAR header into a uint32_t with no overflow check. The field is 11 octal digits wide and holds values up to 0x1FFFFFFFF, so a size above 0xFFFFFFFF silently wraps. The parser then skips the wrong number of data blocks and interprets attacker-controlled file content as the next TAR header, which lets a crafted archive inject entries that PharData reports and extracts as if they were genuine.
Metrics
CVSS 3.1 3.3/10
CVSS:3.1/AV:L/AC:L/PR:L/UI:N/S:U/C:N/I:L/A:NWeakness enumeration
Affected software
| Vendor | Product | Versions |
|---|---|---|
| PHP Group | PHP | >= 8.2.*, < 8.2.34; >= 8.3.*, < 8.3.35; >= 8.4.*, < 8.4.26; >= 8.5.*, < 8.5.11 |
References
- https://github.com/php/php-src/security/advisories/GHSA-j3wh-g957-2m85Vendor Advisory, Exploit
- https://github.com/php/php-src/security/advisories/GHSA-j3wh-g957-2m85Vendor Advisory, Exploit
Timeline
- Published
- Sep 25, 2026
- Last modified
- Oct 23, 2026
- NVD status
- Analyzed