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.
{
"cna_assigner": "php",
"cwe_ids": [
"CWE-190"
],
"osv_generated_from": "https://github.com/CVEProject/cvelistV5/tree/main/cves/2026/6xxx/CVE-2026-6103.json",
"unresolved_ranges": [
{
"extracted_events": [
{
"range": [
{
"introduced": "8.2.*"
},
{
"fixed": "8.2.34"
},
{
"introduced": "8.3.*"
},
{
"fixed": "8.3.35"
},
{
"introduced": "8.4.*"
},
{
"fixed": "8.4.26"
},
{
"introduced": "8.5.*"
},
{
"fixed": "8.5.11"
}
],
"source": "AFFECTED_FIELD",
"strategy": "StandardRange"
}
]
}
]
}