
Denegación de Servicio en WordPress (CVE-2014-9016)
Descargo de responsabilidad
El contenido de este script está destinado a ser utilizado únicamente de manera ética.
No utilice este script si no tiene permiso por escrito del propietario del equipo.
Si realiza acciones ilegales, es probable que sea arrestado y procesado en toda la extensión de la ley. Primus27 no se responsabiliza si usted hace un mal uso de cualquiera de los scripts; son solo para prueba de concepto.
La aplicación aquí presente debe ser utilizada solo en entornos de prueba con las autorizaciones escritas adecuadas de las personas responsables correspondientes.
Exploit
- Dejar fuera de línea los servicios de WordPress automatizando un ataque de contraseña larga
- Este script ataca WordPress en la capa de aplicación explotando:
- La falta de aplicación de contraseñas máximas
- La falta de medidas de seguridad adicionales como CAPTCHAs
Solución
- Actualizar WordPress a >5.0.1
Características
- Automatizar la interrupción de un sitio WordPress
- Puede ejecutarse en modo headless o verbose
- Optimizado significativamente desde la versión 1 (no disponible en GitHub)
Capturas de pantalla

Demostración de la aplicación (Inicio del script)

Demostración de la aplicación (Fin del script)
Requisitos e Instalación
- Requiere que la versión de WordPress sea <5.0.1
- Python 3.6+
- Linux (probado)
- Instalar todas las dependencias desde el archivo requirements.txt.
pip3 install -r requirements.txt
Argumentos
Argumentos requeridos:
T || --target
- Especificar la dirección IP o URL de la máquina WordPress.
- Si se especifica una dirección IP, el script construye una URL (http://{IP_Address}/wp-admin)
- Si se especifica una URL, el script no construye una URL.
Argumentos opcionales:
-
--attempts
- Especificar el número de intentos antes de que finalice el script.
- Predeterminado: 500
- NOTA: El script finaliza automáticamente después de 5 intentos fallidos.
-
--attempts
- Especificar el número de intentos antes de que finalice el script.
- Predeterminado: 500
- NOTA: El script finaliza automáticamente después de 5 intentos fallidos.
-
--length
- Especificar la longitud base de la entrada de contraseña.
- Predeterminado: 1000000
-
-nF || --noFeedback
- Desactiva la salida de las entradas de usuario y contraseña, mostrando solo si el intento se completó o falló.
- Predeterminado: Deshabilitado
-
-V || --verbose
- Indicador para que el programa no se ejecute en modo headless. Esto lanza un navegador y muestra cada acción.
- Predeterminado: Deshabilitado
-
--version
- Muestra la versión del programa
Uso
- Ejecutar 'wp_kill.py' en la terminal con argumentos (ver arriba)
Comandos de inicio
- Ataque típico
python3 wp_kill.py -T TARGET_IP
Registro de cambios
Versión 1.0 - Lanzamiento inicial
- El objetivo WordPress queda fuera de línea
- Parámetros del menú CLI
Versión 2.0 - Mejoras de rendimiento y características
- Se añadió la opción personalizada 'attempts'
- Se añadió la opción personalizada 'length'
- Se añadió la opción 'no feedback'
- Se añadió la opción 'verbose'
- Se mejoró significativamente la velocidad de generación de contraseñas usando una semilla
- Se mejoró significativamente el rendimiento al usar la misma sesión de FireFox
Versión 2.1 - Custom Username & Address
- Se añadió el argumento de nombre de usuario personalizado (ver argumento username)
- Se añadió la dirección personalizada (ver argumento target)
Características en desarrollo
- Soporte para multiprocesamiento