Linux Kernel Privilege Escalation
CVE-2022-0847 is a high-severity improper initialization vulnerability in kernel, with a CVSS 3.1 base score of 7.8 out of 10. It can be exploited with local access to the system by an attacker with a low-privileged account, without any action from a user. Affected kernel versions: Linux Kernel 5.17 rc6. The record does not name a fixed version, so check the vendor advisory. CISA added it to the Known Exploited Vulnerabilities catalogue on April 25, 2022, which means attacks have been observed in the wild.
Attackers are already exploiting this vulnerability, according to CISA.
What to do
- Update Linux Kernel to 5.10.102 or 5.15.25 or 5.16.11, whichever matches your release line, or a later version.
- Update Scalance Lpe9403 Firmware to 2.0 or a later version.
- CISA's required action: Apply updates per vendor instructions.
- Read the advisory on psirt.global.sonicwall.com for workarounds and exact fixed builds.
Affected products and versions
Version data comes from the organisation that assigned the CVE; 5 further products are omitted here. Confirm against the vendor advisory before deciding you are unaffected.
How the severity score breaks down
- Attack vector
- LocalThe attacker needs local access or must trick a user into running something.
- Attack complexity
- LowNo special conditions are needed; the attack works reliably.
- Privileges required
- LowA basic user account is enough.
- User interaction
- NoneNo action by a victim is required.
- Scope
- UnchangedImpact stays within the vulnerable component.
- Confidentiality
- HighAll data handled by the component can be read.
- Integrity
- HighData or code can be modified at will.
- Availability
- HighThe component can be taken down completely.
Vector: CVSS:3.1/AV:L/AC:L/PR:L/UI:N/S:U/C:H/I:H/A:H. Scored by NVD.
| Scoring system | Score | Severity | Scored by |
|---|---|---|---|
| CVSS 3.1 | 7.8 | High | NVD |
| CVSS 3.1 | 7.8 | High | CISA (ADP) |
| CVSS 2.0 | 7.2 | High | NVD |
Official description
A flaw was found in the way the "flags" member of the new pipe buffer structure was lacking proper initialization in copy_page_to_iter_pipe and push_pipe functions in the Linux kernel and could thus contain stale values. An unprivileged local user could use this flaw to write to pages in the page cache backed by read only files and as such escalate their privileges on the system.
Source: the CVE record as published by its numbering authority, via NVD and CVE.org.
The underlying weakness: Improper Initialization
The product does not initialize or incorrectly initializes a resource.
How developers prevent this class of flaw
- Use a language that does not allow this weakness to occur or provides constructs that make this weakness easier to avoid. For example, in Java, if the programmer does not explicitly initialize a variable, then the code could produce a compile-time error (if the variable is local) or automatically initialize the variable to the default value for the variable's type. In Perl, if explicit initialization is not performed, then a default value of undef is assigned, which is interpreted as 0, false, or an equivalent value depending on the context in which the variable is accessed.
- Identify all variables and data stores that receive information from external sources, and apply input validation to make sure that they are only initialized to expected values.
- Explicitly initialize all your variables and other data stores, either during declaration or just before the first usage.
Timeline
- CVE record published.
- Added to CISA's Known Exploited Vulnerabilities catalogue.
- Deadline for US federal agencies to remediate, set by CISA.
- CISA published its SSVC assessment (exploitation: active, automatable: no, technical impact: total).
- Record last changed materially (score, affected products, status or references).
References
Advisories
- psirt.global.sonicwall.com/vuln-detail/SNWLID-2022-0015Third Party Advisory
Patches and release notes
- bugzilla.redhat.com/show_bug.cgi?id=2060795Issue Tracking, Third Party Advisory
Third-party and government advisories
- packetstormsecurity.com/files/176534/Linux-4.20-KTLS-Read-Only-Write.htmlThird Party Advisory, VDB Entry
- cert-portal.siemens.com/productcert/pdf/ssa-222547.pdfThird Party Advisory
- security.netapp.com/advisory/ntap-20220325-0005/Third Party Advisory
- suse.com/support/kb/doc/?id=000020603Third Party Advisory
- cisa.gov/known-exploited-vulnerabilities-catalog?field_cve=CVE-2022-0847US Government Resource
Technical write-ups (may include proof of concept)
- packetstormsecurity.com/files/166229/Dirty-Pipe-Linux-Privilege-Escalation.htmlExploit, Third Party Advisory, VDB Entry
- packetstormsecurity.com/files/166230/Dirty-Pipe-SUID-Binary-Hijack-Privilege-Escalation.htmlExploit, Third Party Advisory, VDB Entry
- packetstormsecurity.com/files/166258/Dirty-Pipe-Local-Privilege-Escalation.htmlExploit, Third Party Advisory, VDB Entry
- dirtypipe.cm4all.com/Exploit, Third Party Advisory
Other vulnerabilities in kernel
- 7.5 High severity
- 7.8 High severity
- 8.1 High severity
- 7.1 High severity
- 8.1 High severity
- 8.1 High severity
Recent Improper Initialization vulnerabilities
- 7.5 High severity
- 9.8 Critical severity
- 5.5 Medium severity
- 6.5 Medium severity
Mozilla Firefox Information Disclosure Exploited
Spotted an error? Tell us.