Cet article explique comment Cato bloque automatiquement le masquage de domaine en réévaluant en continu le véritable nom d'hôte à travers les phases d'inspection DNS, TLS et HTTP. Cela garantit que le trafic Command-and-Control (CnC) déguisé est immédiatement détecté et bloqué.
Le masquage de domaine est une technique utilisée par les acteurs malveillants pour déguiser le trafic malveillant en une communication légitime. Il exploite la manière dont les réseaux de distribution de contenu (CDNs) et le HTTPS traitent les noms de domaine. Lors d'une connexion HTTPS standard, deux identifiants de domaine sont visibles à différentes étapes :
- SNI (Server Name Indication) : Envoyé en clair lors de l'initialisation TLS, indiquant le nom d'hôte prévu que le client souhaite atteindre
- En-tête Host : Envoyé plus tard dans la requête HTTP chiffrée, spécifiant le domaine réel étant accédé
Avec le masquage de domaine, les attaquants désaccordent volontairement ces deux champs, par exemple, en utilisant un domaine bénin dans le SNI (ex. example.com) et un domaine malveillant dans l'en-tête Host (ex. malveillant-cnc.com). Cela permet au trafic Command-and-Control (CnC) de sembler destiné à un service légitime, souvent caché derrière des fournisseurs cloud ou CDN majeurs.
Contrairement à d'autres solutions qui nécessitent des règles spéciales ou des mises à jour pour gérer le masquage de domaine, l'architecture de Cato détecte et bloque intrinsèquement les tentatives de masquage de domaine. Elle le fait en réévaluant continuellement la véritable identité d'un flux à mesure que plus d'informations deviennent disponibles (pour plus d'informations, voir Comprendre le flux de paquets avec l'architecture Cato SPACE, qui explique ce processus de réévaluation dynamique).
Cato utilise un concept appelé nom d'hôte unifié, un identifiant mis à jour dynamiquement qui représente la véritable destination d'un flux. Cet identifiant est affiné à chaque étape d'inspection :
- Lors de la résolution DNS, Cato identifie le DNAME, le domaine associé à l'adresse IP de destination
- Lors de l'initialisation TLS, Cato observe l'indication du nom de serveur (SNI), qui montre le nom d'hôte que le client essaie d'atteindre
- Après l'inspection TLS, une fois le trafic chiffré déchiffré, Cato peut voir l'en-tête Host HTTP, révélant le domaine réel étant accédé
Cato réévalue le nom d'hôte unifié à chacune de ces étapes. Si le domaine de l'en-tête Host entre en conflit ou diffère du SNI d'origine, Cato le traite comme une nouvelle information et déclenche une réévaluation à travers les moteurs Pare-feu et Système de prévention des intrusions (IPS).
Cela signifie que les deux produits sont effectivement ré-appliqués avec le nouveau contexte du nom d'hôte. Si l'hôte nouvellement révélé est malveillant (c'est-à-dire configuré pour être bloqué par le Pare-feu ou inclus dans une signature de blocage IPS), Cato le bloque immédiatement, même si le SNI d'origine et l'adresse IP de destination semblaient bénins.
Cette inspection par couches garantit que les canaux CnC tentant de se cacher derrière les domaines de confiance sont bloqués dès que la véritable destination est exposée.
Pour valider la protection de Cato contre le masquage de domaine, vous pouvez reproduire vous-même le processus de détection :
- Créer une règle de pare-feu : Assurez-vous d'avoir une règle de pare-feu configurée pour bloquer les anonymiseurs (ou en créez une si elle n'est pas déjà présente).
-
Envoyer une requête de test : Exécutez la commande curl suivante :
curl -v https://example.com -H 'Hôte : expressvpn.com'La commande est bloquée par le Pare-feu
-
Vérifier le blocage : Dans le CMA, vérifiez la page Événements sous les hits de règle de pare-feu pour confirmer le blocage. Dans les attributs de l'événement, le champ IP de Destination est l'adresse IP de examplee.com, tandis que le champ Nom de domaine est mis à jour avec le domaine qui est apparu en dernier dans l'en-tête Host HTTP : expressvpn.com.
Optionnel : Vous pouvez également capturer le trafic dans Wireshark (si envoyé en clair plutôt qu'en HTTPS) pour visualiser l'en-tête Host et confirmer l'événement de blocage.
Après l'application de la Configuration, vous pouvez vérifier le comportement en exécutant la commande suivante:curl -v https://chatgpt.com -H 'Hôte : echo.free.beeceptor.com'
Ces étapes fournissent un moyen transparent d'observer comment Cato neutralise les tentatives de masquage de domaine grâce à son processus de réévaluation post-inspection.
Ci-dessous un exemple de capture Wireshark montrant les flux DNS et HTTP du test :
Il montre une requête DNS vers examplee.com, suivie d'une requête HTTP où l'en-tête Host pointe vers expressvpn.com. La réponse HTTP retourne 403 Interdit, confirmant que Cato a bloqué avec succès la requête masquée par le domaine.
Le masquage de domaine est une technique utilisée pour cacher des communications malveillantes derrière des domaines légitimes. Alors que certaines solutions ont du mal à identifier le trafic qui se cache derrière des domaines légitimes, l'architecture de Cato, avec la réévaluation unifiée du nom d'hôte et la revalidation à double moteur, bloque intrinsèquement ces tentatives. En mettant continuellement à jour le SNI, l'en-tête Host et les informations IP à travers les étapes d'inspection, Cato garantit que les canaux CnC se cachant derrière des domaines de confiance ne passent jamais.
0 commentaire
Cet article n'accepte pas de commentaires.