7.2 KiB
7.2 KiB
Explotación - Frasa
Objetivo: https://www.frasa.com.mx IP: 201.158.32.25 Fecha: 2026-03-25 Hosting: Hostify/Neoclan (servidor dedicado mexicano)
Resumen Ejecutivo
Frasa presenta una superficie de ataque significativa con DNS Zone Transfer exitoso, MySQL expuesto a internet, cPanel/WHM/Webmail accesibles, y 14 puertos abiertos. La empresa maneja proyectos inmobiliarios (Villas Loma Bonita, landing pages en Unbounce) con un WordPress como sitio principal.
Hallazgos
CRÍTICOS
C1 — DNS Zone Transfer Exitoso (AXFR)
- Severidad: CRÍTICA
- Evidencia:
dig axfr frasa.com.mx @dns3.neoclan.net.mxdevuelve 53 registros completos - Datos expuestos:
- Toda la zona DNS incluyendo subdominios internos
cpanel.frasa.com.mx→ 201.158.32.25whm.frasa.com.mx→ 201.158.32.25webmail.frasa.com.mx→ 201.158.32.25landing.frasa.com.mx→ unbouncepages.com (CNAME)villaslomabonita.frasa.com.mx(proyecto inmobiliario con CalDAV/CardDAV)autoconfig/autodiscover(configuración automática de email)- Tokens ACME challenges de Let's Encrypt
- Verificación Microsoft 365 y Google
- IP secundaria: 201.158.32.34 (en SPF)
- Hosting provider: secure.hostify.com.mx (en SRV records)
- Impacto: Un atacante obtiene el mapa completo de la infraestructura sin necesidad de escaneo activo
- CVSS: 7.5 (High)
C2 — MySQL 5.7.44 Expuesto a Internet
- Severidad: CRÍTICA
- Puerto: 3306/tcp abierto
- Versión: MySQL 5.7.44
- Auth plugin: mysql_native_password (vulnerable a brute force sin rate limiting nativo)
- Capacidades expuestas: SupportsLoadDataLocal, SupportsCompression, ConnectWithDatabase
- Impacto: Brute force viable, y si se obtienen credenciales, acceso completo a todas las bases de datos
- CVSS: 9.1 (Critical)
ALTOS
A1 — cPanel Login Accesible Públicamente
- Severidad: ALTA
- URLs:
https://www.frasa.com.mx:2083/→ HTTP 200 (cPanel Login)https://cpanel.frasa.com.mx:2083/→ HTTP 200https://cpanel.frasa.com.mx/→ HTTP 200
- Nota: Expone interfaz de login cPanel sin restricción IP
- CVSS: 7.2
A2 — WHM (WebHost Manager) Accesible
- Severidad: ALTA
- URL:
https://whm.frasa.com.mx/→ HTTP 200 - Impacto: WHM permite administración completa del servidor si se obtienen credenciales
- CVSS: 7.2
A3 — Webmail Accesible Públicamente
- Severidad: ALTA
- URLs:
https://webmail.frasa.com.mx/→ HTTP 200https://webmail.frasa.com.mx:2096/→ HTTP 200
- Impacto: Permite ataques de brute force contra cuentas de correo
- CVSS: 6.5
A4 — Enumeración de Usuario WordPress
- Severidad: ALTA
- Endpoint:
/wp-json/wp/v2/users - Usuario encontrado:
guangoadmin(ID: 8) - wp-login.php: Accesible (HTTP 200, 9.9 KB) sin rate limiting visible
- Combinación: Usuario conocido + login accesible = brute force viable
- CVSS: 6.5
A5 — 14 Puertos Abiertos (Superficie de Ataque Excesiva)
- Severidad: ALTA
- Puertos abiertos:
Puerto Servicio Detalle 21 FTP Pure-FTPd 25 SMTP Exim (correo saliente) 53 DNS Named (permite zone transfer) 80 HTTP Apache 110 POP3 Dovecot 143 IMAP Dovecot 443 HTTPS Apache + WordPress 465 SMTPS Exim 587 Submission Exim 993 IMAPS Dovecot 995 POP3S Dovecot 2083 cPanel cPanel Login 2096 Webmail cPanel Webmail 3306 MySQL MySQL 5.7.44 - Impacto: Servidor multifunción (web + email + DB + FTP + DNS) sin segmentación
- CVSS: 7.0
MEDIOS
M1 — Rank Math PRO REST API Expuesta
- Severidad: MEDIA
- Endpoints expuestos (20+): saveModule, toolsAction, updateMode, updateSettings, updateRedirection, updateMeta, updateSchemas, updateMetaBulk, setupWizard, importCSV, etc.
- Auth: Requiere autenticación (401 Forbidden), pero la exposición de rutas revela funcionalidad interna
- Riesgo: Si se obtiene un token/cookie válido, se puede manipular SEO, redirecciones, y metadatos
- CVSS: 5.3
M2 — Breakdance Builder REST API Expuesta
- Severidad: MEDIA
- Endpoints:
/breakdance/v1/,/breakdance/v1/icons/export - Auth: Requiere autenticación
- CVSS: 4.3
M3 — wp-admin/upgrade.php Accesible
- Severidad: MEDIA
- URL:
https://www.frasa.com.mx/wp-admin/upgrade.php→ HTTP 200 - Título: "Actualización de WordPress"
- Impacto: Confirma WordPress y podría usarse para fingerprinting de versión
- CVSS: 4.3
M4 — wp-admin/setup-config.php Retorna 409
- Severidad: MEDIA
- URL:
https://www.frasa.com.mx/wp-admin/setup-config.php→ HTTP 409 (Conflict) - Impacto: El archivo existe y responde, indica que la instalación base no fue limpiada
- CVSS: 3.7
M5 — 7/7 Headers de Seguridad Ausentes
- Severidad: MEDIA
- Headers faltantes: HSTS, CSP, X-Frame-Options, X-Content-Type-Options, X-XSS-Protection, Referrer-Policy, Permissions-Policy
- CVSS: 5.3
M6 — DMARC sp=none para Subdominios
- Severidad: MEDIA
- DMARC:
v=DMARC1;p=reject;sp=none;adkim=r;aspf=r;pct=100 - Nota: Dominio principal protegido (p=reject) pero subdominios NO (sp=none)
- Impacto: Se puede spoofear email desde @villaslomabonita.frasa.com.mx u otros subdominios
- CVSS: 5.0
INFORMATIVOS
I1 — Proyecto Inmobiliario "Villas Loma Bonita" Expuesto en DNS
- Subdominio con CalDAV/CardDAV configurado hacia secure.hostify.com.mx
- Autodiscover configurado para email
- Sugiere operación activa con contactos y calendarios
I2 — Landing Pages en Unbounce
landing.frasa.com.mx→ CNAME a unbouncepages.com- Actualmente devuelve 404 (posible landing page expirada/eliminada)
I3 — Entorno Híbrido Microsoft 365 + cPanel
- Verificación MS365 en TXT records
- Google Site Verification presente
- Correo posiblemente migrado parcialmente
I4 — XMLRPC Deshabilitado
xmlrpc.phpdevuelve 404 — buena práctica de seguridad
Cadena de Ataque Potencial
- DNS Zone Transfer → Obtener mapa completo de infraestructura
- Enumerar usuario WP
guangoadminvia REST API - Brute force wp-login.php (sin rate limiting visible)
- Alternativamente: brute force MySQL 3306 (mysql_native_password, sin rate limiting)
- Si MySQL exitoso → dump de wp_users → obtener hash de password
- Acceso a cPanel/WHM → control total del servidor
Recomendaciones (Priorizadas)
- URGENTE: Bloquear DNS Zone Transfer (restringir AXFR a IPs autorizadas)
- URGENTE: Cerrar MySQL 3306 a internet (solo acceso local o VPN)
- ALTA: Restringir acceso a cPanel/WHM/Webmail por IP o VPN
- ALTA: Implementar rate limiting en wp-login.php (plugin como Wordfence o Limit Login Attempts)
- ALTA: Deshabilitar enumeración de usuarios via REST API
- MEDIA: Implementar headers de seguridad (HSTS, CSP, X-Frame-Options, etc.)
- MEDIA: Cambiar DMARC sp=none a sp=reject para subdominios
- MEDIA: Eliminar archivos innecesarios (setup-config.php, upgrade.php accesibles)
- BAJA: Reducir superficie de ataque consolidando servicios o segmentando en diferentes IPs