A request smuggling vulnerability exists in libsoup's HTTP/1 header parsing logic. The soupmessageheadersappendcommon() function in libsoup/soup-message-headers.c unconditionally appends each header value without validating for duplicate or conflicting Content-Length fields. This allows an attacker to send HTTP requests containing multiple Content-Length headers with differing values.
{
"binaries": [
{
"binary_name": "gir1.2-soup-2.4",
"binary_version": "2.74.2-3ubuntu0.6"
},
{
"binary_name": "libsoup-gnome2.4-1",
"binary_version": "2.74.2-3ubuntu0.6"
},
{
"binary_name": "libsoup2.4-1",
"binary_version": "2.74.2-3ubuntu0.6"
},
{
"binary_name": "libsoup2.4-common",
"binary_version": "2.74.2-3ubuntu0.6"
},
{
"binary_name": "libsoup2.4-tests",
"binary_version": "2.74.2-3ubuntu0.6"
}
]
}{
"binaries": [
{
"binary_name": "gir1.2-soup-2.4",
"binary_version": "2.74.3-6ubuntu1.6"
},
{
"binary_name": "libsoup-2.4-1",
"binary_version": "2.74.3-6ubuntu1.6"
},
{
"binary_name": "libsoup-gnome-2.4-1",
"binary_version": "2.74.3-6ubuntu1.6"
},
{
"binary_name": "libsoup2.4-common",
"binary_version": "2.74.3-6ubuntu1.6"
},
{
"binary_name": "libsoup2.4-tests",
"binary_version": "2.74.3-6ubuntu1.6"
}
]
}{
"binaries": [
{
"binary_name": "gir1.2-soup-3.0",
"binary_version": "3.4.4-5ubuntu0.7"
},
{
"binary_name": "libsoup-3.0-0",
"binary_version": "3.4.4-5ubuntu0.7"
},
{
"binary_name": "libsoup-3.0-common",
"binary_version": "3.4.4-5ubuntu0.7"
},
{
"binary_name": "libsoup-3.0-tests",
"binary_version": "3.4.4-5ubuntu0.7"
}
]
}{
"binaries": [
{
"binary_name": "gir1.2-soup-2.4",
"binary_version": "2.74.3-10.1ubuntu4"
},
{
"binary_name": "libsoup-2.4-1",
"binary_version": "2.74.3-10.1ubuntu4"
},
{
"binary_name": "libsoup-gnome-2.4-1",
"binary_version": "2.74.3-10.1ubuntu4"
},
{
"binary_name": "libsoup2.4-common",
"binary_version": "2.74.3-10.1ubuntu4"
},
{
"binary_name": "libsoup2.4-tests",
"binary_version": "2.74.3-10.1ubuntu4"
}
]
}{
"binaries": [
{
"binary_name": "gir1.2-soup-3.0",
"binary_version": "3.6.5-4ubuntu0.2"
},
{
"binary_name": "libsoup-3.0-0",
"binary_version": "3.6.5-4ubuntu0.2"
},
{
"binary_name": "libsoup-3.0-common",
"binary_version": "3.6.5-4ubuntu0.2"
},
{
"binary_name": "libsoup-3.0-tests",
"binary_version": "3.6.5-4ubuntu0.2"
}
]
}{
"binaries": [
{
"binary_name": "gir1.2-soup-2.4",
"binary_version": "2.74.3-10.1ubuntu5"
},
{
"binary_name": "libsoup-2.4-1",
"binary_version": "2.74.3-10.1ubuntu5"
},
{
"binary_name": "libsoup-gnome-2.4-1",
"binary_version": "2.74.3-10.1ubuntu5"
},
{
"binary_name": "libsoup2.4-common",
"binary_version": "2.74.3-10.1ubuntu5"
},
{
"binary_name": "libsoup2.4-tests",
"binary_version": "2.74.3-10.1ubuntu5"
}
]
}{
"binaries": [
{
"binary_name": "gir1.2-soup-3.0",
"binary_version": "3.6.6-1"
},
{
"binary_name": "libsoup-3.0-0",
"binary_version": "3.6.6-1"
},
{
"binary_name": "libsoup-3.0-common",
"binary_version": "3.6.6-1"
},
{
"binary_name": "libsoup-3.0-tests",
"binary_version": "3.6.6-1"
}
]
}{
"binaries": [
{
"binary_name": "gir1.2-soup-2.4",
"binary_version": "2.70.0-1ubuntu0.5+esm1"
},
{
"binary_name": "libsoup-gnome2.4-1",
"binary_version": "2.70.0-1ubuntu0.5+esm1"
},
{
"binary_name": "libsoup2.4-1",
"binary_version": "2.70.0-1ubuntu0.5+esm1"
},
{
"binary_name": "libsoup2.4-tests",
"binary_version": "2.70.0-1ubuntu0.5+esm1"
}
]
}{
"binaries": [
{
"binary_name": "gir1.2-soup-3.0",
"binary_version": "3.0.7-0ubuntu1+esm7"
},
{
"binary_name": "libsoup-3.0-0",
"binary_version": "3.0.7-0ubuntu1+esm7"
},
{
"binary_name": "libsoup-3.0-common",
"binary_version": "3.0.7-0ubuntu1+esm7"
},
{
"binary_name": "libsoup-3.0-tests",
"binary_version": "3.0.7-0ubuntu1+esm7"
}
]
}