~ digitalchk / docs / eml-analyzer
EML Analyzer toma un archivo de correo y te dice si es phishing, y por qué. Analiza cabeceras y autenticación, extrae todos los indicadores que encuentra, puntúa el resultado de forma determinista y escribe el razonamiento para que alguien no especialista pueda seguirlo.
Cómo funciona
Análisis de cabeceras y autenticación
Resultados de SPF, DKIM y DMARC, la cadena de recibidos, y los desajustes entre lo que un mensaje dice ser y lo que demuestra.
Extracción de indicadores
URLs, dominios, direcciones, IPs y adjuntos, incluidas las redirecciones de marca desenvueltas hasta su destino real, porque un enlace que se lee como google.com puede llevar un destino muy distinto en sus parámetros.
Puntuación determinista
Una puntuación de amenaza de 0 a 100 construida con reglas explícitas y no con un modelo, así que el mismo mensaje siempre puntúa igual y cada punto es rastreable hasta una regla. La puntuación revisa el remitente, los enlaces y los adjuntos, no lo que el mensaje pide; por eso el nivel bajo dice «Sin señales técnicas», nunca «Seguro», y lleva al visitante al resumen con IA. Cuando la IA califica el contenido peor que la puntuación, por ejemplo un engaño enviado desde la cuenta real de una empresa, aparece un aviso sobre el resumen y en el informe por correo y el PDF.
Tratamiento de reenvíos
Detecta cuándo un mensaje fue reenviado y deja de atribuirle al remitente original los resultados de autenticación del reenviador, que es el fallo que hace parecer seguro a un phishing reenviado.
Resumen con IA
Una explicación escrita opcional de los hallazgos, claramente marcada como generada por IA. Funciona con los proveedores incluidos o con cualquier servicio de IA con una API de tipo Chat Completions, con un nivel de razonamiento para los modelos que lo admiten y un servicio de respaldo opcional que responde cuando el principal falla. Cuando está activo, parte del análisis (cabeceras, hallazgos y adjuntos de texto decodificados) se envía a ese proveedor; menciónalo en tu política de privacidad.
Requisitos
- WordPress 5.8 o superior
- PHP 7.4 o superior
- Un backend de eml_analyzer en marcha. Es un servicio FastAPI de código abierto que alojas tú, normalmente como contenedor. Pon su URL en Settings; en la misma máquina es http://127.0.0.1:8000
Cómo publicarlo
Pon uno de estos shortcodes en cualquier página o entrada. Cada uno es autónomo y no necesita integración con el tema.
[eml_analyzer]
Atribución. El plugin muestra una línea pequeña, «Una herramienta de Digital Checkmark», con un enlace a digitalchk.com, debajo del analizador, al pie del informe PDF y debajo de cada correo que envía. Es parte del plugin y no tiene ajuste para quitarla. Si una herramienta y un formulario de Leads Chk comparten página, la línea sale una sola vez.
Configuración
Anti abuso Recomendado
En Settings, añade tu clave de sitio y tu clave secreta de Cloudflare Turnstile. Sin ella, cualquiera puede automatizar la herramienta pública y consumir tus cuotas de los servicios externos.
Con las claves puestas, el plugin además se niega a enviar por correo un código de verificación o un informe si el visitante no pasó Turnstile hace poco. Una búsqueda normal cuenta; si no, se abre una pequeña ventana de verificación antes de enviar.
Verificación de correo Recomendado
El plugin verifica en tres capas antes de enviar un informe: formato, dominio desechable y, si añades una clave de Reoon, comprobación real de entrega. Esto protege tu reputación de envío frente a rebotes a direcciones inventadas.
Informes en PDF Opcional
Los informes se convierten a PDF con Gotenberg, que alojas tú. Pon su URL en la pestaña de informes; en la misma máquina es http://127.0.0.1:3000. Sin Gotenberg el resto del plugin funciona igual.
Entrega y marca
Configura el servidor SMTP que envía los informes y la marca que aparece en ellos: nombre, lema, logotipo, colores y portada.
Avisos y contactos Opcional
Puede avisarte por correo o por webhook cuando entra un contacto y, si usas Leads Chk, pasárselo para que guarde tus contactos y tu boletín. Todo se filtra por evento y por origen, para que no te llegue ruido.
Muro de uso con código Opcional
Los usos gratis se cuentan en el servidor, y cuántos hay lo decides tú, así que una ventana privada no los reinicia. Pasado el límite, el visitante confirma un correo con un código de 6 dígitos y la herramienta se desbloquea el resto del día. Las peticiones de código y los intentos fallidos están limitados, con un bloqueo temporal. Una dirección que nadie verificó nunca se guarda como contacto.
Captación de contactos y retención
Cuando alguien pide su informe, el plugin guarda la dirección como contacto junto con un resumen del resultado, y arma el informe solo con el resultado que el servidor guardó al hacer la consulta (hasta 2 horas), así siempre coincide con lo que encontró la herramienta. Los encuentras en Leads, y se exportan a CSV.
La retención se controla con GDPR Retention (days): los contactos más antiguos que ese plazo se borran solos mediante una tarea programada. Ponlo en 0 para desactivar el borrado, aunque no lo recomendamos. Declara en tu política de privacidad qué guardas y cuánto tiempo.
El plugin también funciona con las herramientas de privacidad de WordPress (Herramientas > Exportar datos personales y Borrar datos personales): un solo pedido exporta o borra todo lo que guarda de una dirección de correo, junto con los demás plugins de Digital Checkmark que tengas instalados.
Si tienes Leads Chk instalado, cada dirección que el plugin recoge por un informe, el muro de uso o la puerta de acceso también se envía allí, con etiquetas (la herramienta, cómo llegó la dirección, si es de empresa o personal, y el resultado) y un registro del consentimiento. Qué pasa después (solo se guarda, se ofrece la newsletter con una casilla o se suscribe) y a qué lista va se decide en la pantalla Integrations de este plugin. Las direcciones que solo se consultaron, y que pueden ser de otra persona, no pasan a Leads Chk. Leads Chk también puede poner un formulario de newsletter debajo de la herramienta.
Si algo no funciona
Todos los análisis fallan con un error de conexión.
Comprueba que el backend responde en la URL configurada en Settings. El plugin reporta el fallo en vez de devolver un análisis vacío.
Un engaño sacó 0 pero la IA lo marcó.
Es lo esperado. Un mensaje enviado desde una cuenta real (un buzón robado, o el formulario de soporte de una empresa usado para enviarlo) pasa SPF, DKIM y DMARC, así que la puntuación técnica queda baja. La IA lee lo que se pide, como una frase de recuperación, un pago o una contraseña, y sube el veredicto. Desde la 3.7.0 la página muestra un aviso cuando pasa; los textos están en AI Analysis, Score and AI.
Un phishing reenviado puntúa como seguro.
Actualiza a 3.4.0 o superior. Las versiones anteriores atribuían al remitente original la autenticación del reenviador.
Cómo pedir ayuda
Escríbenos desde la página de soporte. Incluye la versión del plugin, tus versiones de WordPress y PHP, y el texto exacto de cualquier error.
