Guide de sécurité Elasticsearch
DepuisRecherche élastiquea été publié pour la première fois par Shay Bannon en 2010, il est devenu l'un des moteurs de recherche et d'analyse les plus utilisés sur le marché, que de nombreuses entreprises utilisent pour naviguer dans les bases de données et les documents. Cependant, avec bases de données non sécurisées attaqué 18 fois par jour par des pirates informatiques, la protection d'Elasticsearch est essentielle pour prévenir les violations de données.
Dans ce guide de sécurité Elasticsearch, nous allons examiner quelques bonnes pratiques pour assurer la sécurité du moteur et certains outils de surveillance que vous pouvez utiliser pour surveiller le service.
Comment les pirates informatiques s’introduisent-ils dans Elasticsearch ?
Elasticsearch agit comme un référentiel de documents sur l'ensemble de votre réseau et, même si cela vous aide à trouver des données plus efficacement, il constitue une cible privilégiée pour les cybercriminels. De nombreux pirates informatiques savent que les entreprises ne parviennent régulièrement pas à configurer correctement le service. Cela crée une vulnérabilité permettant à des utilisateurs non autorisés d'accéder aux informations contenues dans les instances.
Un exemple s'est produit plus tôt cette année lorsqu'un pirate a utilisé un script automatisé pour analyser le Web à la recherche de systèmes ElasticSearch non protégés qui n'avaient pas de mot de passe, les a pénétrés et a effacé les données. Ce mystérieux piratage est l’une des nombreuses violations de données qui exploitent les mauvaises configurations d’Elasticsearch.
Malheureusement, ces piratages sont faciles à réaliser, les attaquants étant capables d'utiliser des moteurs de recherche tels que Shodan, BinaryEdge, Censys et ZoomEye pour explorer le Web à la recherche d'adresses IP et de ports vulnérables. La seule façon d’empêcher ces tentatives de violation est de déployer les configurations appropriées.
Meilleures pratiques d'Elasticsearch
Il existe de nombreuses actions différentes que vous pouvez entreprendre pour sécuriser la recherche élastique, depuis la fermeture des ports ouverts jusqu'à l'authentification des utilisateurs et le contrôle d'accès. Dans cette section, nous allons examiner certaines des façons dont vous pouvez minimiser les risques de sécurité lorsque vous utilisez Elasticsearch :
1. Ne vous connectez pas à Internet
L’un des moyens les plus simples de sécuriser Elasticsearch est de s’assurer qu’il n’est pas connecté à Internet. Exposer Elasticsearch met vos données à la portée des entités malveillantes et des attaques DoS. Les paramètres par défaut d'Elasticsearch lient les nœuds à l'hôte local, mais vous pouvez également utiliser le réseau/hôte dans le fichier de configuration YAML d'Elasticsearch pour lier les nœuds à une adresse IP publique privée ou sécurisée.
2. Fermez les ports ouverts
Les ports ouverts représentent un risque de sécurité que les attaquants peuvent exploiter pour accéder à votre réseau. La fermeture des ports ouverts élimine les principales vulnérabilités que les cybercriminels peuvent exploiter. Elasticsearch utilise le port 9200 pour les requêtes et 9300 pour la communication de cluster entre les nœuds. Lorsque ces ports sont ouverts, les utilisateurs non authentifiés peuvent appeler l'API d'Elasticsearch pour effectuer des actions telles que la copie, la suppression ou le chiffrement de données.
Bloquez les ports 9200 et 9300 pour tous les nœuds afin que le service ne soit pas accessible depuis l'Internet public. La fermeture des ports garantira que les pirates ne pourront pas collecter librement vos informations.
3. Restreindre les nœuds compatibles HTTP aux adresses IP privées et désactiver HTTP
Restreindre les adresses IP qu’Elastic Search écoutera est essentiel pour garantir que les adresses IP publiques ne puissent pas y accéder. Vous pouvez restreindre les nœuds en définissant network.bind_host ou network.host sur une adresse IP privée. En dehors de vos nœuds clients compatibles HTTP, désactivez HTTP en définissant http/enabled sur false.
4. Chiffrez vos données
Le chiffrement de vos données au repos est indispensable pour empêcher leur collecte par des cybercriminels. Cependant, Elasticsearch ne propose pas de chiffrement par défaut, vous devez donc utiliser un outil externe. Dm-crypte est un excellent utilitaire que vous pouvez utiliser dans le noyau Linux pour crypter vos données et les sécuriser. L'utilisation du chiffrement TLS pour chiffrer tout le trafic du cluster est indispensable pour garantir une protection complète.
5. Authentification de l'utilisateur
La configuration de l'authentification des utilisateurs vous permet de contrôler qui a accès à Elasticsearch, vous aidant ainsi à empêcher les entités malveillantes d'accéder aux données sensibles. Les options d'authentification utilisateur d'Elasticsearch signifient que les utilisateurs doivent vérifier leur identité via un mot de passe, un identifiant ou un jeton d'authentification. Vous pouvez configurer l'authentification des utilisateurs de manière native ou via une solution tierce comme LDAP ou Active Directory.
6. Mettre en œuvre des contrôles d'accès
Les contrôles d'accès basés sur les rôles sont un autre outil essentiel pour contrôler l'accès à vos données. La création de contrôles d'accès vous permettra de déterminer qui peut accéder aux ressources telles que les documents et les index, limitant ainsi le nombre de personnes dans votre organisation ayant accès aux données protégées.
7. Utiliser les journaux d'audit
La surveillance des journaux d'audit est un moyen efficace d'identifier les activités malveillantes. Avec les journaux d'audit, vous pouvez suivre les actions des utilisateurs connectés à un cluster Elasticsearch. La journalisation de l'activité des utilisateurs vous aidera à identifier les activités suspectes ou malveillantes afin que vous puissiez réagir rapidement pour résoudre le problème, réduisant ainsi le temps nécessaire à la résolution des événements de sécurité lorsqu'ils se produisent.
8. Mettez régulièrement à jour Elasticsearch
Chaque fois qu'une nouvelle version d'Elasticsearch sort, il est important de mettre à niveau pour corriger les anciennes vulnérabilités. Laisser un logiciel sans correctif fournit aux pirates informatiques des vulnérabilités non corrigées qu’ils peuvent exploiter. Des mises à jour régulières garantiront que vos défenses sont toujours à jour et réduiront le risque de violation de données.
9. Désactiver les scripts
Si vous utilisez une version d'Elasticsearch antérieure à 5.x, il est essentiel de désactiver les scripts dynamiques. La désactivation des scripts dynamiques empêche les pirates de déployer des scripts malveillants via l'API de recherche, qui peuvent détruire, copier ou chiffrer vos données contre votre volonté et vous mettre hors de combat.
10. Surveiller Elasticsearch
La surveillance continue d'Elasticsearch est inestimable pour vous aider à détecter les mauvaises performances et les comportements anormaux. De nombreux outils de surveillance cloud fournissent des alertes qui vous avertissent lorsqu'un événement de sécurité se produit. De cette façon, vous pouvez commencer le dépannage pour résoudre le problème, qu’il s’agisse d’un petit problème ou d’une cyberattaque à part entière.
Principaux outils de surveillance d'Elasticsearch
La surveillance continue d'ElasticSearch vous donne la possibilité de détecter les signes d'une faille de sécurité ou de mauvaises performances. Bien que les API d'Elasticsearch puissent être utilisées pour mesurer les performances, il est beaucoup plus pratique d'utiliser une application externe ou un outil de surveillance du cloud, car vous pouvez surveiller toutes vos infrastructures en un seul endroit.
Dans cette section, nous allons examiner certains des meilleurs outils de surveillance d'ElasticSearch. Les outils répertoriés incluent des solutions avec des tableaux de bord de haute qualité avec de riches options de visualisation et des alertes configurables pour vous informer de l'activité problématique.
Voici les trois meilleurs outils de surveillance d'ElasticSearch :
- Chien de données– Logiciel de surveillance du cloud avec un tableau de bord personnalisé, des graphiques, des diagrammes, des alertes, des instantanés, un accès complet à l'API, et bien plus encore.
- QG élastique– Logiciel de surveillance Elasticsearch open source avec surveillance de l'état du cluster, analyses, recommandations, etc.
- Dynatrace– Logiciel de surveillance des performances des applications avec découverte automatique, détection d’anomalies, alertes personnalisées, etc.
1. Chien de données
Chien de donnéesest une solution de surveillance cloud que vous pouvez utiliser pour surveiller l'état des clusters Elasticsearch. AvecChien de donnéesvous pouvez collecter des métriques de performances Elasticsearch telles queProcesseur, mémoire,etUtilisation des E/S, et affichez-les via un tableau de bord personnalisable avec des options de visualisation telles que des graphiques et des diagrammes.
Principales caractéristiques:
- Tableau de bord personnalisable
- Graphiques et diagrammes
- Alertes
- Instantanés
- Accès complet à l'API
Un système d'alertes vous fournit des alertes sur n'importe quelle métrique de votre cluster. Par exemple, si l'utilisation du processeur ou de la mémoire dépasse un seuil prédéfini, la plateforme vous enverra une alerte pare-mail, PagerDuty,ouMessage mou. Les utilisateurs peuvent créer des conditions d'alerte complexes pour déterminer quand le système génère des notifications.
La plateforme propose égalementinstantanés, où vous pouvez envoyer une image d'un problème de performances ou un graphique à un autre membre de votre équipe pour vérifier s'il y a un problème ou non. Lors de la gestion des alertes, vous pouvez également voir qui a répondu à une alerte dans le passé, ce qui permet de savoir plus facilement quelles actions ont été prises pour résoudre le problème.
Avantages:
- Modèles de fonctionnalités pour la surveillance des clusters Elasticsearch
- Excellent choix pour les réseaux de petite, moyenne et entreprise
- Grande quantité d'intégrations, idéales pour les grands réseaux utilisant de nombreuses applications tierces
- Les modèles fonctionnent extrêmement bien dès le départ, la personnalisation est possible mais pas toujours nécessaire
Les inconvénients:
- Pourrait bénéficier d’une période d’essai plus longue de 30 jours
Chien de donnéesCela vaut la peine d’être pris en compte si vous recherchez une solution pour surveiller les performances d’Elasticsearch ainsi que d’autres applications et services. Les prix du package Infrastructure commencent à 15 $ (11,62 £) par hôte et par mois. L'agent est disponible sur Windows, macOS et Linux. Tu peux commencez l'essai gratuit de 14 jours .
2. ElasticHQ
QG élastiqueest un outil de surveillance Elasticsearch open source que vous pouvez utiliser poursurveiller la santé du clusteren temps réel. AvecQG élastique, vous pouvez surveiller tous vos clusters à partir d'un seul emplacement aux côtésanalytiqueque vous pouvez utiliser pour explorer jusqu'au niveau de l'index ou du nœud afin de pouvoir repérer les tendances de performances.
Principales caractéristiques:
- Surveillance de l'état du cluster en temps réel
- Analytique
- Recommandations de diagnostic
- Éditeur JSON
- Gestion des indices
Sur la base des mesures de performances collectées dans tout votre environnement,QG élastiquefournitrecommandationset des conseils sur la façon dont vous pouvez optimiser les performances. Il y a aussiÉditeur JSONque vous pouvez utiliser pour interroger des index et des alias. Vous pouvez interagir avec les alias de plusieurs manières, notamment en les actualisant, en les optimisant, en les créant et en les affichant.
L'un des plus grands avantages deQG élastiqueest la vaste communauté d’utilisateurs qui utilise le logiciel. Vous disposez également d'unAPIcela vous donne un meilleur contrôle sur votre expérience avec le programme.
Avantages:
- Interface simple et facilement personnalisable
- Comprend des métriques et des moniteurs spécifiquement pour Elasticsearch
- L'API back-end rend possible un large éventail d'intégrations
Les inconvénients:
- Les outils open source s'appuient souvent sur les corrections de bugs et le support de la communauté – ce qui n'est pas la meilleure option pour les entreprises qui cherchent à évoluer rapidement.
QG élastiqueest un excellent choix pour les entreprises à la recherche d'une solution open source pour surveiller les performances et la disponibilité des clusters Elasticsearch. Prend en charge toutes les versions d'Elasticsearch, y compris 2.x, 5.x et 6.x. Tu peux téléchargez le logiciel gratuitement .
3. Dynatrace
Dynatraceest un outil de surveillance des performances des applications doté de fonctionnalités de surveillance d'Elasticsearch.Dynatracedécouvre automatiquement les clusters individuelset collecte des mesures surÉtat, fragments actifs, fragments principaux actifs, fragments de réplique, déplacement de fragments, initialisation de fragments, fragments non attribués,et plus. Vous pouvez également afficher les métriques de nœud telles que le total d'indexation, le temps d'indexation, le nombre de requêtes, le nombre de récupérations, le nombre de défilements, le temps de recherche total, les disjoncteurs et les indices.
Principales caractéristiques:
- Découvrez automatiquement les clusters individuels
- Détection d'une anomalie
- Analyse de la cause originelle
- Alertes personnalisées
Piloté par l'IADétection d'une anomalieetanalyse automatique des causes profondesaide à détecter les problèmes de performances lorsqu'ils surviennent et vous envoie des notifications pour mettre en évidence le problème. La notification vous fournit des informations sur lecause premièrepour que vous n'ayez pas besoin de perdre du temps à chercher comment le problème a commencé
Il y a aussialertes personnalisables, que vous pouvez utiliser pour définir des seuils pour les métriques dont le système vous informera lorsqu'ils seront franchis. Un aperçu de toutes les alertes peut être consulté dans leFlux de problèmes, qui fournit un enregistrement de tous les derniers événements de sécurité dont vous devez être informé.
Avantages:
- Peut identifier automatiquement les cluters Elastic et les regrouper pour la surveillance
- Tableaux de bord hautement visuels et personnalisables, excellents pour les CNO d'entreprise
- Fonctionne dans le cloud, ce qui lui permet d'être indépendant de la plateforme
Les inconvénients:
- Conçu spécifiquement pour les grands réseaux, les petites organisations peuvent trouver le produit trop adapté à leurs besoins.
Dynatraceest l'un des meilleurs outils pour surveiller Elasticsearch et d'autres applications en un seul endroit. Pour afficher les informations sur les prix, vous devez demander un devis directement à l'entreprise. Disponible pour Windows, Linux, iOS et Android. Tu peux commencez l'essai gratuit de 15 jours .
Plan d'urgence : sauvegardez vos données !
Malheureusement, même si vous mettez en œuvre toutes les mesures ci-dessus, un pirate informatique expérimenté peut toujours trouver un moyen d'accéder à vos données. Par conséquent, il est important de sauvegarder régulièrement vos données afin que vous ayez toujours accès aux informations critiques pour votre entreprise si vous êtes victime d’une cyberattaque.
Pour sauvegarder vos données, vous pouvez prendre des instantanés des clusters Elasticsearch en cours d'exécution. Prendre un instantané d'un cluster enregistrera tous ses flux de données et index, bien que vous puissiez choisir de limiter les instantanés à des flux de données particuliers. Après avoir pris un instantané, vous pouvez stocker la sauvegarde dans un référentiel local ou distant.
Vous pouvez ensuite stocker vos données collectées dans un service cloud tel qu'Amazon S3, Microsoft Azure ou Google Cloud Storage afin de disposer d'une copie à partir de laquelle restaurer si le système est compromis.
Elasticsearch : Faites attention, conclusion
Elasticsearch est un moteur de recherche et d'analyse extrêmement précieux que les entreprises doivent gérer avec soin.
Appliquer les meilleures pratiques énumérées ci-dessus et mettre en œuvre une surveillance continue avec des outils de surveillance des performances tels queDatadog, ElasticHQ,etDynatraceveillera à ce que vous puissiez accéder librement à vos données sans laisser la porte ouverte aux cybercriminels opportunistes.