{"id":"CVE-2019-15794","state":"PUBLISHED","title":"Reference counting error in overlayfs/shiftfs error path when used in conjuction with aufs","description":"Overlayfs in the Linux kernel and shiftfs, a non-upstream patch to the Linux kernel included in the Ubuntu 5.0 and 5.3 kernel series, both replace vma->vm_file in their mmap handlers. On error the original value is not restored, and the reference is put for the file to which vm_file points. On upstream kernels this is not an issue, as no callers dereference vm_file following after call_mmap() returns an error. However, the aufs patchs change mmap_region() to replace the fput() using a local variable with vma_fput(), which will fput() vm_file, leading to a refcount underflow.","publishedAt":"2020-04-23T23:55:25.039Z","updatedAt":"2024-09-16T19:52:18.313Z","severity":{"score":7.1,"label":"High","version":"3.1","vector":"CVSS:3.1/AV:L/AC:L/PR:L/UI:N/S:U/C:N/I:H/A:H","source":"canonical"},"assigner":"canonical","products":["Ubuntu Linux kernel"],"affected":[{"vendor":"Ubuntu","product":"Linux kernel","versions":[{"version":"5.3 kernel","status":"affected","lessThan":"5.3.0-24.26","versionType":"custom"},{"version":"5.0 kernel","status":"affected","lessThan":"5.0.0-37.40","versionType":"custom"}]}],"references":["https://git.launchpad.net/~ubuntu-kernel/ubuntu/+source/linux/+git/eoan/commit/?id=270d16ae48a4dbf1c7e25e94cc3e38b4bea37635","https://git.launchpad.net/~ubuntu-kernel/ubuntu/+source/linux/+git/eoan/commit/?id=ef81780548d20a786cc77ed4203fca146fd81ce3","https://usn.ubuntu.com/usn/usn-4208-1","https://usn.ubuntu.com/usn/usn-4209-1"],"weaknesses":["CWE-672"],"ingestedAt":"2026-10-29T19:45:33.607Z","source":{"repository":"CVEProject/cvelistV5","path":"cves/2019/15xxx/CVE-2019-15794.json","commit":"556c9d3a8cd17e218bb8e452ba7cd619a384ff47"},"raw":{"dataType":"CVE_RECORD","dataVersion":"5.1","cveMetadata":{"cveId":"CVE-2019-15794","state":"PUBLISHED","datePublished":"2020-04-23T23:55:25.039Z","dateUpdated":"2024-09-16T19:52:18.313Z","assignerShortName":"canonical","assignerOrgId":"cc1ad9ee-3454-478d-9317-d3e869d708bc","dateReserved":"2019-08-29T00:00:00.000Z"},"containers":{"cna":{"title":"Reference counting error in overlayfs/shiftfs error path when used in conjuction with aufs","descriptions":[{"lang":"en","value":"Overlayfs in the Linux kernel and shiftfs, a non-upstream patch to the Linux kernel included in the Ubuntu 5.0 and 5.3 kernel series, both replace vma->vm_file in their mmap handlers. On error the original value is not restored, and the reference is put for the file to which vm_file points. On upstream kernels this is not an issue, as no callers dereference vm_file following after call_mmap() returns an error. However, the aufs patchs change mmap_region() to replace the fput() using a local variable with vma_fput(), which will fput() vm_file, leading to a refcount underflow."}],"affected":[{"vendor":"Ubuntu","product":"Linux kernel","versions":[{"version":"5.3 kernel","status":"affected","lessThan":"5.3.0-24.26","versionType":"custom"},{"version":"5.0 kernel","status":"affected","lessThan":"5.0.0-37.40","versionType":"custom"}]}],"references":[{"url":"https://git.launchpad.net/~ubuntu-kernel/ubuntu/+source/linux/+git/eoan/commit/?id=270d16ae48a4dbf1c7e25e94cc3e38b4bea37635","tags":["x_refsource_MISC"]},{"url":"https://git.launchpad.net/~ubuntu-kernel/ubuntu/+source/linux/+git/eoan/commit/?id=ef81780548d20a786cc77ed4203fca146fd81ce3","tags":["x_refsource_MISC"]},{"url":"https://usn.ubuntu.com/usn/usn-4208-1","tags":["x_refsource_MISC"]},{"url":"https://usn.ubuntu.com/usn/usn-4209-1","tags":["x_refsource_MISC"]}],"metrics":[{"cvssV3_1":{"attackComplexity":"LOW","attackVector":"LOCAL","availabilityImpact":"HIGH","baseScore":7.1,"baseSeverity":"HIGH","confidentialityImpact":"NONE","integrityImpact":"HIGH","privilegesRequired":"LOW","scope":"UNCHANGED","userInteraction":"NONE","vectorString":"CVSS:3.1/AV:L/AC:L/PR:L/UI:N/S:U/C:N/I:H/A:H","version":"3.1"}}],"problemTypes":[{"descriptions":[{"cweId":"CWE-672","description":"CWE-672 Operation on a Resource after Expiration or Release","lang":"en","type":"CWE"}]}],"providerMetadata":{"shortName":"canonical","dateUpdated":"2020-04-23T23:55:24.000Z","orgId":"cc1ad9ee-3454-478d-9317-d3e869d708bc"},"credits":[{"lang":"en","value":"Jann Horn of Google Project Zero"}],"datePublic":"2019-11-08T00:00:00.000Z","source":{"defect":["https://bugs.launchpad.net/bugs/1850994"],"discovery":"EXTERNAL"},"x_generator":{"engine":"Vulnogram 0.0.9"},"x_legacyV4Record":{"CVE_data_meta":{"ASSIGNER":"security@ubuntu.com","DATE_PUBLIC":"2019-11-08T00:00:00.000Z","ID":"CVE-2019-15794","STATE":"PUBLIC","TITLE":"Reference counting error in overlayfs/shiftfs error path when used in conjuction with aufs"},"affects":{"vendor":{"vendor_data":[{"product":{"product_data":[{"product_name":"Linux kernel","version":{"version_data":[{"version_affected":"<","version_name":"5.3 kernel","version_value":"5.3.0-24.26"},{"version_affected":"<","version_name":"5.0 kernel","version_value":"5.0.0-37.40"}]}}]},"vendor_name":"Ubuntu"}]}},"credit":[{"lang":"eng","value":"Jann Horn of Google Project Zero"}],"data_format":"MITRE","data_type":"CVE","data_version":"4.0","description":{"description_data":[{"lang":"eng","value":"Overlayfs in the Linux kernel and shiftfs, a non-upstream patch to the Linux kernel included in the Ubuntu 5.0 and 5.3 kernel series, both replace vma->vm_file in their mmap handlers. On error the original value is not restored, and the reference is put for the file to which vm_file points. On upstream kernels this is not an issue, as no callers dereference vm_file following after call_mmap() returns an error. However, the aufs patchs change mmap_region() to replace the fput() using a local variable with vma_fput(), which will fput() vm_file, leading to a refcount underflow."}]},"generator":{"engine":"Vulnogram 0.0.9"},"impact":{"cvss":{"attackComplexity":"LOW","attackVector":"LOCAL","availabilityImpact":"HIGH","baseScore":7.1,"baseSeverity":"HIGH","confidentialityImpact":"NONE","integrityImpact":"HIGH","privilegesRequired":"LOW","scope":"UNCHANGED","userInteraction":"NONE","vectorString":"CVSS:3.1/AV:L/AC:L/PR:L/UI:N/S:U/C:N/I:H/A:H","version":"3.1"}},"problemtype":{"problemtype_data":[{"description":[{"lang":"eng","value":"CWE-672 Operation on a Resource after Expiration or Release"}]}]},"references":{"reference_data":[{"name":"https://git.launchpad.net/~ubuntu-kernel/ubuntu/+source/linux/+git/eoan/commit/?id=270d16ae48a4dbf1c7e25e94cc3e38b4bea37635","refsource":"MISC","url":"https://git.launchpad.net/~ubuntu-kernel/ubuntu/+source/linux/+git/eoan/commit/?id=270d16ae48a4dbf1c7e25e94cc3e38b4bea37635"},{"name":"https://git.launchpad.net/~ubuntu-kernel/ubuntu/+source/linux/+git/eoan/commit/?id=ef81780548d20a786cc77ed4203fca146fd81ce3","refsource":"MISC","url":"https://git.launchpad.net/~ubuntu-kernel/ubuntu/+source/linux/+git/eoan/commit/?id=ef81780548d20a786cc77ed4203fca146fd81ce3"},{"name":"https://usn.ubuntu.com/usn/usn-4208-1","refsource":"MISC","url":"https://usn.ubuntu.com/usn/usn-4208-1"},{"name":"https://usn.ubuntu.com/usn/usn-4209-1","refsource":"MISC","url":"https://usn.ubuntu.com/usn/usn-4209-1"}]},"source":{"defect":["https://bugs.launchpad.net/bugs/1850994"],"discovery":"EXTERNAL"}}},"adp":[{"title":"CVE Program Container","references":[{"url":"https://git.launchpad.net/~ubuntu-kernel/ubuntu/+source/linux/+git/eoan/commit/?id=270d16ae48a4dbf1c7e25e94cc3e38b4bea37635","tags":["x_refsource_MISC","x_transferred"]},{"url":"https://git.launchpad.net/~ubuntu-kernel/ubuntu/+source/linux/+git/eoan/commit/?id=ef81780548d20a786cc77ed4203fca146fd81ce3","tags":["x_refsource_MISC","x_transferred"]},{"url":"https://usn.ubuntu.com/usn/usn-4208-1","tags":["x_refsource_MISC","x_transferred"]},{"url":"https://usn.ubuntu.com/usn/usn-4209-1","tags":["x_refsource_MISC","x_transferred"]}],"providerMetadata":{"shortName":"CVE","orgId":"af854a3a-2127-422b-91ae-364da2661108","dateUpdated":"2024-08-05T00:56:22.473Z"}}]}}}