In the Linux kernel, the following vulnerability has been resolved: perf: Require kernel access for text poke events Perf events with exclude_kernel=1 can be opened without kernel perf access. However, exclude_kernel does not suppress text-poke sideband records. Every PERF_RECORD_TEXT_POKE is marked PERF_RECORD_MISC_KERNEL and contains a raw kernel instruction address. An unprivileged task can therefore open and mmap a task-local software event with text_poke=1. Both opening a count-only tracepoint event and configuring UDP GRO for ESP-in-UDP cause updates to inline static calls; the observer receives the relocated addresses of the modified instructions. For a known kernel image, any such address reveals the runtime kernel text base despite KASLR. Call perf_allow_kernel() whenever attr.text_poke is set, regardless of exclude_kernel. Events that neither monitor kernel execution nor request text-poke records retain their existing permissions.
https://git.kernel.org/stable/c/e506333d1b9f42f1e402acebf1283af3c44a3809
https://git.kernel.org/stable/c/8473f44db9f710ea6f8cafb22f2e3ba6cb8ca9a7
https://git.kernel.org/stable/c/677d0b51ac1a0db55d768c4c6399210b3de0795b
https://git.kernel.org/stable/c/357e8a77a501d96c9517f01f4a211eed5e9c9184