Upstream information
Description
In the Linux kernel, the following vulnerability has been resolved: bpf: Detect IP == ksym.end as part of BPF program Now that bpf_throw kfunc is the first such call instruction that has noreturn semantics within the verifier, this also kicks in dead code elimination in unprecedented ways. For one, any instruction following a bpf_throw call will never be marked as seen. Moreover, if a callchain ends up throwing, any instructions after the call instruction to the eventually throwing subprog in callers will also never be marked as seen. The tempting way to fix this would be to emit extra 'int3' instructions which bump the jited_len of a program, and ensure that during runtime when a program throws, we can discover its boundaries even if the call instruction to bpf_throw (or to subprogs that always throw) is emitted as the final instruction in the program. An example of such a program would be this: do_something(): ... r0 = 0 exit foo(): r1 = 0 call bpf_throw r0 = 0 exit bar(cond): if r1 != 0 goto pc+2 call do_something exit call foo r0 = 0 // Never seen by verifier exit // main(ctx): r1 = ... call bar r0 = 0 exit Here, if we do end up throwing, the stacktrace would be the following: bpf_throw foo bar main In bar, the final instruction emitted will be the call to foo, as such, the return address will be the subsequent instruction (which the JIT emits as int3 on x86). This will end up lying outside the jited_len of the program, thus, when unwinding, we will fail to discover the return address as belonging to any program and end up in a panic due to the unreliable stack unwinding of BPF programs that we never expect. To remedy this case, make bpf_prog_ksym_find treat IP == ksym.end as part of the BPF program, so that is_bpf_text_address returns true when such a case occurs, and we are able to unwind reliably when the final instruction ends up being a call instruction.SUSE information
Overall state of this security issue: Analysis
This issue is currently rated as having moderate severity.
SUSE | |
---|---|
Base Score | 5.5 |
Vector | CVSS:3.1/AV:L/AC:L/PR:L/UI:N/S:U/C:N/I:N/A:H |
Attack Vector | Local |
Attack Complexity | Low |
Privileges Required | Low |
User Interaction | None |
Scope | Unchanged |
Confidentiality Impact | None |
Integrity Impact | None |
Availability Impact | High |
CVSSv3 Version | 3.1 |
Status of this issue by product and package
Please note that this evaluation state might be work in progress, incomplete or outdated. Also information for service packs in the LTSS phase is only included for issues meeting the LTSS criteria. If in doubt, feel free to contact us for clarification. The updates are grouped by state of their lifecycle. SUSE product lifecycles are documented on the lifecycle page.
Product(s) | Source package | State |
---|---|---|
Products under general support and receiving all security fixes. | ||
SUSE Enterprise Storage 7.1 | kernel-default | Analysis |
SUSE Enterprise Storage 7.1 | kernel-source | Analysis |
SUSE Linux Enterprise Desktop 15 SP5 | kernel-default | Analysis |
SUSE Linux Enterprise Desktop 15 SP5 | kernel-source | Analysis |
SUSE Linux Enterprise Desktop 15 SP6 | kernel-default | Analysis |
SUSE Linux Enterprise Desktop 15 SP6 | kernel-source | Analysis |
SUSE Linux Enterprise High Performance Computing 12 SP5 | kernel-default | Analysis |
SUSE Linux Enterprise High Performance Computing 12 SP5 | kernel-source | Analysis |
SUSE Linux Enterprise High Performance Computing 12 SP5 | kernel-source-azure | Analysis |
SUSE Linux Enterprise High Performance Computing 15 SP5 | kernel-default | Analysis |
SUSE Linux Enterprise High Performance Computing 15 SP5 | kernel-source | Analysis |
SUSE Linux Enterprise High Performance Computing 15 SP5 | kernel-source-azure | Analysis |
SUSE Linux Enterprise High Performance Computing 15 SP6 | kernel-default | Analysis |
SUSE Linux Enterprise High Performance Computing 15 SP6 | kernel-source | Analysis |
SUSE Linux Enterprise High Performance Computing 15 SP6 | kernel-source-azure | Analysis |
SUSE Linux Enterprise Micro 5.1 | kernel-default | Analysis |
SUSE Linux Enterprise Micro 5.1 | kernel-rt | Analysis |
SUSE Linux Enterprise Micro 5.1 | kernel-source-rt | Analysis |
SUSE Linux Enterprise Micro 5.2 | kernel-default | Analysis |
SUSE Linux Enterprise Micro 5.2 | kernel-rt | Analysis |
SUSE Linux Enterprise Micro 5.2 | kernel-source-rt | Analysis |
SUSE Linux Enterprise Micro 5.3 | kernel-default | Analysis |
SUSE Linux Enterprise Micro 5.3 | kernel-rt | Analysis |
SUSE Linux Enterprise Micro 5.3 | kernel-source-rt | Analysis |
SUSE Linux Enterprise Micro 5.4 | kernel-default | Analysis |
SUSE Linux Enterprise Micro 5.4 | kernel-rt | Analysis |
SUSE Linux Enterprise Micro 5.4 | kernel-source-rt | Analysis |
SUSE Linux Enterprise Micro 5.5 | kernel-source-rt | Analysis |
SUSE Linux Enterprise Module for Basesystem 15 SP5 | kernel-default | Analysis |
SUSE Linux Enterprise Module for Basesystem 15 SP5 | kernel-source | Analysis |
SUSE Linux Enterprise Module for Basesystem 15 SP6 | kernel-default | Analysis |
SUSE Linux Enterprise Module for Basesystem 15 SP6 | kernel-source | Analysis |
SUSE Linux Enterprise Module for Development Tools 15 SP5 | kernel-default | Analysis |
SUSE Linux Enterprise Module for Development Tools 15 SP5 | kernel-source | Analysis |
SUSE Linux Enterprise Module for Development Tools 15 SP6 | kernel-default | Analysis |
SUSE Linux Enterprise Module for Development Tools 15 SP6 | kernel-source | Analysis |
SUSE Linux Enterprise Module for Public Cloud 15 SP5 | kernel-source-azure | Analysis |
SUSE Linux Enterprise Module for Public Cloud 15 SP6 | kernel-source-azure | Analysis |
SUSE Linux Enterprise Real Time 12 SP5 | kernel-source-rt | Analysis |
SUSE Linux Enterprise Real Time 15 SP5 | kernel-source-rt | Analysis |
SUSE Linux Enterprise Real Time 15 SP6 | kernel-source-rt | Analysis |
SUSE Linux Enterprise Server 12 SP5 | kernel-default | Analysis |
SUSE Linux Enterprise Server 12 SP5 | kernel-source | Analysis |
SUSE Linux Enterprise Server 12 SP5 | kernel-source-azure | Analysis |
SUSE Linux Enterprise Server 15 SP5 | kernel-default | Analysis |
SUSE Linux Enterprise Server 15 SP5 | kernel-source | Analysis |
SUSE Linux Enterprise Server 15 SP5 | kernel-source-azure | Analysis |
SUSE Linux Enterprise Server 15 SP6 | kernel-default | Analysis |
SUSE Linux Enterprise Server 15 SP6 | kernel-source | Analysis |
SUSE Linux Enterprise Server 15 SP6 | kernel-source-azure | Analysis |
SUSE Linux Enterprise Server for SAP Applications 12 SP5 | kernel-default | Analysis |
SUSE Linux Enterprise Server for SAP Applications 12 SP5 | kernel-source | Analysis |
SUSE Linux Enterprise Server for SAP Applications 12 SP5 | kernel-source-azure | Analysis |
SUSE Linux Enterprise Server for SAP Applications 15 SP5 | kernel-default | Analysis |
SUSE Linux Enterprise Server for SAP Applications 15 SP5 | kernel-source | Analysis |
SUSE Linux Enterprise Server for SAP Applications 15 SP5 | kernel-source-azure | Analysis |
SUSE Linux Enterprise Server for SAP Applications 15 SP6 | kernel-default | Analysis |
SUSE Linux Enterprise Server for SAP Applications 15 SP6 | kernel-source | Analysis |
SUSE Linux Enterprise Server for SAP Applications 15 SP6 | kernel-source-azure | Analysis |
SUSE Manager Proxy 4.3 | kernel-default | Analysis |
SUSE Manager Proxy 4.3 | kernel-source | Analysis |
SUSE Manager Retail Branch Server 4.3 | kernel-default | Analysis |
SUSE Manager Retail Branch Server 4.3 | kernel-source | Analysis |
SUSE Manager Server 4.3 | kernel-default | Analysis |
SUSE Manager Server 4.3 | kernel-source | Analysis |
SUSE Real Time Module 15 SP5 | kernel-source-rt | Analysis |
SUSE Real Time Module 15 SP6 | kernel-source-rt | Analysis |
openSUSE Leap 15.5 | kernel-default | Analysis |
openSUSE Leap 15.5 | kernel-source | Analysis |
openSUSE Leap 15.5 | kernel-source-azure | Analysis |
openSUSE Leap 15.5 | kernel-source-rt | Analysis |
openSUSE Leap 15.6 | kernel-default | Analysis |
openSUSE Leap 15.6 | kernel-source | Analysis |
openSUSE Leap 15.6 | kernel-source-azure | Analysis |
openSUSE Leap 15.6 | kernel-source-rt | Analysis |
Products under Long Term Service Pack support and receiving important and critical security fixes. | ||
SUSE Linux Enterprise Desktop 15 SP4 | kernel-source | Analysis |
SUSE Linux Enterprise High Performance Computing 15 SP2 | kernel-source | Analysis |
SUSE Linux Enterprise High Performance Computing 15 SP2-ESPOS | kernel-source | Analysis |
SUSE Linux Enterprise High Performance Computing 15 SP2-LTSS | kernel-default | Analysis |
SUSE Linux Enterprise High Performance Computing 15 SP2-LTSS | kernel-source | Analysis |
SUSE Linux Enterprise High Performance Computing 15 SP3 | kernel-source | Analysis |
SUSE Linux Enterprise High Performance Computing 15 SP3-ESPOS | kernel-source | Analysis |
SUSE Linux Enterprise High Performance Computing 15 SP3-LTSS | kernel-default | Analysis |
SUSE Linux Enterprise High Performance Computing 15 SP3-LTSS | kernel-source | Analysis |
SUSE Linux Enterprise High Performance Computing 15 SP4 | kernel-source | Analysis |
SUSE Linux Enterprise High Performance Computing 15 SP4-ESPOS | kernel-default | Analysis |
SUSE Linux Enterprise High Performance Computing 15 SP4-ESPOS | kernel-source | Analysis |
SUSE Linux Enterprise High Performance Computing 15 SP4-LTSS | kernel-default | Analysis |
SUSE Linux Enterprise High Performance Computing 15 SP4-LTSS | kernel-source | Analysis |
SUSE Linux Enterprise Module for Basesystem 15 SP2 | kernel-source | Analysis |
SUSE Linux Enterprise Module for Basesystem 15 SP3 | kernel-source | Analysis |
SUSE Linux Enterprise Module for Basesystem 15 SP4 | kernel-source | Analysis |
SUSE Linux Enterprise Module for Development Tools 15 SP2 | kernel-source | Analysis |
SUSE Linux Enterprise Module for Development Tools 15 SP3 | kernel-source | Analysis |
SUSE Linux Enterprise Module for Development Tools 15 SP4 | kernel-source | Analysis |
SUSE Linux Enterprise Server 11 SP4 LTSS EXTREME CORE | kernel-default | Analysis |
SUSE Linux Enterprise Server 11 SP4 LTSS EXTREME CORE | kernel-source | Analysis |
SUSE Linux Enterprise Server 15 SP2 | kernel-source | Analysis |
SUSE Linux Enterprise Server 15 SP2-LTSS | kernel-default | Analysis |
SUSE Linux Enterprise Server 15 SP2-LTSS | kernel-source | Analysis |
SUSE Linux Enterprise Server 15 SP3 | kernel-source | Analysis |
SUSE Linux Enterprise Server 15 SP3-LTSS | kernel-default | Analysis |
SUSE Linux Enterprise Server 15 SP3-LTSS | kernel-source | Analysis |
SUSE Linux Enterprise Server 15 SP4 | kernel-source | Analysis |
SUSE Linux Enterprise Server 15 SP4-LTSS | kernel-default | Analysis |
SUSE Linux Enterprise Server 15 SP4-LTSS | kernel-source | Analysis |
SUSE Linux Enterprise Server for SAP Applications 15 SP2 | kernel-default | Analysis |
SUSE Linux Enterprise Server for SAP Applications 15 SP2 | kernel-source | Analysis |
SUSE Linux Enterprise Server for SAP Applications 15 SP3 | kernel-default | Analysis |
SUSE Linux Enterprise Server for SAP Applications 15 SP3 | kernel-source | Analysis |
SUSE Linux Enterprise Server for SAP Applications 15 SP4 | kernel-default | Analysis |
SUSE Linux Enterprise Server for SAP Applications 15 SP4 | kernel-source | Analysis |
Products past their end of life and not receiving proactive updates anymore. | ||
HPE Helion OpenStack 8 | kernel-source | Analysis |
SUSE CaaS Platform 4.0 | kernel-source | Analysis |
SUSE Enterprise Storage 6 | kernel-source | Analysis |
SUSE Enterprise Storage 7 | kernel-source | Analysis |
SUSE Linux Enterprise Desktop 12 SP3 | kernel-source | Analysis |
SUSE Linux Enterprise Desktop 12 SP4 | kernel-source | Analysis |
SUSE Linux Enterprise Desktop 15 | kernel-source | Analysis |
SUSE Linux Enterprise Desktop 15 SP1 | kernel-source | Analysis |
SUSE Linux Enterprise Desktop 15 SP2 | kernel-source | Analysis |
SUSE Linux Enterprise Desktop 15 SP3 | kernel-source | Analysis |
SUSE Linux Enterprise High Performance Computing 15 | kernel-source | Analysis |
SUSE Linux Enterprise High Performance Computing 15 SP1 | kernel-source | Analysis |
SUSE Linux Enterprise High Performance Computing 15 SP1-ESPOS | kernel-source | Analysis |
SUSE Linux Enterprise High Performance Computing 15 SP1-LTSS | kernel-source | Analysis |
SUSE Linux Enterprise High Performance Computing 15-ESPOS | kernel-source | Analysis |
SUSE Linux Enterprise High Performance Computing 15-LTSS | kernel-source | Analysis |
SUSE Linux Enterprise Micro 5.0 | kernel-default | Analysis |
SUSE Linux Enterprise Module for Basesystem 15 | kernel-source | Analysis |
SUSE Linux Enterprise Module for Basesystem 15 SP1 | kernel-source | Analysis |
SUSE Linux Enterprise Module for Development Tools 15 | kernel-source | Analysis |
SUSE Linux Enterprise Module for Development Tools 15 SP1 | kernel-source | Analysis |
SUSE Linux Enterprise Real Time 15 SP2 | kernel-source | Analysis |
SUSE Linux Enterprise Real Time 15 SP3 | kernel-source | Analysis |
SUSE Linux Enterprise Real Time 15 SP3 | kernel-source-rt | Analysis |
SUSE Linux Enterprise Real Time 15 SP4 | kernel-source | Analysis |
SUSE Linux Enterprise Real Time 15 SP4 | kernel-source-rt | Analysis |
SUSE Linux Enterprise Server 11 SP4 | kernel-source | Analysis |
SUSE Linux Enterprise Server 11 SP4 LTSS | kernel-default | Analysis |
SUSE Linux Enterprise Server 11 SP4 LTSS | kernel-source | Analysis |
SUSE Linux Enterprise Server 11 SP4-LTSS | kernel-source | Analysis |
SUSE Linux Enterprise Server 12 SP3 | kernel-source | Analysis |
SUSE Linux Enterprise Server 12 SP3-BCL | kernel-source | Analysis |
SUSE Linux Enterprise Server 12 SP3-ESPOS | kernel-source | Analysis |
SUSE Linux Enterprise Server 12 SP3-LTSS | kernel-source | Analysis |
SUSE Linux Enterprise Server 12 SP4 | kernel-source | Analysis |
SUSE Linux Enterprise Server 12 SP4-ESPOS | kernel-source | Analysis |
SUSE Linux Enterprise Server 12 SP4-LTSS | kernel-default | Analysis |
SUSE Linux Enterprise Server 12 SP4-LTSS | kernel-source | Analysis |
SUSE Linux Enterprise Server 15 | kernel-source | Analysis |
SUSE Linux Enterprise Server 15 SP1 | kernel-source | Analysis |
SUSE Linux Enterprise Server 15 SP1-BCL | kernel-source | Analysis |
SUSE Linux Enterprise Server 15 SP1-LTSS | kernel-default | Analysis |
SUSE Linux Enterprise Server 15 SP1-LTSS | kernel-source | Analysis |
SUSE Linux Enterprise Server 15 SP2-BCL | kernel-source | Analysis |
SUSE Linux Enterprise Server 15 SP3-BCL | kernel-source | Analysis |
SUSE Linux Enterprise Server 15-LTSS | kernel-default | Analysis |
SUSE Linux Enterprise Server 15-LTSS | kernel-source | Analysis |
SUSE Linux Enterprise Server for SAP Applications 12 SP3 | kernel-source | Analysis |
SUSE Linux Enterprise Server for SAP Applications 12 SP4 | kernel-default | Analysis |
SUSE Linux Enterprise Server for SAP Applications 12 SP4 | kernel-source | Analysis |
SUSE Linux Enterprise Server for SAP Applications 15 | kernel-source | Analysis |
SUSE Linux Enterprise Server for SAP Applications 15 SP1 | kernel-source | Analysis |
SUSE Manager Proxy 4.0 | kernel-source | Analysis |
SUSE Manager Proxy 4.1 | kernel-source | Analysis |
SUSE Manager Proxy 4.2 | kernel-source | Analysis |
SUSE Manager Retail Branch Server 4.0 | kernel-source | Analysis |
SUSE Manager Retail Branch Server 4.1 | kernel-source | Analysis |
SUSE Manager Retail Branch Server 4.2 | kernel-source | Analysis |
SUSE Manager Server 4.0 | kernel-source | Analysis |
SUSE Manager Server 4.1 | kernel-source | Analysis |
SUSE Manager Server 4.2 | kernel-source | Analysis |
SUSE OpenStack Cloud 8 | kernel-source | Analysis |
SUSE OpenStack Cloud 9 | kernel-default | Analysis |
SUSE OpenStack Cloud 9 | kernel-source | Analysis |
SUSE OpenStack Cloud Crowbar 8 | kernel-source | Analysis |
SUSE OpenStack Cloud Crowbar 9 | kernel-default | Analysis |
SUSE OpenStack Cloud Crowbar 9 | kernel-source | Analysis |
SUSE Real Time Module 15 SP3 | kernel-source-rt | Analysis |
SUSE Real Time Module 15 SP4 | kernel-source-rt | Analysis |
SUSE Timeline for this CVE
CVE page created: Tue May 21 18:01:23 2024CVE page last modified: Wed Jun 12 16:42:25 2024