HP has disclosed 16 high-impact UEFI firmware vulnerabilities that could allow threat actors to infect devices with malware that gain high privileges and remain undetectable by installed security software.
These vulnerabilities affect multiple HP models, including laptops, desktop computers, PoS systems, and edge computing nodes.
The flaws were discovered by researchers at Binarly, the same team that published another set of UEFI flaws affecting 25 computer vendors back in February.
A few days after that, the founder of Binarly presented five novel UEFI flaws impacting HP at the OffensiveCon, and HP released the corresponding security update to address them.
Today, Binarly, HP, and the CERT/CC have coordinated the disclosure of the complete set of the newly discovered vulnerabilities, including 11 new vulnerabilities affecting HPE UEFI firmware.
These vulnerabilities are separated into three buckets based on the component/feature being exploited:
SMM Callout (Privilege Escalation)
CVE-2021-39298: callout leading to privilege escalation (CVSS – 7.5)
CVE-2021-23932: callout leading to privilege escalation (CVSS – 8.2)
CVE-2021-23933: callout leading to privilege escalation (CVSS – 8.2)
SSM (System Management Module)
CVE-2021-23924: heap buffer overflow leading to arbitrary code execution (CVSS – 8.2)
CVE-2021-23925: memory corruption leading to arbitrary code execution (CVSS – 8.2)
CVE-2021-23926: memory corruption leading to arbitrary code execution (CVSS – 8.2)
CVE-2021-23927: memory corruption leading to arbitrary code execution (CVSS – 8.2)
CVE-2021-23928: memory corruption leading to arbitrary code execution (CVSS – 8.2)
CVE-2021-23929: memory corruption leading to arbitrary code execution (CVSS – 8.2)
CVE-2021-23930: heap buffer overflow leading to arbitrary code execution (CVSS – 8.2)
CVE-2021-23931: heap buffer overflow leading to arbitrary code execution (CVSS – 8.2)
CVE-2021-23934: memory corruption leading to arbitrary code execution(CVSS – 8.2)
DXE (Driver eXecution Environment)
CVE-2021-39297: stack buffer overflow leading to arbitrary code execution (CVSS – 7.7)
CVE-2021-39299: stack buffer overflow leading to arbitrary code execution (CVSS – 8.2)
CVE-2021-39300: stack overflow leading to arbitrary code execution (CVSS – 8.2)
CVE-2021-39301: stack overflow leading to arbitrary code execution (CVSS – 7.7)
Because both DXE and SSM are activated before the operating system starts, any flaws exploited in these components exceed Kernel OS privileges and bypass all protections.
Also, a capable malicious actor could potentially exploit them to implant persistent firmware malware that survives OS updates and bypasses UEFI secure Boot, Intel Boot Guard, and virtualization security solutions.
“The active exploitation of all the discovered vulnerabilities can’t be detected by firmware integrity monitoring systems due to limitations of the Trusted Platform Module (TPM) measurement. The remote device health attestation solutions will not detect the affected systems due to the design limitations in visibility of the firmware runtime,” mentions Binarly’s report on the vulnerabilities.
“Unfortunately, most of the issues in our reported vulnerabilities are repeatable failures, some of which are due to the complexity of the codebase or legacy components that get less security attention, but are still widely used in the field.”
Firmware malware is not theoretical, as we have reported on state-sponsored hacking groups deploying UEFI malware, such as MoonBounce, ESPecter, and a FinSpy loader, in the past.
At this point, the only way to address the security risk is to apply the available firmware updates from HP’s BIOS upgrade portal, or by following these instructions.
A broader supply chain problem
One of the flaws, CVE-2021-39298, was identified as an AMD reference code vulnerability, and as such, it doesn’t affect only HP but numerous computer vendors who use the particular firmware driver (AgesaSmmSaveMemoryConfig).
This flaw is a case of misuse of the EFI_BOOT_SERVICES and EFI_RUNTIME_SERVICES because it allows unprivileged DXE runtime to run code inside SMM, which is against the established security practices.
As such, the CERT/CC will coordinate with all affected vendors to help them push fixes for this privilege escalation flaw, at least for supported products.