Skip to content
Fencer Vulns
medium 5.5

CVE-2023-52463 json

efivarfs: force RO when remounting if SetVariable is not supported

published 2024-02-23 2 y ago modified 2026-06-17 4 mo ago also EUVD-2023-57088

cvss
5.5
version 3.1, NVD
cisa kev
Not listed
not in CISA's catalog
epss
0.2%
EPSS 0.2% chance of exploitation in 30 days, percentile 15%
public exploits
0
none known

Summary

In the Linux kernel, the following vulnerability has been resolved:

efivarfs: force RO when remounting if SetVariable is not supported

If SetVariable at runtime is not supported by the firmware we never assign a callback for that function. At the same time mount the efivarfs as RO so no one can call that. However, we never check the permission flags when someone remounts the filesystem as RW. As a result this leads to a crash looking like this:

$ mount -o remount,rw /sys/firmware/efi/efivars $ efi-updatevar -f PK.auth PK

[ 303.279166] Unable to handle kernel NULL pointer dereference at virtual address 0000000000000000 [ 303.280482] Mem abort info: [ 303.280854] ESR = 0x0000000086000004 [ 303.281338] EC = 0x21: IABT (current EL), IL = 32 bits [ 303.282016] SET = 0, FnV = 0 [ 303.282414] EA = 0, S1PTW = 0 [ 303.282821] FSC = 0x04: level 0 translation fault [ 303.283771] user pgtable: 4k pages, 48-bit VAs, pgdp=000000004258c000 [ 303.284913] [0000000000000000] pgd=0000000000000000, p4d=0000000000000000 [ 303.286076] Internal error: Oops: 0000000086000004 [#1] PREEMPT SMP [ 303.286936] Modules linked in: qrtr tpm_tis tpm_tis_core crct10dif_ce arm_smccc_trng rng_core drm fuse ip_tables x_tables ipv6 [ 303.288586] CPU: 1 PID: 755 Comm: efi-updatevar Not tainted 6.3.0-rc1-00108-gc7d0c4695c68 #1 [ 303.289748] Hardware name: Unknown Unknown Product/Unknown Product, BIOS 2023.04-00627-g88336918701d 04/01/2023 [ 303.291150] pstate: 60400005 (nZCv daif +PAN -UAO -TCO -DIT -SSBS BTYPE=--) [ 303.292123] pc : 0x0 [ 303.292443] lr : efivar_set_variable_locked+0x74/0xec [ 303.293156] sp : ffff800008673c10 [ 303.293619] x29: ffff800008673c10 x28: ffff0000037e8000 x27: 0000000000000000 [ 303.294592] x26: 0000000000000800 x25: ffff000002467400 x24: 0000000000000027 [ 303.295572] x23: ffffd49ea9832000 x22: ffff0000020c9800 x21: ffff000002467000 [ 303.296566] x20: 0000000000000001 x19: 00000000000007fc x18: 0000000000000000 [ 303.297531] x17: 0000000000000000 x16: 0000000000000000 x15: 0000aaaac807ab54 [ 303.298495] x14: ed37489f673633c0 x13: 71c45c606de13f80 x12: 47464259e219acf4 [ 303.299453] x11: ffff000002af7b01 x10: 0000000000000003 x9 : 0000000000000002 [ 303.300431] x8 : 0000000000000010 x7 : ffffd49ea8973230 x6 : 0000000000a85201 [ 303.301412] x5 : 0000000000000000 x4 : ffff0000020c9800 x3 : 00000000000007fc [ 303.302370] x2 : 0000000000000027 x1 : ffff000002467400 x0 : ffff000002467000 [ 303.303341] Call trace: [ 303.303679] 0x0 [ 303.303938] efivar_entry_set_get_size+0x98/0x16c [ 303.304585] efivarfs_file_write+0xd0/0x1a4 [ 303.305148] vfs_write+0xc4/0x2e4 [ 303.305601] ksys_write+0x70/0x104 [ 303.306073] __arm64_sys_write+0x1c/0x28 [ 303.306622] invoke_syscall+0x48/0x114 [ 303.307156] el0_svc_common.constprop.0+0x44/0xec [ 303.307803] do_el0_svc+0x38/0x98 [ 303.308268] el0_svc+0x2c/0x84 [ 303.308702] el0t_64_sync_handler+0xf4/0x120 [ 303.309293] el0t_64_sync+0x190/0x194 [ 303.309794] Code: ???????? ???????? ???????? ???????? (????????) [ 303.310612] ---[ end trace 0000000000000000 ]---

Fix this by adding a .reconfigure() function to the fs operations which we can use to check the requested flags and deny anything that's not RO if the firmware doesn't implement SetVariable at runtime.

Patch / fix

  • Linux Linux 5.8, 5.10.209, 5.15.148, 6.1.75, 6.6.14, 6.7.2, 6.8
  • linux Debian 12 6.1.76-1
  • linux Debian 14, Debian 13 6.6.15-1

debian advisories DEBIAN-CVE-2023-52463

  • linux Ubuntu 22.04 LTS 5.15.0-102.112
  • linux-aws Ubuntu 22.04 LTS 5.15.0-1057.63
  • linux-gcp Ubuntu 22.04 LTS 5.15.0-1055.63
  • linux-gke Ubuntu 22.04 LTS 5.15.0-1054.59
  • linux-ibm Ubuntu 22.04 LTS 5.15.0-1050.53
  • linux-kvm Ubuntu 22.04 LTS 5.15.0-1054.59
  • linux-azure Ubuntu 22.04 LTS 5.15.0-1060.69
  • linux-gkeop Ubuntu 22.04 LTS 5.15.0-1040.46

ubuntu advisories UBUNTU-CVE-2023-52463

Ubuntu security data © Canonical Ltd., from https://github.com/canonical/ubuntu-security-notices via OSV; changed: normalised to fixed package versions per release. CC BY-SA 4.0

  • kernel-rt RHEL 8 4.18.0-553.16.1.rt7.357.el8_10
  • kernel-rt-kvm RHEL 8 4.18.0-553.16.1.rt7.357.el8_10
  • kernel-rt-core RHEL 8 4.18.0-553.16.1.rt7.357.el8_10
  • kernel-rt-modules RHEL 8 4.18.0-553.16.1.rt7.357.el8_10
  • kernel-rt-debug-kvm RHEL 8 4.18.0-553.16.1.rt7.357.el8_10
  • kernel-rt-debug-core RHEL 8 4.18.0-553.16.1.rt7.357.el8_10
  • kernel-rt-debug-modules RHEL 8 4.18.0-553.16.1.rt7.357.el8_10
  • kernel-rt-modules-extra RHEL 8 4.18.0-553.16.1.rt7.357.el8_10

red hat advisories RHSA-2024:5102RHSA-2024:6567RHSA-2024:5101RHSA-2024:5672RHSA-2024:5673

  • kernel-rt Linux Micro 6.1, Linux Micro 6.0 6.4.0-25.1
  • kernel-source-rt Linux Micro 6.1, Linux Micro 6.0 6.4.0-25.1
  • kernel-livepatch-MICRO-6-0-RT_Update_5 Linux Micro 6.1, Linux Micro 6.0 1-1.1
  • kernel-azure SLE Module for Public Cloud 15 SP6, openSUSE Leap 15.6 6.4.0-150600.8.5.4
  • kernel-syms-azure SLE Module for Public Cloud 15 SP6, openSUSE Leap 15.6 6.4.0-150600.8.5.1
  • kernel-source-azure SLE Module for Public Cloud 15 SP6, openSUSE Leap 15.6 6.4.0-150600.8.5.4
  • dtb-aarch64 openSUSE Leap 15.5 5.14.21-150500.55.59.1
  • kernel-64kb SLE Module for Basesystem 15 SP5, openSUSE Leap 15.5 5.14.21-150500.55.59.1

suse advisories SUSE-SU-2025:20166-1SUSE-SU-2025:20249-1SUSE-SU-2024:2135-1SUSE-SU-2024:1480-1SUSE-SU-2024:1466-1SUSE-SU-2024:0977-1

  • kernel AlmaLinux 9 5.14.0-427.35.1.el9_4
  • rv AlmaLinux 9 5.14.0-427.35.1.el9_4
  • perf AlmaLinux 9 5.14.0-427.35.1.el9_4
  • rtla AlmaLinux 9 5.14.0-427.35.1.el9_4
  • bpftool AlmaLinux 9 7.3.0-427.35.1.el9_4
  • libperf AlmaLinux 9 5.14.0-427.35.1.el9_4
  • kernel-rt AlmaLinux 9 5.14.0-427.35.1.el9_4
  • kernel-64k AlmaLinux 9 5.14.0-427.35.1.el9_4

almalinux advisories ALSA-2024:6567ALSA-2024:5101ALSA-2024:5102

  • kernel Rocky Linux 9 5.14.0-427.35.1.el9_4.cloud.1.0
  • kernel Rocky Linux 8 4.18.0-553.16.1.el8_10.cloud.0.1
  • kernel Rocky Linux 9 5.14.0-427.35.1.el9_4
  • kernel-rt Rocky Linux 8 4.18.0-553.16.1.rt7.357.el8_10
  • kernel Rocky Linux 8 4.18.0-553.16.1.el8_10

rocky linux advisories RXSA-2024:6567RXSA-2024:5101RLSA-2024:6567RLSA-2024:5102RLSA-2024:5101

Vendor advisories

What the vendors themselves say about their products: affected, fixed or not affected, and what to do.

red hat product security vex CVE-2023-52463 updated cvss 5.5

kernel: efivarfs: force RO when remounting if SetVariable is not supported

  • Red Hat Enterprise Linux 6 perf, kernel, python-perf, kernel-kdump, kernel-firmware, kernel-bootwrapper, +1 more Red Hat Enterprise Linux 7 perf, kernel, bpftool, kernel-rt, python-perf, kernel-kdump, +8 more
    affected: workaround, no fix planned “No mitigation is currently available for this vulnerability. Make sure to perform the updates as they become available.”
  • Red Hat Enterprise Linux 9 kernel-rt, kernel-rt-kvm, kernel-rt-core, kernel-rt-modules, kernel-rt-debug-kvm, kernel-rt-debug-core, +12 more
    affected: workaround, no fix available “No mitigation is currently available for this vulnerability. Make sure to perform the updates as they become available.”
  • Red Hat CodeReady Linux Builder EUS (v.9.2) kernel-debuginfo-common-s390x 5.14.0-284.80.1.el9_2, kernel-debuginfo-common-x86_64 5.14.0-284.80.1.el9_2, kernel-debuginfo-common-aarch64 5.14.0-284.80.1.el9_2, kernel-debuginfo-common-ppc64le 5.14.0-284.80.1.el9_2
    fixed: vendor fix “No mitigation is currently available for this vulnerability. Make sure to perform the updates as they become available.” RHSA-2024:5672
  • Red Hat Enterprise Linux AppStream (v. 9) rv 5.14.0-427.35.1.el9_4, perf 5.14.0-427.35.1.el9_4, rtla 5.14.0-427.35.1.el9_4, kernel-devel-matched 5.14.0-427.35.1.el9_4, kernel-64k-devel-matched 5.14.0-427.35.1.el9_4, kernel-debug-devel-matched 5.14.0-427.35.1.el9_4, +6 more
    fixed: vendor fix “No mitigation is currently available for this vulnerability. Make sure to perform the updates as they become available.” RHSA-2024:6567
  • Red Hat Enterprise Linux AppStream EUS (v.9.2) perf 5.14.0-284.80.1.el9_2, rtla 5.14.0-284.80.1.el9_2, kernel-devel-matched 5.14.0-284.80.1.el9_2, kernel-64k-devel-matched 5.14.0-284.80.1.el9_2, kernel-debug-devel-matched 5.14.0-284.80.1.el9_2, kernel-debuginfo-common-s390x 5.14.0-284.80.1.el9_2, +5 more
    fixed: vendor fix “No mitigation is currently available for this vulnerability. Make sure to perform the updates as they become available.” RHSA-2024:5672
  • Red Hat Enterprise Linux BaseOS (v. 8) perf 4.18.0-553.16.1.el8_10, kernel 4.18.0-553.16.1.el8_10, bpftool 4.18.0-553.16.1.el8_10, kernel-core 4.18.0-553.16.1.el8_10, kernel-tools 4.18.0-553.16.1.el8_10, python3-perf 4.18.0-553.16.1.el8_10, +15 more
    fixed: vendor fix “No mitigation is currently available for this vulnerability. Make sure to perform the updates as they become available.” RHSA-2024:5101
  • Red Hat Enterprise Linux BaseOS (v. 9) bpftool 7.3.0-427.35.1.el9_4, kernel 5.14.0-427.35.1.el9_4, kernel-64k 5.14.0-427.35.1.el9_4, kernel-core 5.14.0-427.35.1.el9_4, kernel-tools 5.14.0-427.35.1.el9_4, python3-perf 5.14.0-427.35.1.el9_4, +28 more
    fixed: vendor fix “No mitigation is currently available for this vulnerability. Make sure to perform the updates as they become available.” RHSA-2024:6567
  • Red Hat Enterprise Linux BaseOS EUS (v.9.2) bpftool 7.0.0-284.80.1.el9_2, kernel 5.14.0-284.80.1.el9_2, kernel-64k 5.14.0-284.80.1.el9_2, kernel-core 5.14.0-284.80.1.el9_2, kernel-tools 5.14.0-284.80.1.el9_2, python3-perf 5.14.0-284.80.1.el9_2, +28 more
    fixed: vendor fix “No mitigation is currently available for this vulnerability. Make sure to perform the updates as they become available.” RHSA-2024:5672
show 8 more
  • Red Hat Enterprise Linux CRB (v. 8) kernel-debuginfo-common-x86_64 4.18.0-553.16.1.el8_10, kernel-debuginfo-common-aarch64 4.18.0-553.16.1.el8_10, kernel-debuginfo-common-ppc64le 4.18.0-553.16.1.el8_10
    fixed: vendor fix “No mitigation is currently available for this vulnerability. Make sure to perform the updates as they become available.” RHSA-2024:5101
  • Red Hat Enterprise Linux CRB (v. 9) libperf 5.14.0-427.35.1.el9_4, kernel-debuginfo-common-s390x 5.14.0-427.35.1.el9_4, kernel-debuginfo-common-x86_64 5.14.0-427.35.1.el9_4, kernel-debuginfo-common-aarch64 5.14.0-427.35.1.el9_4, kernel-debuginfo-common-ppc64le 5.14.0-427.35.1.el9_4
    fixed: vendor fix “No mitigation is currently available for this vulnerability. Make sure to perform the updates as they become available.” RHSA-2024:6567
  • Red Hat Enterprise Linux NFV (v. 8) kernel-rt 4.18.0-553.16.1.rt7.357.el8_10, kernel-rt-kvm 4.18.0-553.16.1.rt7.357.el8_10, kernel-rt-core 4.18.0-553.16.1.rt7.357.el8_10, kernel-rt-modules 4.18.0-553.16.1.rt7.357.el8_10, kernel-rt-debug-kvm 4.18.0-553.16.1.rt7.357.el8_10, kernel-rt-debug-core 4.18.0-553.16.1.rt7.357.el8_10, +4 more
    fixed: vendor fix “No mitigation is currently available for this vulnerability. Make sure to perform the updates as they become available.” RHSA-2024:5102
  • Red Hat Enterprise Linux NFV (v. 9) kernel-rt 5.14.0-427.35.1.el9_4, kernel-rt-kvm 5.14.0-427.35.1.el9_4, kernel-rt-core 5.14.0-427.35.1.el9_4, kernel-rt-modules 5.14.0-427.35.1.el9_4, kernel-rt-debug-kvm 5.14.0-427.35.1.el9_4, kernel-rt-debug-core 5.14.0-427.35.1.el9_4, +6 more
    fixed: vendor fix “No mitigation is currently available for this vulnerability. Make sure to perform the updates as they become available.” RHSA-2024:6567
  • Red Hat Enterprise Linux Real Time EUS (v.9.2) kernel-rt 5.14.0-284.80.1.rt14.365.el9_2, kernel-rt-core 5.14.0-284.80.1.rt14.365.el9_2, kernel-rt-modules 5.14.0-284.80.1.rt14.365.el9_2, kernel-rt-debug-core 5.14.0-284.80.1.rt14.365.el9_2, kernel-rt-modules-core 5.14.0-284.80.1.rt14.365.el9_2, kernel-rt-debug-modules 5.14.0-284.80.1.rt14.365.el9_2, +4 more Red Hat Enterprise Linux Real Time for NFV EUS (v.9.2) kernel-rt 5.14.0-284.80.1.rt14.365.el9_2, kernel-rt-kvm 5.14.0-284.80.1.rt14.365.el9_2, kernel-rt-core 5.14.0-284.80.1.rt14.365.el9_2, kernel-rt-modules 5.14.0-284.80.1.rt14.365.el9_2, kernel-rt-debug-kvm 5.14.0-284.80.1.rt14.365.el9_2, kernel-rt-debug-core 5.14.0-284.80.1.rt14.365.el9_2, +6 more
    fixed: vendor fix “No mitigation is currently available for this vulnerability. Make sure to perform the updates as they become available.” RHSA-2024:5673
  • Red Hat Enterprise Linux RT (v. 8) kernel-rt 4.18.0-553.16.1.rt7.357.el8_10, kernel-rt-core 4.18.0-553.16.1.rt7.357.el8_10, kernel-rt-modules 4.18.0-553.16.1.rt7.357.el8_10, kernel-rt-debug-core 4.18.0-553.16.1.rt7.357.el8_10, kernel-rt-debug-modules 4.18.0-553.16.1.rt7.357.el8_10, kernel-rt-modules-extra 4.18.0-553.16.1.rt7.357.el8_10, +2 more
    fixed: vendor fix “No mitigation is currently available for this vulnerability. Make sure to perform the updates as they become available.” RHSA-2024:5102
  • Red Hat Enterprise Linux RT (v. 9) kernel-rt 5.14.0-427.35.1.el9_4, kernel-rt-core 5.14.0-427.35.1.el9_4, kernel-rt-modules 5.14.0-427.35.1.el9_4, kernel-rt-debug-core 5.14.0-427.35.1.el9_4, kernel-rt-modules-core 5.14.0-427.35.1.el9_4, kernel-rt-debug-modules 5.14.0-427.35.1.el9_4, +4 more
    fixed: vendor fix “No mitigation is currently available for this vulnerability. Make sure to perform the updates as they become available.” RHSA-2024:6567
  • Red Hat Enterprise Linux AppStream EUS (v.9.2) kernel-doc 5.14.0-284.80.1.el9_2
    not affected: vulnerable code not present

Red Hat CSAF VEX © Red Hat, Inc., from https://security.access.redhat.com/data/csaf/v2/vex/; changed: reduced to product statuses and remediations. CC BY 4.0 · csaf

CISA SSVC

Exploitation
none
Automatable
no
Technical impact
partial
Assessed
2 y ago

Exploit prediction

0.24% chance of exploitation in the next 30 days, higher than 15% of all scored CVEs (FIRST EPSS, 2026-11-08).

CVSS scores

assigned by version score vector
NVD 3.1 5.5 CVSS:3.1/AV:L/AC:L/PR:L/UI:N/S:U/C:N/I:N/A:H

Affected products

  • Linux Linux

Classification

Weakness
Technology feeds

References

Sources

Fencer Vulns keeps one entry per vulnerability: the CVE id wins, then GHSA, and records that alias each other are merged, except that two CVEs always keep separate entries. The same data is available as JSON.