Apport does not properly handle crashes originating from a PID namespace allowing local users to create certain files as root which an attacker could leverage to perform a denial of service via resource exhaustion, possibly gain root privileges, or escape from containers. The issamens() function returns True when /proc/<global pid>/ does not exist in order to indicate that the crash should be handled in the global namespace rather than inside of a container. However, the portion of the data/apport code that decides whether or not to forward a crash to a container does not always replace sys.argv[1] with the value stored in the host_pid variable when /proc/<global pid>/ does not exist which results in the container pid being used in the global namespace. This flaw affects versions 2.20.8-0ubuntu4 through 2.20.9-0ubuntu7, 2.20.7-0ubuntu3.7, 2.20.7-0ubuntu3.8, 2.20.1-0ubuntu2.15 through 2.20.1-0ubuntu2.17, and 2.14.1-0ubuntu3.28.
{
"availability": "No subscription required",
"binaries": [
{
"binary_version": "2.14.1-0ubuntu3.29",
"binary_name": "apport"
},
{
"binary_version": "2.14.1-0ubuntu3.29",
"binary_name": "apport-gtk"
},
{
"binary_version": "2.14.1-0ubuntu3.29",
"binary_name": "apport-kde"
},
{
"binary_version": "2.14.1-0ubuntu3.29",
"binary_name": "apport-noui"
},
{
"binary_version": "2.14.1-0ubuntu3.29",
"binary_name": "apport-retrace"
},
{
"binary_version": "2.14.1-0ubuntu3.29",
"binary_name": "apport-valgrind"
},
{
"binary_version": "2.14.1-0ubuntu3.29",
"binary_name": "dh-apport"
},
{
"binary_version": "2.14.1-0ubuntu3.29",
"binary_name": "python-apport"
},
{
"binary_version": "2.14.1-0ubuntu3.29",
"binary_name": "python-problem-report"
},
{
"binary_version": "2.14.1-0ubuntu3.29",
"binary_name": "python3-apport"
},
{
"binary_version": "2.14.1-0ubuntu3.29",
"binary_name": "python3-problem-report"
}
]
}
{
"availability": "No subscription required",
"binaries": [
{
"binary_version": "2.20.1-0ubuntu2.18",
"binary_name": "apport"
},
{
"binary_version": "2.20.1-0ubuntu2.18",
"binary_name": "apport-gtk"
},
{
"binary_version": "2.20.1-0ubuntu2.18",
"binary_name": "apport-kde"
},
{
"binary_version": "2.20.1-0ubuntu2.18",
"binary_name": "apport-noui"
},
{
"binary_version": "2.20.1-0ubuntu2.18",
"binary_name": "apport-retrace"
},
{
"binary_version": "2.20.1-0ubuntu2.18",
"binary_name": "apport-valgrind"
},
{
"binary_version": "2.20.1-0ubuntu2.18",
"binary_name": "dh-apport"
},
{
"binary_version": "2.20.1-0ubuntu2.18",
"binary_name": "python-apport"
},
{
"binary_version": "2.20.1-0ubuntu2.18",
"binary_name": "python-problem-report"
},
{
"binary_version": "2.20.1-0ubuntu2.18",
"binary_name": "python3-apport"
},
{
"binary_version": "2.20.1-0ubuntu2.18",
"binary_name": "python3-problem-report"
}
]
}
{
"availability": "No subscription required",
"binaries": [
{
"binary_version": "2.20.9-0ubuntu7.1",
"binary_name": "apport"
},
{
"binary_version": "2.20.9-0ubuntu7.1",
"binary_name": "apport-gtk"
},
{
"binary_version": "2.20.9-0ubuntu7.1",
"binary_name": "apport-kde"
},
{
"binary_version": "2.20.9-0ubuntu7.1",
"binary_name": "apport-noui"
},
{
"binary_version": "2.20.9-0ubuntu7.1",
"binary_name": "apport-retrace"
},
{
"binary_version": "2.20.9-0ubuntu7.1",
"binary_name": "apport-valgrind"
},
{
"binary_version": "2.20.9-0ubuntu7.1",
"binary_name": "dh-apport"
},
{
"binary_version": "2.20.9-0ubuntu7.1",
"binary_name": "python-apport"
},
{
"binary_version": "2.20.9-0ubuntu7.1",
"binary_name": "python-problem-report"
},
{
"binary_version": "2.20.9-0ubuntu7.1",
"binary_name": "python3-apport"
},
{
"binary_version": "2.20.9-0ubuntu7.1",
"binary_name": "python3-problem-report"
}
]
}