Ir al contenido

Herramientas y automatización para IMAP y POP3

Por

Madurezreviewed
Última revisión
Publicado
Última actualización

El workflow IMAP y POP3 explica los estados y comandos que deben entenderse antes de automatizarlos. Mantén separados protocolo, transporte, buzón e identidad.

Pregunta Herramienta Lo que no demuestra
¿qué capacidades anuncia? OpenSSL o NSE que se mantengan tras autenticar
¿STARTTLS funciona? openssl s_client que el servidor lo exija
¿puede una cuenta listar o recuperar? cURL permisos sobre otros buzones
¿hay diferencias entre endpoints? comandos equivalentes que sean el mismo backend

Ncat es útil para el banner en 110/tcp o 143/tcp. OpenSSL es la opción principal para TLS implícito y STARTTLS porque conserva el certificado y permite continuar el diálogo.

cURL admite URLs imap://, imaps://, pop3:// y pop3s://. --user USERNAME evita colocar el secreto en el comando y hace que cURL lo solicite:

Listar buzones IMAP mediante TLS
curl --user USERNAME --url 'imaps://FQDN/'

--sdoc-reqd exige que una URL de texto ascienda mediante STARTTLS:

Exigir STARTTLS en IMAP
curl --sdoc-reqd --user USERNAME --url 'imap://FQDN/'

En POP3, una URL sin identificador lista mensajes:

Listar mensajes POP3
curl --user USERNAME --url 'pop3s://FQDN/'

La recuperación puede actualizar marcas o el estado del cliente. No uses operaciones de borrado durante enumeración. --verbose ayuda a diagnosticar negociación, pero puede incluir cabeceras y datos sensibles.

Para una recolección repetible, --connect-timeout 5 limita el establecimiento de la conexión y --max-time 30 limita la operación completa. --silent --show-error conserva los errores sin el medidor. --output FILE separa la respuesta del diagnóstico:

Listar buzones IMAPS con límites y evidencia
curl --silent --show-error \
--connect-timeout 5 \
--max-time 30 \
--user USERNAME \
--output evidence/imap-mailboxes.txt \
--url 'imaps://FQDN/'

Un archivo vacío con código de salida cero puede representar una vista sin buzones. Un timeout o error TLS no tiene esa interpretación. Para STARTTLS conserva los mismos límites, cambia la URL a imap:// y añade --sdoc-reqd. No habilites reintentos generales sobre operaciones que puedan modificar marcas o borrar mensajes.

imap-capabilities y pop3-capabilities consultan capacidades sin credenciales:

Comparar capacidades de los endpoints habituales
nmap -sV -p 110,143,993,995 \
--script imap-capabilities,pop3-capabilities TARGET_IP

imap-ntlm-info y pop3-ntlm-info intentan obtener metadatos durante una negociación NTLM cuando el servidor la ofrece:

Consultar metadatos NTLM anunciados
nmap -sV -p 110,143,993,995 \
--script imap-ntlm-info,pop3-ntlm-info TARGET_IP

Los scripts imap-brute y pop3-brute realizan intentos de autenticación. Generan eventos por cuenta y pueden activar bloqueos. Solo encajan cuando existe una matriz de identidades, una frecuencia definida y un criterio de parada.

Si NSE y OpenSSL difieren, comprueba puerto, SNI, STARTTLS y momento de la consulta. Si cURL autentica y el diálogo manual no, compara mecanismo SASL, formato del usuario y quoting. Si IMAP lista buzones y POP3 devuelve un maildrop vacío, POP3 puede estar limitado a INBOX o sujeto a otra política.