The OCI delta stream parser read sizes as guint64 but passed them to GLib I/O and allocation functions expecting gsize (32 bits on 32-bit systems), causing undersized allocations while subsequent operations use the original 64-bit size, leading to heap buffer overflows. An attacker controlling an OCI registry can craft a delta stream that triggers this during flatpak install/update, potentially achieving code execution on 32-bit systems.
{
"binaries": [
{
"binary_name": "flatpak",
"binary_version": "1.0.9-0ubuntu0.4+esm1"
},
{
"binary_name": "flatpak-tests",
"binary_version": "1.0.9-0ubuntu0.4+esm1"
},
{
"binary_name": "gir1.2-flatpak-1.0",
"binary_version": "1.0.9-0ubuntu0.4+esm1"
},
{
"binary_name": "libflatpak0",
"binary_version": "1.0.9-0ubuntu0.4+esm1"
}
]
}
{
"binaries": [
{
"binary_name": "flatpak",
"binary_version": "1.6.5-0ubuntu0.5+esm1"
},
{
"binary_name": "flatpak-tests",
"binary_version": "1.6.5-0ubuntu0.5+esm1"
},
{
"binary_name": "gir1.2-flatpak-1.0",
"binary_version": "1.6.5-0ubuntu0.5+esm1"
},
{
"binary_name": "libflatpak0",
"binary_version": "1.6.5-0ubuntu0.5+esm1"
}
]
}
{
"binaries": [
{
"binary_name": "flatpak",
"binary_version": "1.12.7-1ubuntu0.1+esm1"
},
{
"binary_name": "flatpak-tests",
"binary_version": "1.12.7-1ubuntu0.1+esm1"
},
{
"binary_name": "gir1.2-flatpak-1.0",
"binary_version": "1.12.7-1ubuntu0.1+esm1"
},
{
"binary_name": "libflatpak0",
"binary_version": "1.12.7-1ubuntu0.1+esm1"
}
]
}
{
"binaries": [
{
"binary_name": "flatpak",
"binary_version": "1.14.6-1ubuntu0.1+esm1"
},
{
"binary_name": "flatpak-tests",
"binary_version": "1.14.6-1ubuntu0.1+esm1"
},
{
"binary_name": "gir1.2-flatpak-1.0",
"binary_version": "1.14.6-1ubuntu0.1+esm1"
},
{
"binary_name": "libflatpak0",
"binary_version": "1.14.6-1ubuntu0.1+esm1"
}
]
}