CVE-2015-5287: Red Hat ABRT sosreport Local Privilege Escalation
Detects local privilege escalation exploitation of CVE-2015-5287 in Red Hat's Automatic Bug Reporting Tool (ABRT). A race condition and improper file handling in the sosreport/abrt-action-install-debuginfo path allows a local unprivileged user to manipulate files created by the privileged abrtd daemon (running as root), enabling arbitrary file write/overwrite and command execution as root. Exploitation is characterized by unusual abrt process activity, symlink/hardlink manipulation inside /var/spool/abrt and /var/tmp/abrt, and abrt-hook-ccpp or sosreport spawning shells as root shortly after a crash is triggered by a non-root user.
Vulnerability Intelligence
KEV — Known ExploitedAffected Software
- Vendor
- Red Hat
- Product
- Automatic Bug Reporting Tool
Timeline
- Disclosed
- December 1, 2015
References & Proof of Concept
- PoChttps://www.exploit-db.com/exploits/47421
- PoChttps://www.exploit-db.com/exploits/38832
- PoChttps://www.exploit-db.com/exploits/38835
- https://github.com/abrt/abrt/commit/3c1b60cfa62d39e5fff5a53a5bc53dae189e740e
- https://www.cisa.gov/news-events/directives/bod-26-04-prioritizing-security-updates-based-risk
- https://www.cisa.gov/news-events/directives/bod-26-04-implementation-guidance-prioritizing-security-updates-based-risk
- https://nvd.nist.gov/vuln/detail/CVE-2015-5287
- https://raw.githubusercontent.com/rapid7/metasploit-framework/master/modules/exploits/linux/local/abrt_sosreport_priv_esc.rb
CVSS
What is CVE-2015-5287 CVE-2015-5287: Red Hat ABRT sosreport Local Privilege Escalation?
CVE-2015-5287: Red Hat ABRT sosreport Local Privilege Escalation (CVE-2015-5287) maps to the Privilege Escalation tactic — the adversary is trying to gain higher-level permissions in MITRE ATT&CK.
This page provides production-ready detection logic for CVE-2015-5287: Red Hat ABRT sosreport Local Privilege Escalation, covering the data sources and telemetry it touches: Microsoft Defender for Endpoint, Linux process telemetry. The queries below are rated high severity at medium confidence, and ship for 7 SIEM platforms — KQL, SPL, Elastic, QRadar, Sumo, YARA-L, LogScale.
MITRE ATT&CK
- Tactic
- Privilege Escalation
DeviceProcessEvents
| where InitiatingProcessFileName in~ ("abrtd", "abrt-hook-ccpp", "abrt-action-install-debuginfo", "sosreport")
| where ProcessCommandLine has_any ("/bin/sh", "/bin/bash", "bash -i", "sh -c", "python -c", "chmod +s", "cp /bin/sh")
| where AccountName in~ ("root", "abrt")
| where InitiatingProcessAccountName !in~ ("root")
| project Timestamp, DeviceName, AccountName, InitiatingProcessAccountName, InitiatingProcessFileName, FileName, ProcessCommandLine, FolderPath
| order by Timestamp desc Flags abrt daemon components spawning shell or scripting processes as root when the crash-originating (initiating) user is non-root, a hallmark of CVE-2015-5287 exploitation on Linux endpoints onboarded to Defender for Endpoint.
Data Sources
Required Tables
False Positives
- Legitimate crash handling where abrt collects debug info and spawns helper scripts during normal operation
- Administrators manually running sosreport for support case collection
- Automated support bundle generation by monitoring tooling running under service accounts
Sigma rule & cross-platform mapping
The detection logic for CVE-2015-5287: Red Hat ABRT sosreport Local Privilege Escalation (CVE-2015-5287) above is provided in a vendor-neutral
form so you can deploy it on any SIEM. The same logic is shipped here as native
KQL (Microsoft Sentinel / Defender), SPL (Splunk), Elastic (Elastic Security (EQL)), QRadar (IBM QRadar (AQL)), Sumo (Sumo Logic CSE), YARA-L (Google Chronicle / SecOps), LogScale (CrowdStrike LogScale (CQL)) queries. In Sigma terms, this detection targets the
following logsource:
logsource:
category: process_creation
product: windows Browse the community-maintained Sigma rules for this technique:
Platform-specific guides for CVE-2015-5287
References (7)
- https://nvd.nist.gov/vuln/detail/CVE-2015-5287
- https://github.com/abrt/abrt/commit/3c1b60cfa62d39e5fff5a53a5bc53dae189e740e
- https://www.exploit-db.com/exploits/47421
- https://www.exploit-db.com/exploits/38832
- https://www.exploit-db.com/exploits/38835
- https://raw.githubusercontent.com/rapid7/metasploit-framework/master/modules/exploits/linux/local/abrt_sosreport_priv_esc.rb
- https://www.cisa.gov/news-events/directives/bod-26-04-prioritizing-security-updates-based-risk
Testing Methodology
Validate this detection against 3 adversary techniques from Atomic Red Team. Each test below lists the behaviour to exercise and the telemetry you should expect to see. Executable commands and cleanup steps are available with Pro.
- Test 1Simulate abrt-parented root shell
Expected signal: Process launch event with parent basename abrt-action-install-debuginfo, child /bin/bash running as uid=0
- Test 2Symlink race in abrt spool directory
Expected signal: File create/symlink event under /var/spool/abrt pointing to a sensitive system file
- Test 3sosreport spawning shell as root
Expected signal: Process launch with parent basename sosreport(-test) and child shell as root while triggered from non-root context
Response Playbook
Triage
- Confirm the affected host runs a vulnerable Red Hat / RHEL-derived distribution with the abrt package (abrt, abrt-addon-ccpp) installed and unpatched (pre-fix commit 3c1b60cf).
- Identify the non-root initiating user who triggered the crash and correlate with the timestamp of the root shell/command spawned by the abrt component.
- Inspect /var/spool/abrt and /var/tmp/abrt for attacker-controlled symlinks, hardlinks, or files with unexpected ownership created around the event time.
- Verify whether the spawned root process performed writes to sensitive paths (e.g., /etc/passwd, /etc/cron.d, setuid binaries).
Containment
- Isolate the affected host from the network to prevent lateral movement from the escalated root context.
- Suspend or lock the identified non-root user account pending investigation.
- Stop the abrtd service (systemctl stop abrtd) and disable crash processing until the host is patched.
Evidence Collection
- Collect the full contents of /var/spool/abrt/ and /var/tmp/abrt/ including problem directories, symlinks and their targets.
- Preserve auditd logs, /var/log/messages, /var/log/secure and abrt logs covering the event window.
- Capture the process tree and command lines for the abrt parent and its root child, plus any files created/modified by that child.
Escalation Criteria
- ! Escalate to incident response if the root process modified authentication, cron, sudoers, or setuid files, indicating successful privilege escalation and persistence.
- ! Escalate if evidence shows the escalated context was used for lateral movement, credential theft, or additional payload execution.
Investigation Guide
Forensic Artifacts
- >
Symlinks/hardlinks and orphaned files under /var/spool/abrt and /var/tmp/abrt - >
auditd EXECVE records showing abrt component parents spawning shells as root - >
abrt problem directory metadata (uid, executable, time) inconsistent with a normal crash
Tuning Guidance
Baseline legitimate sosreport and abrt debuginfo activity for your fleet (support engineers, monitoring agents) and allowlist those service accounts/hosts. Focus alerting on cases where the initiating/originating user is a standard non-root interactive user and the child process is a shell, scripting interpreter, chmod +s, or a copy of a shell binary. Tighten confidence to high when file writes to /etc or setuid paths accompany the root child.
Hunting Queries
Surfaces any abrt-parented process running as root while the originating user is non-root, the core anomaly behind CVE-2015-5287.
DeviceProcessEvents | where InitiatingProcessFileName startswith "abrt" or InitiatingProcessFileName == "sosreport" | where AccountName =~ "root" and InitiatingProcessAccountName !~ "root" | project Timestamp, DeviceName, InitiatingProcessAccountName, AccountName, InitiatingProcessFileName, FileName, ProcessCommandLine index=linux (parent_process=abrtd OR parent_process="abrt-hook-ccpp" OR parent_process=sosreport) user=root parent_user!=root | stats count by host, parent_process, process, user, parent_user Atomic Red Team Tests
Emulates CVE-2015-5287 telemetry by having a mock abrt component spawn a root shell command in a lab.
Command
sudo bash -c 'cp /bin/bash /tmp/abrt-action-install-debuginfo && /tmp/abrt-action-install-debuginfo -c "id > /tmp/abrt_privesc_test.txt"' Cleanup
sudo rm -f /tmp/abrt-action-install-debuginfo /tmp/abrt_privesc_test.txt Expected Telemetry
Process launch event with parent basename abrt-action-install-debuginfo, child /bin/bash running as uid=0
Expected Detection
KQL/EQL/CQL rules fire on abrt-parented root shell execution
Creates a symlink inside the abrt spool path to emulate the file-handling race abused by the exploit.
Command
sudo mkdir -p /var/spool/abrt/ccpp-test && ln -sf /etc/passwd /var/spool/abrt/ccpp-test/maps Cleanup
sudo rm -rf /var/spool/abrt/ccpp-test Expected Telemetry
File create/symlink event under /var/spool/abrt pointing to a sensitive system file
Expected Detection
Forensic artifact review and file-integrity monitoring flag the symlink target anomaly
Runs a stand-in sosreport binary that launches a shell to emulate the escalation payload.
Command
sudo bash -c 'cp /bin/sh /usr/local/bin/sosreport-test && sudo -u nobody sh -c "/usr/local/bin/sosreport-test -c \"id\"" 2>/dev/null; /usr/local/bin/sosreport-test -c "id"' Cleanup
sudo rm -f /usr/local/bin/sosreport-test Expected Telemetry
Process launch with parent basename sosreport(-test) and child shell as root while triggered from non-root context
Expected Detection
SPL/QRadar/Sumo/Chronicle rules detect sosreport-parented root shell