Weakness · High

CWE-1273: Device Unlock Credential Sharing

What it is

The credentials necessary for unlocking a device are shared across multiple parties and may expose sensitive information.

MITRE CWE 4.19.1

Severity (our rating)
High
Likelihood of exploit
Not rated by MITRE
Introduced during
Integration, Manufacturing
Exploited in the wild
No CVE in CISA's catalog

In more detail

"Unlocking a device" often means activating certain unadvertised debug and manufacturer-specific capabilities of a device using sensitive credentials. Unlocking a device might be necessary for the purpose of troubleshooting device problems. For example, suppose a device contains the ability to dump the content of the full system memory by disabling the memory-protection mechanisms. Since this is a highly security-sensitive capability, this capability is "locked" in the production part. Unless the device gets unlocked by supplying the proper credentials, the debug capabilities are not available. For cases where the chip designer, chip manufacturer (fabricator), and manufacturing and assembly testers are all employed by the same company, the risk of compromise of the credentials is greatly reduced. However, the risk is greater when the chip designer is employed by one company, the chip manufacturer is employed by another company (a foundry), and the assemblers and testers are employed by yet a third company. Since these different companies will need to perform various tests on the device to verify correct device function, they all need to share the unlock key. Unfortunately, the level of secrecy and policy might be quite different at each company, greatly increasing the risk of sensitive credentials being compromised.

What an attacker can do

  • Modify Memory (Confidentiality, Integrity, Availability, Access Control, Accountability, Authentication, Authorization, Non-Repudiation)
  • Read Memory (Confidentiality, Integrity, Availability, Access Control, Accountability, Authentication, Authorization, Non-Repudiation)
  • Modify Files or Directories (Confidentiality, Integrity, Availability, Access Control, Accountability, Authentication, Authorization, Non-Repudiation)
  • Read Files or Directories (Confidentiality, Integrity, Availability, Access Control, Accountability, Authentication, Authorization, Non-Repudiation)
  • Modify Application Data (Confidentiality, Integrity, Availability, Access Control, Accountability, Authentication, Authorization, Non-Repudiation)
  • Execute Unauthorized Code or Commands (Confidentiality, Integrity, Availability, Access Control, Accountability, Authentication, Authorization, Non-Repudiation)
  • Gain Privileges or Assume Identity (Confidentiality, Integrity, Availability, Access Control, Accountability, Authentication, Authorization, Non-Repudiation)
  • Bypass Protection Mechanism (Confidentiality, Integrity, Availability, Access Control, Accountability, Authentication, Authorization, Non-Repudiation)

How to prevent it

Integration

  • Ensure the unlock credentials are shared with the minimum number of parties and with utmost secrecy. To limit the risk associated with compromised credentials, where possible, the credentials should be part-specific.

Manufacturing

  • Ensure the unlock credentials are shared with the minimum number of parties and with utmost secrecy. To limit the risk associated with compromised credentials, where possible, the credentials should be part-specific.

CWE-1273 on MITRE's CWE site

H2 Security

Found it in your code?

We review where it appears, fix it with your team, and check it was not already used against you.

Talk to our team

T Academy

Stop writing it in the first place

Learn to build software and systems without weaknesses like this one, with practice on real hosts in your browser, every objective checked on the machine.

Start free

Source: MITRE Common Weakness Enumeration, CWE version 4.19.1. CWE is a trademark of The MITRE Corporation.