Race condition in Canonical apport up to and including 2.32.0 allows a local attacker to leak sensitive information via PID-reuse by leveraging namespaces. When handling a crash, the function _check_global_pid_and_forward, which detects if the crashing process resided in a container, was being called before consistency_checks, which attempts to detect if the crashing process had been replaced. Because of this, if a process crashed and was quickly replaced with a containerized one, apport could be made to forward the core dump to the container, potentially leaking sensitive information. consistency_checks is now being called before _check_global_pid_and_forward. Additionally, given that the PID-reuse race condition cannot be reliably detected from userspace alone, crashes are only forwarded to containers if the kernel provided a pidfd, or if the crashing process was unprivileged (i.e., if dump mode == 1).
{
"availability": "Available with Ubuntu Pro (Infra-only): https://ubuntu.com/pro",
"binaries": [
{
"binary_name": "apport",
"binary_version": "2.20.1-0ubuntu2.30+esm5"
},
{
"binary_name": "apport-gtk",
"binary_version": "2.20.1-0ubuntu2.30+esm5"
},
{
"binary_name": "apport-kde",
"binary_version": "2.20.1-0ubuntu2.30+esm5"
},
{
"binary_name": "apport-noui",
"binary_version": "2.20.1-0ubuntu2.30+esm5"
},
{
"binary_name": "apport-retrace",
"binary_version": "2.20.1-0ubuntu2.30+esm5"
},
{
"binary_name": "apport-valgrind",
"binary_version": "2.20.1-0ubuntu2.30+esm5"
},
{
"binary_name": "dh-apport",
"binary_version": "2.20.1-0ubuntu2.30+esm5"
},
{
"binary_name": "python-apport",
"binary_version": "2.20.1-0ubuntu2.30+esm5"
},
{
"binary_name": "python-problem-report",
"binary_version": "2.20.1-0ubuntu2.30+esm5"
},
{
"binary_name": "python3-apport",
"binary_version": "2.20.1-0ubuntu2.30+esm5"
},
{
"binary_name": "python3-problem-report",
"binary_version": "2.20.1-0ubuntu2.30+esm5"
}
]
}
{
"availability": "Available with Ubuntu Pro (Infra-only): https://ubuntu.com/pro",
"binaries": [
{
"binary_name": "apport",
"binary_version": "2.20.9-0ubuntu7.29+esm1"
},
{
"binary_name": "apport-gtk",
"binary_version": "2.20.9-0ubuntu7.29+esm1"
},
{
"binary_name": "apport-kde",
"binary_version": "2.20.9-0ubuntu7.29+esm1"
},
{
"binary_name": "apport-noui",
"binary_version": "2.20.9-0ubuntu7.29+esm1"
},
{
"binary_name": "apport-retrace",
"binary_version": "2.20.9-0ubuntu7.29+esm1"
},
{
"binary_name": "apport-valgrind",
"binary_version": "2.20.9-0ubuntu7.29+esm1"
},
{
"binary_name": "dh-apport",
"binary_version": "2.20.9-0ubuntu7.29+esm1"
},
{
"binary_name": "python-apport",
"binary_version": "2.20.9-0ubuntu7.29+esm1"
},
{
"binary_name": "python-problem-report",
"binary_version": "2.20.9-0ubuntu7.29+esm1"
},
{
"binary_name": "python3-apport",
"binary_version": "2.20.9-0ubuntu7.29+esm1"
},
{
"binary_name": "python3-problem-report",
"binary_version": "2.20.9-0ubuntu7.29+esm1"
}
]
}
{
"availability": "No subscription required",
"binaries": [
{
"binary_name": "apport",
"binary_version": "2.20.11-0ubuntu27.28"
},
{
"binary_name": "apport-gtk",
"binary_version": "2.20.11-0ubuntu27.28"
},
{
"binary_name": "apport-kde",
"binary_version": "2.20.11-0ubuntu27.28"
},
{
"binary_name": "apport-noui",
"binary_version": "2.20.11-0ubuntu27.28"
},
{
"binary_name": "apport-retrace",
"binary_version": "2.20.11-0ubuntu27.28"
},
{
"binary_name": "apport-valgrind",
"binary_version": "2.20.11-0ubuntu27.28"
},
{
"binary_name": "dh-apport",
"binary_version": "2.20.11-0ubuntu27.28"
},
{
"binary_name": "python3-apport",
"binary_version": "2.20.11-0ubuntu27.28"
},
{
"binary_name": "python3-problem-report",
"binary_version": "2.20.11-0ubuntu27.28"
}
]
}
{
"availability": "No subscription required",
"binaries": [
{
"binary_name": "apport",
"binary_version": "2.20.11-0ubuntu82.7"
},
{
"binary_name": "apport-gtk",
"binary_version": "2.20.11-0ubuntu82.7"
},
{
"binary_name": "apport-kde",
"binary_version": "2.20.11-0ubuntu82.7"
},
{
"binary_name": "apport-noui",
"binary_version": "2.20.11-0ubuntu82.7"
},
{
"binary_name": "apport-retrace",
"binary_version": "2.20.11-0ubuntu82.7"
},
{
"binary_name": "apport-valgrind",
"binary_version": "2.20.11-0ubuntu82.7"
},
{
"binary_name": "dh-apport",
"binary_version": "2.20.11-0ubuntu82.7"
},
{
"binary_name": "python3-apport",
"binary_version": "2.20.11-0ubuntu82.7"
},
{
"binary_name": "python3-problem-report",
"binary_version": "2.20.11-0ubuntu82.7"
}
]
}
{
"availability": "No subscription required",
"binaries": [
{
"binary_name": "apport",
"binary_version": "2.28.1-0ubuntu3.6"
},
{
"binary_name": "apport-core-dump-handler",
"binary_version": "2.28.1-0ubuntu3.6"
},
{
"binary_name": "apport-gtk",
"binary_version": "2.28.1-0ubuntu3.6"
},
{
"binary_name": "apport-kde",
"binary_version": "2.28.1-0ubuntu3.6"
},
{
"binary_name": "apport-noui",
"binary_version": "2.28.1-0ubuntu3.6"
},
{
"binary_name": "apport-retrace",
"binary_version": "2.28.1-0ubuntu3.6"
},
{
"binary_name": "apport-valgrind",
"binary_version": "2.28.1-0ubuntu3.6"
},
{
"binary_name": "dh-apport",
"binary_version": "2.28.1-0ubuntu3.6"
},
{
"binary_name": "python3-apport",
"binary_version": "2.28.1-0ubuntu3.6"
},
{
"binary_name": "python3-problem-report",
"binary_version": "2.28.1-0ubuntu3.6"
}
]
}