search menu icon-carat-right cmu-wordmark

CERT Coordination Center

BIOS implementations permit unsafe SMM function calls to memory locations outside of SMRAM

Vulnerability Note VU#631788

Original Release Date: 2015-03-20 | Last Revised: 2015-07-08

Overview

Multiple BIOS implementations permit unsafe System Management Mode (SMM) function calls to memory locations outside of SMRAM.

Description

Multiple BIOS implementations permit unsafe System Management Mode (SMM) function calls to memory locations outside of SMRAM. According to Corey Kallenberg of LegbaCore:

System Management Mode (SMM) is the most privileged execution mode on the x86 processor. Non-SMM code can neither read nor write SMRAM (SMM RAM). Hence, even a ring 0 level attacker should be unable to gain access to SMM.

However, on modern systems, some SMM code calls or interprets function pointers located outside of SMRAM in an unsafe way. This provides opportunity for a ring 0 level attacker to break into SMM.


In order to exploit the vulnerability, an attacker must have access to physical memory. The attacker can gain code execution in the context of SMM by first manipulating a function pointer or function called by SMM and then writing bytes to System Management Interrupt (SMI) command port 0xb2 to trigger SMM.

Impact

A local, authenticated attacker may be able to execute arbitrary code in the context of SMM and bypass Secure Boot. In systems that do not use protected range registers, an attacker may be able to reflash firmware.

Solution

Please see the Vendor Information section below to determine if your system may be affected. We are continuing to communicate with vendors as they investigate these vulnerabilities.

Intel has provided the following mitigation guidance for vendors:

Starting in Haswell-based client and server platforms, the "SMM Code Access Check" feature is available in the CPU. If SMM code enables this in the appropriate MSR, then logical processors are prevented from executing SMM code outside the ranges defined by the SMRR. If SMI code jumps outside these ranges, the CPU will assert a machine check exception. During BIOS development, this can be an effective mechanism for BIOS developers to identify insecure call-outs from SMM, and during runtime, this feature can also be effective at blocking certain attacks that redirect SMM execution outside SMRAM.

Vendor Information

631788
 

Dell Computer Corporation, Inc. Affected

Notified:  December 10, 2014 Updated: March 19, 2015

Status

Affected

Vendor Statement

We have not received a statement from the vendor.

Vendor Information

We are not aware of further vendor information regarding this vulnerability.

Vendor References

Addendum

Dell Latitude E6430 BIOS Revision A09 and possibly others are affected.

If you have feedback, comments, or additional information about this vulnerability, please send us email.

Hewlett-Packard Company Affected

Notified:  December 10, 2014 Updated: March 19, 2015

Status

Affected

Vendor Statement

We have not received a statement from the vendor.

Vendor Information

We are not aware of further vendor information regarding this vulnerability.

Vendor References

Addendum

HP EliteBook 850 G1 BIOS revision L71 Ver. 01.09 and possibly others are affected.

If you have feedback, comments, or additional information about this vulnerability, please send us email.

Lenovo Affected

Notified:  December 10, 2014 Updated: October 15, 2015

Statement Date:   October 14, 2015

Status

Affected

Vendor Statement

We have not received a statement from the vendor.

Vendor Information

We are not aware of further vendor information regarding this vulnerability.

Vendor References

American Megatrends Incorporated (AMI) Not Affected

Notified:  December 10, 2014 Updated: April 10, 2015

Statement Date:   April 09, 2015

Status

Not Affected

Vendor Statement

AMI is working with OEMs to ensure that derivative projects in the field and production are also not affected by this vulnerability. End users should contact their board manufacturer for further information about availability of BIOS updates for their products.

Vendor Information

We are not aware of further vendor information regarding this vulnerability.

IBM Corporation Not Affected

Notified:  December 10, 2014 Updated: January 08, 2015

Statement Date:   January 07, 2015

Status

Not Affected

Vendor Statement

We have not received a statement from the vendor.

Vendor Information

We are not aware of further vendor information regarding this vulnerability.

Insyde Software Corporation Not Affected

Notified:  December 10, 2014 Updated: February 02, 2015

Statement Date:   February 02, 2015

Status

Not Affected

Vendor Statement

Insyde has reviewed the Insyde BIOS code and believes all Insyde systems are not vulnerable to this issue.  However to be prudent, Insyde has hardened all of the interfaces in InsydeH2O SMM handlers.

The updates were available in Tags 03.74.26 and 05.04.25 which was the 2014 work week 25 and 26 release.  The internal tracking number was IB02960648. OEM and ODM customers are advised to contact their Insyde support representative fordocumentation and assistance. End users are advised to contact the manufacturer of their equipment.

Vendor Information

We are not aware of further vendor information regarding this vulnerability.

Intel Corporation Not Affected

Notified:  December 10, 2014 Updated: March 02, 2015

Statement Date:   March 02, 2015

Status

Not Affected

Vendor Statement

This class of vulnerabilities redirects SMM code to execute instructions
outside SMRAM, and we often refer to them as "SMM Call-Out Vulnerabilities".
Intel is not currently aware of SMM call-out vulnerabilities in our supported
products.  In addition, the following mitigation may be relevant to the
discussion of these vulnerabilities.

Starting in Haswell-based client and server platforms, the "SMM Code Access
Check" feature is available in the CPU. If SMM code enables this in the
appropriate MSR, then logical processors are prevented from executing SMM code
outside the ranges defined by the SMRR. If SMI code jumps outside these ranges,
the CPU will assert a machine check exception. During BIOS development, this
can be an effective mechanism for BIOS developers to identify insecure
call-outs from SMM, and during runtime, this feature can also be effective at
blocking certain attacks that redirect SMM execution outside SMRAM.

Vendor Information

We are not aware of further vendor information regarding this vulnerability.

Apple Unknown

Notified:  December 10, 2014 Updated: December 10, 2014

Status

Unknown

Vendor Statement

We have not received a statement from the vendor.

Vendor References

    AsusTek Computer Inc. Unknown

    Notified:  December 10, 2014 Updated: December 10, 2014

    Status

    Unknown

    Vendor Statement

    We have not received a statement from the vendor.

    Vendor References

      Gateway Unknown

      Notified:  December 10, 2014 Updated: December 10, 2014

      Status

      Unknown

      Vendor Statement

      We have not received a statement from the vendor.

      Vendor References

        Phoenix Technologies Ltd. Unknown

        Notified:  December 10, 2014 Updated: December 10, 2014

        Status

        Unknown

        Vendor Statement

        We have not received a statement from the vendor.

        Vendor References

          Sony Corporation Unknown

          Notified:  December 10, 2014 Updated: December 10, 2014

          Status

          Unknown

          Vendor Statement

          We have not received a statement from the vendor.

          Vendor References

            Toshiba Unknown

            Notified:  December 10, 2014 Updated: December 10, 2014

            Status

            Unknown

            Vendor Statement

            We have not received a statement from the vendor.

            Vendor References

              View all 13 vendors View less vendors


              CVSS Metrics

              Group Score Vector
              Base 6 AV:L/AC:H/Au:S/C:C/I:C/A:C
              Temporal 5.1 E:POC/RL:U/RC:UR
              Environmental 5.3 CDP:MH/TD:M/CR:ND/IR:H/AR:ND

              References

              Acknowledgements

              Thanks to Corey Kallenberg of LegbaCore for reporting this vulnerability.

              This document was written by Joel Land.

              Other Information

              CVE IDs: CVE-2015-0949
              Date Public: 2015-03-20
              Date First Published: 2015-03-20
              Date Last Updated: 2015-07-08 23:16 UTC
              Document Revision: 25

              Sponsored by CISA.