Linux: perf/core: Check kernel access when kernel callchains are requested
What fixes it
- 132bee76097be421ab3012130b5b506324cf2be1LinuxCVE List
- 2581b43e162cfc43e6f5d8dd8d2b38f3441550deLinuxCVE List
- 6e187281f978a2bff98ead6aa40f8ddc9a2c9afbLinuxCVE List
- 6.12.113LinuxCVE List
- 6.18.56LinuxCVE List
- 7.2.10LinuxCVE List
A fixed version on one release line is not the upgrade target for every line. Check your exact version and any vendor backports.
Description
In the Linux kernel, the following vulnerability has been resolved:
perf/core: Check kernel access when kernel callchains are requested
perf_event_open() currently gates perf_allow_kernel() only on !attr.exclude_kernel.
However, users can still request kernel callchain collection with attr.exclude_callchain_kernel == 0 even when attr.exclude_kernel == 1. That still requires kernel profiling privilege, but the existing check does not enforce it.
Update the permission check to call perf_allow_kernel() when either kernel sampling is requested or kernel callchains are requested.
This keeps permission checks aligned with requested data and prevents unprivileged use of kernel callchain capture.
Text from CVE List
Affected versions 11
- Linuxaffected: 1da177e4c3f41524e886b7f1b8a0c1fc7321cac2 before 132bee76097be421ab3012130b5b506324cf2be1CVE List
- Linuxaffected: 1da177e4c3f41524e886b7f1b8a0c1fc7321cac2 before 2581b43e162cfc43e6f5d8dd8d2b38f3441550deCVE List
- Linuxaffected: 1da177e4c3f41524e886b7f1b8a0c1fc7321cac2 before 6e187281f978a2bff98ead6aa40f8ddc9a2c9afbCVE List
- Linuxaffected: 1da177e4c3f41524e886b7f1b8a0c1fc7321cac2 before a4573a3838ae4fc73b70019cfa1dac9aaea7cc2fCVE List
- Linuxaffected: all versions before 6.12.113CVE List
- Linuxaffected: all versions before 6.18.56CVE List
- Linuxaffected: all versions before 7.2.10CVE List
- Linuxunaffected: 6.12.113 through 6.12.*CVE List
- Linuxunaffected: 6.18.56 through 6.18.*CVE List
- Linuxunaffected: 7.2.10 through 7.2.*CVE List
- Linuxunaffected: 7.3CVE List
References 4
- git.kernel.org/stable/c/132bee76097be421ab3012130b5b506324cf2be1Referencevia CVE List
- git.kernel.org/stable/c/2581b43e162cfc43e6f5d8dd8d2b38f3441550deReferencevia CVE List
- git.kernel.org/stable/c/6e187281f978a2bff98ead6aa40f8ddc9a2c9afbReferencevia CVE List
- git.kernel.org/stable/c/a4573a3838ae4fc73b70019cfa1dac9aaea7cc2fReferencevia CVE List