IMAP conserve le courrier sur le serveur et permet à un client de travailler dessus sur place : lister les dossiers, sélectionner une boîte aux lettres, chercher et récupérer des messages individuels ou des en-têtes. Il écoute sur 143 (en clair, souvent avec STARTTLS) et 993 (TLS implicite), et contrairement à POP3 il est avec état et étiqueté, de sorte que chaque commande client porte une étiquette que le serveur reprend dans sa réponse finale. La valeur offensive va dans deux directions : des identifiants valides se transforment en lecture complète de la boîte aux lettres (identifiants, liens de réinitialisation de mot de passe, documents internes, chaînes de réponses pour le hameçonnage), et l'implémentation serveur elle-même (couramment Dovecot, parfois Cyrus ou Courier) véhicule ses propres failles.
Trouver et orienter le service#
nmap -p143,993 -sV --script imap-capabilities,imap-ntlm-info <target>
# capabilities reveal STARTTLS, LOGINDISABLED, and AUTH= mechanisms
# imap-ntlm-info leaks the AD/NetBIOS/domain/FQDN from an NTLM challenge
openssl s_client -connect <target>:993 -quiet # implicit-TLS session
a LOGIN user pass # tagged login once connected
Une réponse étiquetée a OK signifie que la commande a réussi, a NO un échec propre (mauvais identifiants, permission refusée), et a BAD une erreur de protocole/syntaxe. Sur 143, exécutez d'abord A1 CAPABILITY : LOGINDISABLED signifie que le LOGIN en clair est refusé jusqu'à ce que STARTTLS soit négocié, et les jetons AUTH= listent les mécanismes SASL disponibles pour le spraying.
Pages#
- Énumération : listage des capacités, empreinte d'implémentation basée sur la bannière, et validation des noms d'utilisateur par différenciation des réponses.
- Authentification :
LOGINen clair, mécanismes SASLAUTHENTICATE, spraying, et ce que changeLOGINDISABLED. - Accès à la boîte aux lettres :
LIST/SELECT/SEARCH/FETCHaprès authentification pour lire et piller le courrier, et export en masse. - Exploitation serveur : failles d'implémentation de Dovecot, Cyrus et Courier et leur filiation.