x86/sgx: Fix deadlock in SGX NUMA node search (Linux Linux)

CVE-2024-49856
MEDIUM 5.5

At a glance

Source
NVD
EPSS
EPSS 0.21 % · percentile 11 ()
State
PUBLISHED
Published
Updated
Assigner
Linux
NVD status
Modified

Description

In the Linux kernel, the following vulnerability has been resolved: x86/sgx: Fix deadlock in SGX NUMA node search When the current node doesn't have an EPC section configured by firmware and all other EPC sections are used up, CPU can get stuck inside the while loop that looks for an available EPC page from remote nodes indefinitely, leading to a soft lockup. Note how nid_of_current will never be equal to nid in that while loop because nid_of_current is not set in sgx_numa_mask. Also worth mentioning is that it's perfectly fine for the firmware not to setup an EPC section on a node. While setting up an EPC section on each node can enhance performance, it is not a requirement for functionality. Rework the loop to start and end on *a* node that has SGX memory. This avoids the deadlock looking for the current SGX-lacking node to show up in the loop when it never will.

Weaknesses (CWE)

  • CWE-835 — Loop with Unreachable Exit Condition

References

Scores

VersionScoreVectorScored by
CVSS 3.1MEDIUM 5.5CVSS:3.1/AV:L/AC:L/PR:L/UI:N/S:U/C:N/I:N/A:HNVD · nvd@nist.gov (Primary)

European references

CERT-FR advisories

Affected configurations (NVD CPE)

Affected products

ProductVersions
Linux · Linuxaffected 901ddbb9ecf5425183ea0c09d10c2fd7868dce54 < 40fb64257dab507d86b5f1f2a62f3669ef0c91a8 ; affected 901ddbb9ecf5425183ea0c09d10c2fd7868dce54 < 20c96d0aaabfe361fc2a11c173968dc67feadbbf ; affected 901ddbb9ecf5425183ea0c09d10c2fd7868dce54 < fb2d057539eda67ec7cfc369bf587e6518a9b99d ; affected 901ddbb9ecf5425183ea0c09d10c2fd7868dce54 < 0f89fb4042c08fd143bfc28af08bf6c8a0197eea ; affected 901ddbb9ecf5425183ea0c09d10c2fd7868dce54 < 8132510c915815e6b537ab937d94ed66893bc7b8 ; affected 901ddbb9ecf5425183ea0c09d10c2fd7868dce54 < 9c936844010466535bd46ea4ce4656ef17653644
Linux · Linuxaffected 5.13 ; unaffected 0 < 5.13 ; unaffected 5.15.168 ≤ 5.15.* ; unaffected 6.1.113 ≤ 6.1.* ; unaffected 6.6.54 ≤ 6.6.* ; unaffected 6.10.13 ≤ 6.10.*

Sources

SourceLicence
CVE List (CVEProject cvelistV5)CVE Program Terms of Use
EPSS (FIRST.org)FIRST — attribution requested
ENISA EUVDENISA — reproduction authorised, source acknowledged
CERT-FR (ANSSI)Licence Ouverte / Etalab 2.0
NVD (NIST) via fkie-cad/nvd-json-data-feedsPublic domain — this product uses data from the NVD API but is not endorsed or certified by the NVD