{"id":"CVE-2019-15790","aliases":["EUVD-2019-6713","GHSA-mv59-w8cf-g9q7","UBUNTU-CVE-2019-15790","USN-4171-1","USN-4171-2"],"status":"published","title":"Apport reads PID files with elevated privileges","description":"Apport reads and writes information on a crashed process to /proc/pid with elevated privileges. Apport then determines which user the crashed process belongs to by reading /proc/pid through get_pid_info() in data/apport. An unprivileged user could exploit this to read information about a privileged running process by exploiting PID recycling. This information could then be used to obtain ASLR offsets for a process with an existing memory corruption vulnerability. The initial fix introduced regressions in the Python Apport library due to a missing argument in Report.add_proc_environ in apport/report.py. It also caused an autopkgtest failure when reading /proc/pid and with Python 2 compatibility by reading /proc maps. The initial and subsequent regression fixes are in 2.20.11-0ubuntu16, 2.20.11-0ubuntu8.6, 2.20.9-0ubuntu7.12, 2.20.1-0ubuntu2.22 and 2.14.1-0ubuntu3.29+esm3.","severity":{"version":"3.1","score":2.8,"vector":"CVSS:3.1/AV:L/AC:H/PR:L/UI:N/S:C/C:L/I:N/A:N","level":"low","assessor":"cna","from":"cve"},"epss":{"day":"2026-11-09","score":0.00523,"percentile":0.44683,"model":"v2026.06.15"},"facts":{"in_kev":false,"known_exploited":false,"public_exploit":false,"fix_available":true},"cwes":["CWE-250","CWE-269"],"published":"2019-10-29T00:00:00Z","modified":"2026-06-17T02:21:04Z","fixes":[{"ecosystem":"Ubuntu:Pro:14.04:LTS","package":"apport","fixed_in":["2.14.1-0ubuntu3.29+esm2"],"sources":["osv"]},{"ecosystem":"Ubuntu:16.04:LTS","package":"apport","fixed_in":["2.20.1-0ubuntu2.20"],"sources":["osv"]},{"ecosystem":"Ubuntu:18.04:LTS","package":"apport","fixed_in":["2.20.9-0ubuntu7.8"],"sources":["osv"]}],"affected":[{"source":"osv","ecosystem":"Ubuntu:Pro:14.04:LTS","package":"apport","ranges":[{"type":"ECOSYSTEM","events":[{"introduced":"0"},{"fixed":"2.14.1-0ubuntu3.29+esm2"}]}],"versions":["2.12.5-0ubuntu2","2.12.6-0ubuntu1","2.12.7-0ubuntu1","2.12.7-0ubuntu2","2.12.7-0ubuntu3","2.12.7-0ubuntu6","2.13.1-0ubuntu1","2.13.1-0ubuntu2","2.13.2-0ubuntu2","2.13.2-0ubuntu3","2.13.2-0ubuntu4","2.13.2-0ubuntu5","2.13.3-0ubuntu1","2.14-0ubuntu1","2.14.1-0ubuntu1","2.14.1-0ubuntu2","2.14.1-0ubuntu3","2.14.1-0ubuntu3.1","2.14.1-0ubuntu3.2","2.14.1-0ubuntu3.3","2.14.1-0ubuntu3.4","2.14.1-0ubuntu3.5","2.14.1-0ubuntu3.6","2.14.1-0ubuntu3.7","2.14.1-0ubuntu3.8","2.14.1-0ubuntu3.9","2.14.1-0ubuntu3.10","2.14.1-0ubuntu3.11","2.14.1-0ubuntu3.12","2.14.1-0ubuntu3.13","2.14.1-0ubuntu3.15","2.14.1-0ubuntu3.16","2.14.1-0ubuntu3.18","2.14.1-0ubuntu3.19","2.14.1-0ubuntu3.20","2.14.1-0ubuntu3.21","2.14.1-0ubuntu3.23","2.14.1-0ubuntu3.24","2.14.1-0ubuntu3.25","2.14.1-0ubuntu3.27","2.14.1-0ubuntu3.28","2.14.1-0ubuntu3.29","2.14.1-0ubuntu3.29+esm1"]},{"source":"osv","ecosystem":"Ubuntu:16.04:LTS","package":"apport","ranges":[{"type":"ECOSYSTEM","events":[{"introduced":"0"},{"fixed":"2.20.1-0ubuntu2.20"}]}],"versions":["2.19.1-0ubuntu3","2.19.2-0ubuntu1","2.19.2-0ubuntu2","2.19.2-0ubuntu3","2.19.2-0ubuntu4","2.19.2-0ubuntu5","2.19.2-0ubuntu6","2.19.2-0ubuntu8","2.19.2-0ubuntu9","2.19.3-0ubuntu1","2.19.3-0ubuntu2","2.19.3-0ubuntu3","2.19.4-0ubuntu1","2.19.4-0ubuntu2","2.20-0ubuntu2","2.20-0ubuntu3","2.20.1-0ubuntu1","2.20.1-0ubuntu2","2.20.1-0ubuntu2.1","2.20.1-0ubuntu2.2","2.20.1-0ubuntu2.4","2.20.1-0ubuntu2.5","2.20.1-0ubuntu2.6","2.20.1-0ubuntu2.9","2.20.1-0ubuntu2.10","2.20.1-0ubuntu2.12","2.20.1-0ubuntu2.13","2.20.1-0ubuntu2.14","2.20.1-0ubuntu2.15","2.20.1-0ubuntu2.16","2.20.1-0ubuntu2.17","2.20.1-0ubuntu2.18","2.20.1-0ubuntu2.19"]},{"source":"osv","ecosystem":"Ubuntu:18.04:LTS","package":"apport","ranges":[{"type":"ECOSYSTEM","events":[{"introduced":"0"},{"fixed":"2.20.9-0ubuntu7.8"}]}],"versions":["2.20.7-0ubuntu3","2.20.7-0ubuntu3.1","2.20.7-0ubuntu4","2.20.8-0ubuntu1","2.20.8-0ubuntu2","2.20.8-0ubuntu3","2.20.8-0ubuntu4","2.20.8-0ubuntu5","2.20.8-0ubuntu6","2.20.8-0ubuntu7","2.20.8-0ubuntu8","2.20.8-0ubuntu9","2.20.8-0ubuntu10","2.20.9-0ubuntu1","2.20.9-0ubuntu2","2.20.9-0ubuntu4","2.20.9-0ubuntu5","2.20.9-0ubuntu6","2.20.9-0ubuntu7","2.20.9-0ubuntu7.1","2.20.9-0ubuntu7.2","2.20.9-0ubuntu7.3","2.20.9-0ubuntu7.4","2.20.9-0ubuntu7.5","2.20.9-0ubuntu7.6","2.20.9-0ubuntu7.7"]},{"source":"osv","ecosystem":"Ubuntu:16.04:LTS","package":"apport","ranges":[{"type":"ECOSYSTEM","events":[{"introduced":"0"},{"fixed":"2.20.1-0ubuntu2.20"}]}],"versions":["2.19.1-0ubuntu3","2.19.2-0ubuntu1","2.19.2-0ubuntu2","2.19.2-0ubuntu3","2.19.2-0ubuntu4","2.19.2-0ubuntu5","2.19.2-0ubuntu6","2.19.2-0ubuntu8","2.19.2-0ubuntu9","2.19.3-0ubuntu1","2.19.3-0ubuntu2","2.19.3-0ubuntu3","2.19.4-0ubuntu1","2.19.4-0ubuntu2","2.20-0ubuntu2","2.20-0ubuntu3","2.20.1-0ubuntu1","2.20.1-0ubuntu2","2.20.1-0ubuntu2.1","2.20.1-0ubuntu2.2","2.20.1-0ubuntu2.4","2.20.1-0ubuntu2.5","2.20.1-0ubuntu2.6","2.20.1-0ubuntu2.9","2.20.1-0ubuntu2.10","2.20.1-0ubuntu2.12","2.20.1-0ubuntu2.13","2.20.1-0ubuntu2.14","2.20.1-0ubuntu2.15","2.20.1-0ubuntu2.16","2.20.1-0ubuntu2.17","2.20.1-0ubuntu2.18","2.20.1-0ubuntu2.19"],"bundled":5},{"source":"osv","ecosystem":"Ubuntu:18.04:LTS","package":"apport","ranges":[{"type":"ECOSYSTEM","events":[{"introduced":"0"},{"fixed":"2.20.9-0ubuntu7.8"}]}],"versions":["2.20.7-0ubuntu3","2.20.7-0ubuntu3.1","2.20.7-0ubuntu4","2.20.8-0ubuntu1","2.20.8-0ubuntu2","2.20.8-0ubuntu3","2.20.8-0ubuntu4","2.20.8-0ubuntu5","2.20.8-0ubuntu6","2.20.8-0ubuntu7","2.20.8-0ubuntu8","2.20.8-0ubuntu9","2.20.8-0ubuntu10","2.20.9-0ubuntu1","2.20.9-0ubuntu2","2.20.9-0ubuntu4","2.20.9-0ubuntu5","2.20.9-0ubuntu6","2.20.9-0ubuntu7","2.20.9-0ubuntu7.1","2.20.9-0ubuntu7.2","2.20.9-0ubuntu7.3","2.20.9-0ubuntu7.4","2.20.9-0ubuntu7.5","2.20.9-0ubuntu7.6","2.20.9-0ubuntu7.7"],"bundled":5},{"source":"osv","ecosystem":"Ubuntu:Pro:14.04:LTS","package":"apport","ranges":[{"type":"ECOSYSTEM","events":[{"introduced":"0"},{"fixed":"2.14.1-0ubuntu3.29+esm2"}]}],"versions":["2.12.5-0ubuntu2","2.12.6-0ubuntu1","2.12.7-0ubuntu1","2.12.7-0ubuntu2","2.12.7-0ubuntu3","2.12.7-0ubuntu6","2.13.1-0ubuntu1","2.13.1-0ubuntu2","2.13.2-0ubuntu2","2.13.2-0ubuntu3","2.13.2-0ubuntu4","2.13.2-0ubuntu5","2.13.3-0ubuntu1","2.14-0ubuntu1","2.14.1-0ubuntu1","2.14.1-0ubuntu2","2.14.1-0ubuntu3","2.14.1-0ubuntu3.1","2.14.1-0ubuntu3.2","2.14.1-0ubuntu3.3","2.14.1-0ubuntu3.4","2.14.1-0ubuntu3.5","2.14.1-0ubuntu3.6","2.14.1-0ubuntu3.7","2.14.1-0ubuntu3.8","2.14.1-0ubuntu3.9","2.14.1-0ubuntu3.10","2.14.1-0ubuntu3.11","2.14.1-0ubuntu3.12","2.14.1-0ubuntu3.13","2.14.1-0ubuntu3.15","2.14.1-0ubuntu3.16","2.14.1-0ubuntu3.18","2.14.1-0ubuntu3.19","2.14.1-0ubuntu3.20","2.14.1-0ubuntu3.21","2.14.1-0ubuntu3.23","2.14.1-0ubuntu3.24","2.14.1-0ubuntu3.25","2.14.1-0ubuntu3.27","2.14.1-0ubuntu3.28","2.14.1-0ubuntu3.29","2.14.1-0ubuntu3.29+esm1"],"bundled":5}],"products":[{"vendor":"apport_project","product":"apport"},{"vendor":"canonical","product":"apport"},{"vendor":"canonical","product":"ubuntu_linux"}],"references":[{"url":"https://bugs.launchpad.net/ubuntu/+source/apport/+bug/1839795","tags":["x_transferred","Exploit","Issue Tracking","Third Party Advisory"]},{"url":"https://usn.ubuntu.com/4171-1/","tags":["x_transferred","Third Party Advisory"]},{"url":"https://usn.ubuntu.com/4171-2/","tags":["x_transferred","Third Party Advisory"]},{"url":"https://usn.ubuntu.com/4171-3/","tags":["x_transferred","Third Party Advisory"]},{"url":"https://usn.ubuntu.com/4171-4/","tags":["x_transferred","Third Party Advisory"]},{"url":"https://usn.ubuntu.com/4171-5/","tags":["x_transferred","Third Party Advisory"]},{"url":"https://bugs.launchpad.net/ubuntu/+source/apport/+bug/1850929","tags":["x_transferred","Exploit","Issue Tracking","Patch","Third Party Advisory"]},{"url":"https://bugs.launchpad.net/ubuntu/+source/apport/+bug/1851806","tags":["x_transferred","Exploit","Issue Tracking","Third Party Advisory"]},{"url":"https://bugs.launchpad.net/apport/+bug/1854237","tags":["x_transferred","Issue Tracking","Third Party Advisory"]},{"url":"http://packetstormsecurity.com/files/172858/Ubuntu-Apport-Whoopsie-DoS-Integer-Overflow.html","tags":["x_transferred"]},{"url":"http://seclists.org/fulldisclosure/2025/Jun/9"},{"url":"https://nvd.nist.gov/vuln/detail/CVE-2019-15790"},{"url":"https://usn.ubuntu.com/4171-1"},{"url":"https://usn.ubuntu.com/4171-2"},{"url":"https://usn.ubuntu.com/4171-3"},{"url":"https://usn.ubuntu.com/4171-4"},{"url":"https://usn.ubuntu.com/4171-5"},{"url":"https://github.com/advisories/GHSA-mv59-w8cf-g9q7"},{"url":"https://ubuntu.com/security/CVE-2019-15790","tags":["report"]},{"url":"https://ubuntu.com/security/notices/USN-4171-1","tags":["advisory"]},{"url":"https://ubuntu.com/security/notices/USN-4171-2","tags":["advisory"]},{"url":"https://www.cve.org/CVERecord?id=CVE-2019-15790","tags":["report"]},{"url":"https://ubuntu.com/security/CVE-2019-11481","tags":["report"]},{"url":"https://ubuntu.com/security/CVE-2019-11482","tags":["report"]},{"url":"https://ubuntu.com/security/CVE-2019-11483","tags":["report"]},{"url":"https://ubuntu.com/security/CVE-2019-11485","tags":["report"]}],"sources":{"cve":[{"id":"CVE-2019-15790","title":"Apport reads PID files with elevated privileges","description":"Apport reads and writes information on a crashed process to /proc/pid with elevated privileges. Apport then determines which user the crashed process belongs to by reading /proc/pid through get_pid_info() in data/apport. An unprivileged user could exploit this to read information about a privileged running process by exploiting PID recycling. This information could then be used to obtain ASLR offsets for a process with an existing memory corruption vulnerability. The initial fix introduced regressions in the Python Apport library due to a missing argument in Report.add_proc_environ in apport/report.py. It also caused an autopkgtest failure when reading /proc/pid and with Python 2 compatibility by reading /proc maps. The initial and subsequent regression fixes are in 2.20.11-0ubuntu16, 2.20.11-0ubuntu8.6, 2.20.9-0ubuntu7.12, 2.20.1-0ubuntu2.22 and 2.14.1-0ubuntu3.29+esm3.","status":"published","published":"2020-04-27T23:25:19.961Z","modified":"2025-11-03T19:25:26.757Z","cvss":[{"version":"3.1","score":2.8,"vector":"CVSS:3.1/AV:L/AC:H/PR:L/UI:N/S:C/C:L/I:N/A:N","level":"low","assessor":"cna"}],"cwes":["CWE-250"],"updated_at":"2026-11-02T14:20:21.703364Z"}],"euvd":[{"id":"EUVD-2019-6713","description":"Apport reads and writes information on a crashed process to /proc/pid with elevated privileges. Apport then determines which user the crashed process belongs to by reading /proc/pid through get_pid_info() in data/apport. An unprivileged user could exploit this to read information about a privileged running process by exploiting PID recycling. This information could then be used to obtain ASLR offsets for a process with an existing memory corruption vulnerability. The initial fix introduced regressions in the Python Apport library due to a missing argument in Report.add_proc_environ in apport/report.py. It also caused an autopkgtest failure when reading /proc/pid and with Python 2 compatibility by reading /proc maps. The initial and subsequent regression fixes are in 2.20.11-0ubuntu16, 2.20.11-0ubuntu8.6, 2.20.9-0ubuntu7.12, 2.20.1-0ubuntu2.22 and 2.14.1-0ubuntu3.29+esm3.","status":"published","published":"2020-04-27T23:25:19Z","modified":"2025-11-03T19:25:26Z","cvss":[{"version":"3.1","score":2.8,"vector":"CVSS:3.1/AV:L/AC:H/PR:L/UI:N/S:C/C:L/I:N/A:N","level":"low"}],"updated_at":"2026-11-02T19:49:34.152725Z"}],"ghsa":[{"id":"GHSA-mv59-w8cf-g9q7","title":"Apport reads and writes information on a crashed process to /proc/pid with elevated privileges....","description":"Apport reads and writes information on a crashed process to /proc/pid with elevated privileges. Apport then determines which user the crashed process belongs to by reading /proc/pid through get_pid_info() in data/apport. An unprivileged user could exploit this to read information about a privileged running process by exploiting PID recycling. This information could then be used to obtain ASLR offsets for a process with an existing memory corruption vulnerability. The initial fix introduced regressions in the Python Apport library due to a missing argument in Report.add_proc_environ in apport/report.py. It also caused an autopkgtest failure when reading /proc/pid and with Python 2 compatibility by reading /proc maps. The initial and subsequent regression fixes are in 2.20.11-0ubuntu16, 2.20.11-0ubuntu8.6, 2.20.9-0ubuntu7.12, 2.20.1-0ubuntu2.22 and 2.14.1-0ubuntu3.29+esm3.","status":"published","published":"2022-05-24T17:16:44Z","modified":"2025-11-03T21:31:35Z","cvss":[{"version":"3.1","score":3.3,"vector":"CVSS:3.1/AV:L/AC:L/PR:L/UI:N/S:U/C:L/I:N/A:N","level":"low"}],"cwes":["CWE-250","CWE-269"],"updated_at":"2026-11-02T15:04:18.722049Z"}],"nvd":[{"id":"CVE-2019-15790","description":"Apport reads and writes information on a crashed process to /proc/pid with elevated privileges. Apport then determines which user the crashed process belongs to by reading /proc/pid through get_pid_info() in data/apport. An unprivileged user could exploit this to read information about a privileged running process by exploiting PID recycling. This information could then be used to obtain ASLR offsets for a process with an existing memory corruption vulnerability. The initial fix introduced regressions in the Python Apport library due to a missing argument in Report.add_proc_environ in apport/report.py. It also caused an autopkgtest failure when reading /proc/pid and with Python 2 compatibility by reading /proc maps. The initial and subsequent regression fixes are in 2.20.11-0ubuntu16, 2.20.11-0ubuntu8.6, 2.20.9-0ubuntu7.12, 2.20.1-0ubuntu2.22 and 2.14.1-0ubuntu3.29+esm3.","status":"published","published":"2020-04-28T00:15:12.913Z","modified":"2026-06-17T02:21:04.753Z","cvss":[{"version":"3.1","score":2.8,"vector":"CVSS:3.1/AV:L/AC:H/PR:L/UI:N/S:C/C:L/I:N/A:N","level":"low","assessor":"secondary"},{"version":"3.1","score":3.3,"vector":"CVSS:3.1/AV:L/AC:L/PR:L/UI:N/S:U/C:L/I:N/A:N","level":"low","assessor":"primary"},{"version":"2.0","score":2.1,"vector":"AV:L/AC:L/Au:N/C:P/I:N/A:N","level":"low","assessor":"primary"}],"cwes":["CWE-250","CWE-269"],"updated_at":"2026-11-02T14:05:46.451008Z"}],"osv":[{"id":"UBUNTU-CVE-2019-15790","description":"Apport reads and writes information on a crashed process to /proc/pid with elevated privileges. Apport then determines which user the crashed process belongs to by reading /proc/pid through get_pid_info() in data/apport. An unprivileged user could exploit this to read information about a privileged running process by exploiting PID recycling. This information could then be used to obtain ASLR offsets for a process with an existing memory corruption vulnerability. The initial fix introduced regressions in the Python Apport library due to a missing argument in Report.add_proc_environ in apport/report.py. It also caused an autopkgtest failure when reading /proc/pid and with Python 2 compatibility by reading /proc maps. The initial and subsequent regression fixes are in 2.20.11-0ubuntu16, 2.20.11-0ubuntu8.6, 2.20.9-0ubuntu7.12, 2.20.1-0ubuntu2.22 and 2.14.1-0ubuntu3.29+esm3.","status":"published","published":"2019-10-29T00:00:00Z","modified":"2026-02-04T04:23:26.41143Z","cvss":[{"version":"3.1","score":3.3,"vector":"CVSS:3.1/AV:L/AC:L/PR:L/UI:N/S:U/C:L/I:N/A:N","level":"low"},{"version":"3.1","score":2.8,"vector":"CVSS:3.1/AV:L/AC:H/PR:L/UI:N/S:C/C:L/I:N/A:N","level":"low"}],"updated_at":"2026-11-02T15:54:19.6877Z"},{"id":"USN-4171-1","title":"apport vulnerabilities","description":"Kevin Backhouse discovered Apport would read its user-controlled settings\nfile as the root user. This could be used by a local attacker to possibly\ncrash Apport or have other unspecified consequences. (CVE-2019-11481)\n\nSander Bos discovered a race-condition in Apport during core dump\ncreation. This could be used by a local attacker to generate a crash report\nfor a privileged process that is readable by an unprivileged user.\n(CVE-2019-11482)\n\nSander Bos discovered Apport mishandled crash dumps originating from\ncontainers. This could be used by a local attacker to generate a crash\nreport for a privileged process that is readable by an unprivileged user.\n(CVE-2019-11483)\n\nSander Bos discovered Apport mishandled lock-file creation. This could be\nused by a local attacker to cause a denial of service against Apport.\n(CVE-2019-11485)\n\nKevin Backhouse discovered Apport read various process-specific files with\nelevated privileges during crash dump generation. This could could be used\nby a local attacker to generate a crash report for a privileged process\nthat is readable by an unprivileged user. (CVE-2019-15790)\n","status":"published","published":"2019-10-30T05:45:00Z","modified":"2026-02-10T04:41:40Z","updated_at":"2026-11-02T16:58:14.547547Z"},{"id":"USN-4171-2","title":"apport vulnerabilities","description":"USN-4171-1 fixed several vulnerabilities in apport. This update provides\nthe corresponding update for Ubuntu 14.04 ESM.\n\nOriginal advisory details:\n\n Kevin Backhouse discovered Apport would read its user-controlled settings\n file as the root user. This could be used by a local attacker to possibly\n crash Apport or have other unspecified consequences. (CVE-2019-11481)\n\n Sander Bos discovered a race-condition in Apport during core dump\n creation. This could be used by a local attacker to generate a crash report\n for a privileged process that is readable by an unprivileged user.\n (CVE-2019-11482)\n\n Sander Bos discovered Apport mishandled crash dumps originating from\n containers. This could be used by a local attacker to generate a crash\n report for a privileged process that is readable by an unprivileged user.\n (CVE-2019-11483)\n\n Sander Bos discovered Apport mishandled lock-file creation. This could be\n used by a local attacker to cause a denial of service against Apport.\n (CVE-2019-11485)\n\n Kevin Backhouse discovered Apport read various process-specific files with\n elevated privileges during crash dump generation. This could could be used\n by a local attacker to generate a crash report for a privileged process\n that is readable by an unprivileged user. (CVE-2019-15790)\n","status":"published","published":"2019-11-04T12:30:41Z","modified":"2026-02-10T04:41:40Z","updated_at":"2026-11-02T16:58:14.547547Z"}]}}
