CWE-1329 Base Incomplet

Reliance on Component That is Not Updateable

This vulnerability occurs when a product depends on a component that cannot be updated or patched to fix security flaws or critical bugs.

Définition

What is CWE-1329?

This vulnerability occurs when a product depends on a component that cannot be updated or patched to fix security flaws or critical bugs.
When a vulnerability is discovered in an un-updatable component, product owners are left with no practical way to secure their systems. The only recourse is often a complete replacement, which can be prohibitively expensive or operationally disruptive. This leaves the product permanently exposed to attacks or failures. This is a common and severe issue with hardware like ROM chips, firmware, and embedded systems, which historically lack update mechanisms. Software is not immune, as it can rely on outdated, unsupported third-party libraries or drivers that are essential for functionality but no longer maintained. In critical sectors like healthcare, legacy devices may operate for decades, creating vast attack surfaces with known vulnerabilities and no modern defenses. This reliance on frozen-in-time components creates long-term, unmanageable risk.
Impact réel

Real-world CVEs caused by CWE-1329

  • Chain: network-attached storage (NAS) device has a critical OS command injection (CWE-78) vulnerability that is actively exploited to place IoT devices into a botnet, but some products are "end-of-support" and cannot be patched (CWE-1277). [REF-1097]

Comment les attaquants l'exploitent

Parcours de l'attaquant étape par étape

  1. 1

    A refrigerator has an Internet interface for the official purpose of alerting the manufacturer when that refrigerator detects a fault. Because the device is attached to the Internet, the refrigerator is a target for hackers who may wish to use the device other potentially more nefarious purposes.

  2. 2

    A System-on-Chip (SOC) implements a Root-of-Trust (RoT) in ROM to boot secure code. However, at times this ROM code might have security vulnerabilities and need to be patched. Since ROM is immutable, it can be impossible to patch.

  3. 3

    ROM does not have built-in application-programming interfaces (APIs) to patch if the code is vulnerable. Implement mechanisms to patch the vulnerable ROM code.

  4. 4

    The example code is taken from the JTAG module of the buggy OpenPiton SoC of HACK@DAC'21. JTAG is protected with a password checker. Access to JTAG operations will be denied unless the correct password is provided by the user. This user-provided password is first sent to the HMAC module where it is hashed with a secret crypto key. This user password hash (pass_hash) is then compared with the hash of the correct password (exp_hash). If they match, JTAG will then be unlocked.

  5. 5

    However, the SoC's crypto key is hardcoded into the design and cannot be updated [REF-1387]. Therefore, if the key is leaked somehow, there is no way to reprovision the key without having the device replaced.

Exemple de code vulnérable

Vulnerable Other

A refrigerator has an Internet interface for the official purpose of alerting the manufacturer when that refrigerator detects a fault. Because the device is attached to the Internet, the refrigerator is a target for hackers who may wish to use the device other potentially more nefarious purposes.

Vulnérable Other
The refrigerator has no means of patching and is hacked becoming a spewer of email spam.
Exemple de code sécurisé

Secure Other

Sécurisé Other
The device automatically patches itself and provides considerable more protection against being hacked.
What changed: the unsafe sink is replaced (or the input is validated/escaped) so the same payload no longer triggers the weakness.
Liste de contrôle de prévention

How to prevent CWE-1329

  • Requirements Specify requirements that each component should be updateable, including ROM, firmware, etc.
  • Architecture and Design Design the product to allow for updating of its components. Include the external infrastructure that might be necessary to support updates, such as distribution servers.
  • Architecture and Design / Implementation With hardware, support patches that can be programmed in-field or during manufacturing through hardware fuses. This feature can be used for limited patching of devices after shipping, or for the next batch of silicon devices manufactured, without changing the full device ROM.
  • Implementation Implement the necessary functionality to allow each component to be updated.
Signaux de détection

How to detect CWE-1329

Architecture or Design Review Moderate

Check the consumer or maintainer documentation, the architecture/design documentation, or the original requirements to ensure that the documentation includes details for how to update the firmware.

Correction automatique Plexicus

Plexicus détecte automatiquement CWE-1329 et ouvre une PR de correction en moins de 60 secondes.

Codex Remedium analyse chaque commit, identifie cette faiblesse précise et livre une pull request prête à être relue avec le correctif. Pas de tickets. Pas de transferts.

Questions fréquentes

Frequently asked questions

Qu'est-ce que CWE-1329 ?

This vulnerability occurs when a product depends on a component that cannot be updated or patched to fix security flaws or critical bugs.

Quelle est la gravité de CWE-1329 ?

MITRE n'a pas publié de note de probabilité d'exploitation pour cette faiblesse. Traitez-la comme un impact moyen jusqu'à ce que votre modèle de menace prouve le contraire.

Quels langages ou plateformes sont affectés par CWE-1329 ?

MITRE lists the following affected platforms: Not OS-Specific, Not Architecture-Specific, Not Technology-Specific, ICS/OT.

Comment puis-je prévenir CWE-1329 ?

Specify requirements that each component should be updateable, including ROM, firmware, etc. Design the product to allow for updating of its components. Include the external infrastructure that might be necessary to support updates, such as distribution servers.

Comment Plexicus détecte et corrige CWE-1329 ?

Le moteur SAST de Plexicus reconnaît la signature de flux de données de CWE-1329 à chaque commit. Lorsqu'une correspondance est trouvée, notre agent Codex Remedium ouvre une PR de correction avec le code corrigé, les tests et un résumé d'une ligne pour le relecteur.

Où puis-je en savoir plus sur CWE-1329 ?

MITRE publie la définition canonique à https://cwe.mitre.org/data/definitions/1329.html. Vous pouvez également consulter la documentation OWASP et NIST pour des conseils adjacents.

Prêt quand vous l'êtes

Arrêtez de payer par développeur.
Commencez à fermer la boucle.

Plexicus est l'ASPM natif IA qui scanne, filtre, corrige, penteste et explique — de façon autonome. Développeurs illimités, dépôts illimités, actions IA à usage équitable. Vrai niveau gratuit, €269/mo annuel quand vous êtes prêt.