Bug 1226540 (CVE-2021-47579)

Summary: VUL-0: CVE-2021-47579: kernel: ovl: fix warning in ovl_create_real()
Product: [Novell Products] SUSE Security Incidents Reporter: SMASH SMASH <smash_bz>
Component: IncidentsAssignee: Security Team bot <security-team>
Status: RESOLVED WONTFIX QA Contact: Security Team bot <security-team>
Severity: Minor    
Priority: P3 - Medium CC: camila.matos, gabriel.bertazi
Version: unspecified   
Target Milestone: ---   
Hardware: Other   
OS: Other   
URL: https://smash.suse.de/issue/411342/
Whiteboard: CVSSv3.1:SUSE:CVE-2021-47579:3.3:(AV:L/AC:L/PR:L/UI:N/S:U/C:N/I:N/A:L)
Found By: Security Response Team Services Priority:
Business Priority: Blocker: ---
Marketing QA Status: --- IT Deployment: ---

Description SMASH SMASH 2024-06-19 19:27:02 UTC
In the Linux kernel, the following vulnerability has been resolved:

ovl: fix warning in ovl_create_real()

Syzbot triggered the following warning in ovl_workdir_create() ->
ovl_create_real():

	if (!err && WARN_ON(!newdentry->d_inode)) {

The reason is that the cgroup2 filesystem returns from mkdir without
instantiating the new dentry.

Weird filesystems such as this will be rejected by overlayfs at a later
stage during setup, but to prevent such a warning, call ovl_mkdir_real()
directly from ovl_workdir_create() and reject this case early.

References:
http://web.nvd.nist.gov/view/vuln/detail?vulnId=CVE-2021-47579
https://git.kernel.org/pub/scm/linux/security/vulns.git/plain/cve/published/2021/CVE-2021-47579.mbox
https://git.kernel.org/stable/c/445d2dc63e5871d218f21b8f62ab29ac72f2e6b8
https://git.kernel.org/stable/c/f9f300a92297be8250547347fd52216ef0177ae0
https://git.kernel.org/stable/c/6859985a2fbda5d1586bf44538853e1be69e85f7
https://git.kernel.org/stable/c/d2ccdd4e4efab06178608a34d7bfb20a54104c02
https://git.kernel.org/stable/c/1f5573cfe7a7056e80a92c7a037a3e69f3a13d1c
https://www.cve.org/CVERecord?id=CVE-2021-47579