AWS - MSK Enum
Last updated
Last updated
Learn & practice AWS Hacking:HackTricks Training AWS Red Team Expert (ARTE) Learn & practice GCP Hacking: HackTricks Training GCP Red Team Expert (GRTE)
Amazon Managed Streaming for Apache Kafka (Amazon MSK) est un service entièrement géré, facilitant le développement et l'exécution d'applications traitant des données en streaming via Apache Kafka. Les opérations de plan de contrôle, y compris la création, la mise à jour et la suppression de clusters, sont offertes par Amazon MSK. Le service permet l'utilisation des opérations de plan de données d'Apache Kafka, englobant la production et la consommation de données. Il fonctionne sur des versions open-source d'Apache Kafka, garantissant la compatibilité avec les applications, outils et plugins existants des partenaires et de la communauté Apache Kafka, éliminant ainsi le besoin de modifications dans le code de l'application.
En termes de fiabilité, Amazon MSK est conçu pour détecter et récupérer automatiquement des scénarios de défaillance de cluster courants, garantissant que les applications productrices et consommatrices continuent leurs activités d'écriture et de lecture de données avec un minimum de perturbations. De plus, il vise à optimiser les processus de réplication des données en tentant de réutiliser le stockage des brokers remplacés, minimisant ainsi le volume de données qui doit être répliqué par Apache Kafka.
Il existe 2 types de clusters Kafka que AWS permet de créer : Provisionné et Sans serveur.
Du point de vue d'un attaquant, vous devez savoir que :
Sans serveur ne peut pas être directement public (il ne peut fonctionner que dans un VPN sans aucune IP exposée publiquement). Cependant, Provisionné peut être configuré pour obtenir une IP publique (par défaut, ce n'est pas le cas) et configurer le groupe de sécurité pour exposer les ports pertinents.
Sans serveur ne prend en charge que IAM comme méthode d'authentification. Provisionné prend en charge l'authentification SASL/SCRAM (mot de passe), l'authentification IAM, l'authentification AWS Certificate Manager (ACM) et l'accès non authentifié.
Notez qu'il n'est pas possible d'exposer publiquement un Kafka Provisionné si l'accès non authentifié est activé.
Si vous allez avoir accès au VPC où se trouve un Kafka Provisionné, vous pourriez activer un accès non autorisé, si l'authentification SASL/SCRAM, lire le mot de passe depuis le secret, donner des autres permissions IAM contrôlées (si IAM ou serverless utilisé) ou persister avec des certificats.
Apprenez et pratiquez le Hacking AWS :HackTricks Training AWS Red Team Expert (ARTE) Apprenez et pratiquez le Hacking GCP : HackTricks Training GCP Red Team Expert (GRTE)