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.
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.
What is CWE-1329?
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]
Trajeto do atacante passo a passo
- 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
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
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
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
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.
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.
The refrigerator has no means of patching and is hacked becoming a spewer of email spam. Secure Other
The device automatically patches itself and provides considerable more protection against being hacked. 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.
How to detect CWE-1329
O Plexicus deteta automaticamente o CWE-1329 e abre um PR de correção em menos de 60 segundos.
O Codex Remedium analisa cada commit, identifica esta fraqueza exata e entrega um pull request pronto para revisão com o patch. Sem tickets. Sem transferências.
Frequently asked questions
O que é o 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.
Qual a gravidade do CWE-1329?
A MITRE não publicou uma classificação de probabilidade de exploração para esta fraqueza. Trate-a como impacto médio até o seu modelo de ameaças provar o contrário.
Que linguagens ou plataformas são afetadas pelo CWE-1329?
MITRE lists the following affected platforms: Not OS-Specific, Not Architecture-Specific, Not Technology-Specific, ICS/OT.
Como posso prevenir o 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.
Como é que o Plexicus deteta e corrige o CWE-1329?
O motor SAST do Plexicus correlaciona a assinatura de fluxo de dados do CWE-1329 em cada commit. Quando é encontrada uma correspondência, o nosso agente Codex Remedium abre um PR de correção com o código corrigido, testes e um resumo de uma linha para o revisor.
Onde posso saber mais sobre o CWE-1329?
A MITRE publica a definição canónica em https://cwe.mitre.org/data/definitions/1329.html. Pode também consultar a documentação da OWASP e do NIST para orientações adjacentes.
Weaknesses related to CWE-1329
Reliance on Insufficiently Trustworthy Component
This weakness occurs when a system integrates a component that cannot be fully trusted to meet security, reliability, and maintenance…
Use of Unmaintained Third Party Components
This weakness occurs when software depends on third-party libraries, frameworks, or modules that are no longer actively updated or…
Firmware Not Updateable
This vulnerability occurs when a hardware product lacks a mechanism for users to install firmware updates, leaving known security flaws…
Missing Ability to Patch ROM Code
A system or System-on-Chip (SoC) lacks a mechanism to update its initial boot code stored in Read-Only Memory (ROM), permanently exposing…
Further reading
- MITRE — CWE-1329 oficial https://cwe.mitre.org/data/definitions/1329.html
- Report on Improving Cybersecurity in the Health Care Industry https://www.phe.gov/Preparedness/planning/CyberTF/Documents/report2017.pdf
- Zyxel Flaw Powers New Mirai IoT Botnet Strain https://krebsonsecurity.com/2020/03/zxyel-flaw-powers-new-mirai-iot-botnet-strain/
- dmi_jtag.sv line 324 https://github.com/HACK-EVENT/hackatdac21/blob/main/piton/design/chip/tile/ariane/src/riscv-dbg/src/dmi_jtag.sv#L324C9-L324C87
- Fix for dmi_jtag.sv https://github.com/HACK-EVENT/hackatdac21/commit/c94ce5f9487a41c77ede0bbc8daf4da66c39f42a
Pare de pagar por desenvolvedor.
Comece a fechar o ciclo.
O Plexicus é o ASPM nativo de IA que verifica, filtra, corrige, pentesta e explica — de forma autónoma. Programadores ilimitados, repos ilimitados, ações de IA de utilização justa. Nível gratuito real, €269/mo anual quando estiver pronto.