Skip to content

Référence des ports

Port 9200 (TCP) – API HTTP Elasticsearch

Port par défaut de l'API REST/HTTP d'Elasticsearch pour interroger et indexer les données.

tcpRegisteredSouvent attaqué

État par défaut

Les anciennes versions d'Elasticsearch exposaient l'API HTTP sur 9200 sans authentification. Les versions modernes se lient à localhost et activent la sécurité par défaut, mais de nombreux clusters hérités restent ouverts.

Attaques courantes

  • Accès REST non authentifié pour lire, extraire ou supprimer tous les index
  • Attaques par rançon qui effacent les index et laissent une note de paiement
  • Divulgation d'informations sur le cluster, les index et les documents
  • Abus des API de scripting/gestion et bugs RCE propres à certaines versions

Durcissement

  • Lier à localhost ou à une interface privée (network.host) ; ne jamais exposer 9200 à Internet
  • Activer les fonctionnalités de sécurité (authentification et RBAC)
  • Exiger TLS pour le trafic HTTP et de transport
  • Filtrer par pare-feu vers les hôtes de confiance et placer un proxy inverse en façade si un accès distant est nécessaire
  • Maintenir Elasticsearch à jour et auditer les accès

Commande nmap

nmap -p9200 --script http-elasticsearch-head <target>

Remplacez <target> par l’hôte ou la plage que vous êtes autorisé à scanner.

Que tourne sur le port 9200 ?

Le port 9200 est le port par défaut de l'API HTTP/REST d'Elasticsearch, l'interface utilisée pour indexer, rechercher et gérer les données d'un cluster Elasticsearch. Les applications et les outils envoient des requêtes JSON à 9200 pour interroger des documents et administrer des index ; le protocole de transport distinct pour le trafic entre nœuds utilise le port 9300.

Pourquoi c'est important pour la sécurité

Elasticsearch stocke souvent des journaux, des données de recherche et des informations personnelles, toutes accessibles via une simple API REST. Les anciennes versions étaient livrées sans authentification ; quiconque atteignait 9200 pouvait donc lire, extraire ou supprimer chaque index avec des appels HTTP basiques. Cela a fait d'Elasticsearch ouvert l'une des sources les plus courantes de grandes fuites de données et d'incidents de rançon.

Comment c'est attaqué

Les attaquants scannent les ports 9200 ouverts et émettent des appels REST non authentifiés pour énumérer et extraire tous les index, exfiltrant des données sensibles. Ils suppriment ensuite souvent les index et laissent une note de rançon. Les API de gestion et de scripting, ainsi que des bugs propres à certaines versions, ont aussi été exploités pour des compromissions plus poussées, y compris l'exécution de code à distance.

Liste de durcissement

Liez Elasticsearch à localhost ou à une interface privée via network.host et gardez 9200 hors d'Internet, derrière un pare-feu ou un VPN. Activez les fonctionnalités de sécurité intégrées (authentification et RBAC), exigez TLS pour le trafic HTTP et de transport, et placez un proxy inverse en façade si un accès distant est requis. Appliquez les correctifs régulièrement et auditez les accès. Utilisez l'extrait nmap ci-dessus pour détecter les clusters exposés sur les hôtes que vous êtes autorisé à tester.

Ports liés

Questions fréquentes

Est-il sûr d'exposer Elasticsearch sur le port 9200 ?
Non. Les clusters Elasticsearch ouverts ont causé de nombreuses fuites de données et vagues de rançons. Liez à localhost ou à un réseau privé, activez la sécurité/authentification, exigez TLS et filtrez le port.
Pourquoi les clusters Elasticsearch exposés sont-ils rançonnés ?
Sans authentification, quiconque atteint l'API HTTP peut extraire et supprimer chaque index via de simples appels REST, puis laisser une note de rançon exigeant un paiement pour restaurer les données.