Skip to content
KitploitKITPLOIT
ToolsBlog
Einreichen
ToolsBlog
Einreichen

Hacking-, PenTest- und Cybersicherheits-Tools für Ihr Sicherheitsarsenal!

Kitploit ist ein Verzeichnis von Hacking-, Cybersicherheits- und Pentesting-Tools. Entdecken Sie die neuesten Projekt-Updates, um Schwachstellen zu finden, Systeme zu analysieren, Tests zu automatisieren und Ihre Sicherheit zu stärken.

··Feeds·Kontakt·Datenschutz·© 2026 Kitploit

Tool-Verzeichnis

Kategorien

Alle Kategorien anzeigen
Loading categories
CVE-2026-21009-ECDSA-Nonce-Reuse-in-IoT-Firmware-Signing — Lehrreiche Python-Simulation, die die Wiederverwendung von ECDSA-Nonces bei der Signierung von IoT-Firmware demonstriert und zeigt, wie ein Angreifer aus zwei Signaturen, die dasselbe k verwenden, private Schlüssel wiederherstellen kann. | Kitploit
Tools/GitHubGitHub/george0papasotiriou/cve-2026-21009-ecdsa-nonce-reuse-in-iot-firmware-signing
IoT-SicherheitSchwachstellenanalyseExploitationKryptographieLernen & BildungFirmware-Analyse
GitHubgeorge0papasotiriou/cve-2026-21009-ecdsa-nonce-reuse-in-iot-firmware-signing

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

Lehrreiche Python-Simulation, die die Wiederverwendung von ECDSA-Nonces bei der Signierung von IoT-Firmware demonstriert und zeigt, wie ein Angreifer aus zwei Signaturen, die dasselbe k verwenden, private Schlüssel wiederherstellen kann.

Beliebteste

Alle anzeigen →

Entdecken Sie die meistgenutzten Tools unserer Community.

Alle Tools erkunden

Durchsuchen Sie unsere Tool-Sammlung

Alle Tools anzeigen →
Teilen
Repository anzeigen
vor 16 TagenNoch nicht geprüft

CVE-2026-21009 – ECDSA-Nonce-Wiederverwendung bei der IoT-Firmware-Signierung

Programmcode (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 – ECDSA-Nonce-Wiederverwendung bei der IoT-Firmware-Signierung

Severity: Critical

Übersicht

Ein IoT-Gerät signiert Firmware-Updates mit ECDSA, aber aufgrund eines schwachen Zufallszahlengenerators wird dieselbe Nonce (k) für zwei Signaturen wiederverwendet. Ein Angreifer, der beide Signaturen beobachtet, kann den privaten Schlüssel berechnen und bösartige Firmware signieren.

Details zur Schwachstelle

  • Typ: Kryptografische Schlüsselwiederherstellung
  • Auswirkung: Vollständige Umgehung der Firmware-Authentifizierung.
  • Grundursache: Die Wiederverwendung der Nonce bricht ECDSA: Bei zwei Signaturen mit demselben k kann der private Schlüssel algebraisch abgeleitet werden.

Exploit-Demonstration

Führen Sie die Simulation aus:

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

Das Skript demonstriert die Erstellung von zwei Signaturen mit demselben k. Ein realer Angreifer würde den Schlüssel mithilfe der Formel k = (h1 - h2) / (s1 - s2) und anschließend d = (s1*k - h1) / r wiederherstellen.

Tool herunterladen