Skip to content
KitploitKITPLOIT
FerramentasBlog
Enviar
FerramentasBlog
Enviar

Ferramentas de Hacking, PenTest e Cibersegurança para o seu Arsenal de Segurança!

Kitploit é um diretório de ferramentas de hacking, cibersegurança e pentesting. Descubra as últimas atualizações de projetos para encontrar vulnerabilidades, analisar sistemas, automatizar testes e fortalecer sua segurança.

··Feeds·Contato·Privacidade·© 2026 Kitploit

Diretório de Ferramentas

Categorias

Ver todas as categorias
Loading categories
CVE-2026-21009-ECDSA-Nonce-Reuse-in-IoT-Firmware-Signing — Simulação educacional em Python demonstrando a reutilização de nonce ECDSA na assinatura de firmware de IoT, mostrando como um atacante pode recuperar chaves privadas a partir de duas assinaturas que compartilham o mesmo k. | Kitploit
Ferramentas/GitHubGitHub/george0papasotiriou/cve-2026-21009-ecdsa-nonce-reuse-in-iot-firmware-signing
Segurança IoTAnálise de VulnerabilidadesExploraçãoCriptografiaAprendizado e EducaçãoAnálise de Firmware
GitHubgeorge0papasotiriou/cve-2026-21009-ecdsa-nonce-reuse-in-iot-firmware-signing

CVE-2026-21009-ECDSA-Nonce-Reuse-in-IoT-Firmware-Signing

Simulação educacional em Python demonstrando a reutilização de nonce ECDSA na assinatura de firmware de IoT, mostrando como um atacante pode recuperar chaves privadas a partir de duas assinaturas que compartilham o mesmo k.

Mais Populares

Ver todos →

Descubra as ferramentas mais usadas pela nossa comunidade.

Explore todas as ferramentas

Navegue pela nossa coleção de ferramentas

Ver todas as ferramentas →
Compartilhar
Ver Repositório
há 16 diasAinda não revisado

CVE-2026-21009 – Reutilização de Nonce ECDSA na Assinatura de Firmware IoT

Código do Programa (Python)

root@kitploit:~
# ecdsa_nonce_reuse_sim.py - Signing firmware with repeated nonce (k)
import ecdsa, hashlib

sk = ecdsa.SigningKey.generate(curve=ecdsa.NIST256p)
vk = sk.get_verifying_key()

# Sign two different firmware images with same nonce due to bad RNG
# In reality, this can happen with deterministic k if seed is constant.
# We'll simulate by using the same k manually (not possible with ecdsa library, so fake it)
def sign_with_fixed_k(sk, msg_hash, k):
    # Simplified: return signature (r,s) using fixed k (for educational purposes)
    # Not actual ECDSA, but shows concept.
    r = (k * ecdsa.NIST256p.generator).x()
    k_inv = pow(k, -1, ecdsa.NIST256p.order)
    s = k_inv * (int.from_bytes(msg_hash, 'big') + r * sk.privkey.secret_multiplier) % ecdsa.NIST256p.order
    return ecdsa.ecdsa.Signature(r, s)

msg1 = b"Firmware v1.0"
msg2 = b"Firmware v2.0"
h1 = hashlib.sha256(msg1).digest()
h2 = hashlib.sha256(msg2).digest()

# Use same k
k = 123456789
sig1 = sign_with_fixed_k(sk, h1, k)
sig2 = sign_with_fixed_k(sk, h2, k)

print("Two signatures with same k. Attacker can recover private key from (r,s1) and (r,s2).")

CVE-2026-21009 – Reutilização de Nonce ECDSA na Assinatura de Firmware IoT

Severity: Critical

Visão Geral

Um dispositivo IoT assina atualizações de firmware usando ECDSA, mas devido a um gerador de números aleatórios fraco, o mesmo nonce (k) é reutilizado para duas assinaturas. Um atacante que observe ambas as assinaturas pode calcular a chave privada e assinar firmware malicioso.

Detalhes da Vulnerabilidade

  • Tipo: Recuperação de Chave Criptográfica
  • Impacto: Contorno total da autenticação de firmware.
  • Causa Raiz: A reutilização de nonce quebra o ECDSA: dadas duas assinaturas com o mesmo k, a chave privada pode ser derivada algebricamente.

Demonstração do Exploit

Execute a simulação:

root@kitploit:~
pip install ecdsa
python ecdsa_nonce_reuse_sim.py

O script demonstra a criação de duas assinaturas com o mesmo k. Um atacante real recuperaria a chave usando a fórmula k = (h1 - h2) / (s1 - s2) e depois d = (s1*k - h1) / r.

Baixar ferramenta