CVE-2021-25682
High · 7.8CVSS
7.8
EPSS
0.5%
Published
Jun 11, 2021
CISA due date
—
Cloudanix analysis
A flaw in reading process details from the operating system kernel lets someone already on the machine seize full control of mail servers.
- Exploitation
- Local Privilege
- Attacker needs
- Low Privilege
- Complexity
- Low
- Impact
- Privilege Gain
- Component
- Application
- Class
- Improper Input Validation
- Remediation
- Upgrade
- Effort
- Medium
- Patch risk
- Low
What it actually does
Improper parsing of /proc/pid/status contents in get_pid_info allows malformed kernel data to be accepted, resulting in local privilege escalation to full system compromise.
Why it matters to the business
Attackers with local access can take complete control of mail servers, leading to data theft, service disruption, and potential regulatory penalties; high prevalence in Debian and Git deployments increases exposure across many organizations.
How an attack unfolds
An authenticated local user crafts malicious content in /proc/pid/status that bypasses the faulty parser, causing the application to mishandle process data and execute attacker-controlled code with elevated privileges.
How to fix it
Upgrade exim4 on Debian 11/12/13 to 4.94.2-1 or later and exim Git to commit 919111edac911ba9c15422eafd7c5bf14d416d26; verify the update and restart the service.
How to confirm the fix worked
Confirm package versions match the fixed releases, run regression tests on process status parsing, and monitor for any remaining instances of the vulnerable parser code.
Typical attack path
- Obtain local shell access on a system running the vulnerable mail server
- Prepare malformed process status data targeting the parser flaw
- Trigger the get_pid_info call via local process interaction
- Escalate privileges to root and establish persistence or exfiltrate data
How to detect it
Review local process creation logs, authentication events, and any application crash reports around the time of suspected activity; look for unexpected privilege changes or unusual process status file accesses.
What your security team should do
- Apply the listed fixed versions immediately due to public exploit availability
- Audit local user access controls on all affected mail servers
- Enable enhanced logging for process-related operations
- Schedule vulnerability scans to confirm absence of older versions
The record
It was discovered that the get_pid_info() function in data/apport did not properly parse the /proc/pid/status file from the kernel.
Affected packages
| Ecosystem | Package | Introduced | Fixed |
|---|---|---|---|
| Ubuntu:14.04:LTS | apport | 0 | 2.14.1-0ubuntu3.29+esm6 |
| Ubuntu:16.04:LTS | apport | 0 | 2.20.1-0ubuntu2.30 |
| Ubuntu:18.04:LTS | apport | 0 | 2.20.9-0ubuntu7.23 |
| Ubuntu:20.04:LTS | apport | 0 | 2.20.11-0ubuntu27.16 |
| Ubuntu:Pro:14.04:LTS | apport | 0 | 2.14.1-0ubuntu3.29+esm6 |
Related vulnerabilities
- CVE-2020-11936 gdbus setgid privilege escalation Also affects apport
- CVE-2020-8831 Apport creates a world writable lock file with root ownership in the world writable… Also affects apport
- CVE-2019-11481 Kevin Backhouse discovered that apport would read a user-supplied configuration file with… Also affects apport
- CVE-2019-7307 Apport before versions 2.14.1-0ubuntu3.29+esm1, 2.20.1-0ubuntu2.19, 2.20.9-0ubuntu7.7… Also affects apport
- CVE-2015-1341 Any Python module in sys.path can be imported if the command line of the process… Also affects apport
- CVE-2018-6552 Apport does not properly handle crashes originating from a PID namespace allowing local… Also affects apport
- CVE-2017-14177 Apport through 2.20.7 does not properly handle core dumps from setuid binaries allowing… Also affects apport
- CVE-2015-1324 Apport before 2.17.2-0ubuntu1.1 as packaged in Ubuntu 15.04, before 2.14.70ubuntu8.5 as… Also affects apport