mirror of
https://github.com/HackTricks-wiki/hacktricks-cloud.git
synced 2026-01-08 19:30:51 -08:00
Translated ['src/banners/hacktricks-training.md', 'src/pentesting-ci-cd/
This commit is contained in:
@@ -4,19 +4,19 @@
|
||||
|
||||
## Amazon MSK
|
||||
|
||||
**Amazon Managed Streaming for Apache Kafka (Amazon MSK)** ist ein vollständig verwalteter Dienst, der die Entwicklung und Ausführung von Anwendungen erleichtert, die Streaming-Daten über **Apache Kafka** verarbeiten. Die Steuerungsebene, einschließlich Erstellung, Aktualisierung und Löschung von **Clustern**, wird von Amazon MSK angeboten. Der Dienst ermöglicht die Nutzung von Apache Kafka **Datenebene-Operationen**, die die Datenproduktion und -konsumtion umfassen. Er basiert auf **Open-Source-Versionen von Apache Kafka**, was die Kompatibilität mit bestehenden Anwendungen, Tools und Plugins sowohl von Partnern als auch aus der **Apache Kafka-Community** gewährleistet und die Notwendigkeit von Änderungen im Anwendungscode beseitigt.
|
||||
**Amazon Managed Streaming for Apache Kafka (Amazon MSK)** ist ein vollständig verwalteter Dienst, der die Entwicklung und Ausführung von Anwendungen erleichtert, die Streaming-Daten über **Apache Kafka** verarbeiten. Die Steuerungsebene, einschließlich Erstellung, Aktualisierung und Löschung von **Clustern**, wird von Amazon MSK angeboten. Der Dienst ermöglicht die Nutzung von Apache Kafka **Datenebene-Operationen**, die die Datenproduktion und -konsumtion umfassen. Er basiert auf **Open-Source-Versionen von Apache Kafka**, was die Kompatibilität mit bestehenden Anwendungen, Tools und Plugins sowohl von Partnern als auch aus der **Apache Kafka-Community** sicherstellt, ohne dass Änderungen am Anwendungscode erforderlich sind.
|
||||
|
||||
In Bezug auf die Zuverlässigkeit ist Amazon MSK so konzipiert, dass es **automatisch verbreitete Clusterfehler-Szenarien erkennt und sich davon erholt**, sodass Produzenten- und Konsumenten-Anwendungen ihre Daten Schreib- und Leseaktivitäten mit minimalen Unterbrechungen fortsetzen können. Darüber hinaus zielt es darauf ab, die Datenreplikationsprozesse zu optimieren, indem es versucht, den Speicher von ersetzten Brokern **wiederzuverwenden**, wodurch das Volumen der Daten, die von Apache Kafka repliziert werden müssen, minimiert wird.
|
||||
In Bezug auf die Zuverlässigkeit ist Amazon MSK so konzipiert, dass es **automatisch häufige Clusterfehler-Szenarien erkennt und sich davon erholt**, sodass Produzenten- und Konsumenten-Anwendungen ihre Daten Schreib- und Leseaktivitäten mit minimalen Unterbrechungen fortsetzen können. Darüber hinaus zielt es darauf ab, die Datenreplikationsprozesse zu optimieren, indem versucht wird, den Speicher von ersetzten Brokern **wiederzuverwenden**, wodurch das Volumen der Daten, die von Apache Kafka repliziert werden müssen, minimiert wird.
|
||||
|
||||
### **Typen**
|
||||
|
||||
Es gibt 2 Arten von Kafka-Clustern, die AWS erstellen lässt: Bereitgestellt und Serverlos.
|
||||
Es gibt 2 Arten von Kafka-Clustern, die AWS erstellen lässt: Provisioned und Serverless.
|
||||
|
||||
Aus der Sicht eines Angreifers müssen Sie wissen, dass:
|
||||
|
||||
- **Serverlos kann nicht direkt öffentlich sein** (es kann nur in einem VPN ohne öffentlich exponierte IP betrieben werden). **Bereitgestellt** kann jedoch so konfiguriert werden, dass es eine **öffentliche IP** erhält (standardmäßig geschieht dies nicht) und die **Sicherheitsgruppe** so konfiguriert wird, dass die relevanten Ports **exponiert** werden.
|
||||
- **Serverlos** **unterstützt nur IAM** als Authentifizierungsmethode. **Bereitgestellt** unterstützt SASL/SCRAM (**Passwort**) Authentifizierung, **IAM** Authentifizierung, AWS **Zertifikat** Manager (ACM) Authentifizierung und **unauthentifizierten** Zugriff.
|
||||
- Beachten Sie, dass es nicht möglich ist, ein bereitgestelltes Kafka öffentlich zu exponieren, wenn der unauthentifizierte Zugriff aktiviert ist.
|
||||
- **Serverless kann nicht direkt öffentlich sein** (es kann nur in einem VPN ohne öffentlich exponierte IP ausgeführt werden). **Provisioned** kann jedoch so konfiguriert werden, dass es eine **öffentliche IP** erhält (standardmäßig geschieht dies nicht) und die **Sicherheitsgruppe** so konfiguriert wird, dass die relevanten Ports **exponiert** werden.
|
||||
- **Serverless** **unterstützt nur IAM** als Authentifizierungsmethode. **Provisioned** unterstützt SASL/SCRAM (**Passwort**) Authentifizierung, **IAM** Authentifizierung, AWS **Zertifikat** Manager (ACM) Authentifizierung und **unauthentifizierten** Zugriff.
|
||||
- Beachten Sie, dass es nicht möglich ist, ein Provisioned Kafka öffentlich zugänglich zu machen, wenn der unauthentifizierte Zugriff aktiviert ist.
|
||||
|
||||
### Enumeration
|
||||
```bash
|
||||
@@ -42,7 +42,7 @@ aws kafka describe-configuration-revision --arn <config-arn> --revision <version
|
||||
# If using SCRAN authentication, get used AWS secret name (not secret value)
|
||||
aws kafka list-scram-secrets --cluster-arn <cluster-arn>
|
||||
```
|
||||
### Kafka IAM-Zugriff (in serverless)
|
||||
### Kafka IAM-Zugriff (in serverlos)
|
||||
```bash
|
||||
# Guide from https://docs.aws.amazon.com/msk/latest/developerguide/create-serverless-cluster.html
|
||||
# Download Kafka
|
||||
@@ -86,7 +86,7 @@ kafka_2.12-2.8.1/bin/kafka-console-consumer.sh --bootstrap-server $BS --consumer
|
||||
|
||||
### Persistence
|
||||
|
||||
Wenn Sie **Zugriff auf das VPC** haben, in dem ein Provisioned Kafka ist, könnten Sie **unauthorisierten Zugriff aktivieren**, wenn **SASL/SCRAM-Authentifizierung**, **das Passwort** aus dem Geheimnis **lesen**, einigen **anderen kontrollierten Benutzern IAM-Berechtigungen** geben (wenn IAM oder serverlos verwendet wird) oder mit **Zertifikaten** persistieren.
|
||||
Wenn Sie **Zugriff auf das VPC** haben, in dem ein Provisioned Kafka ist, könnten Sie **unauthorisierten Zugriff aktivieren**, wenn **SASL/SCRAM-Authentifizierung**, **das Passwort** aus dem Geheimnis **lesen**, einigen **anderen kontrollierten Benutzern IAM-Berechtigungen** geben (wenn IAM oder serverless verwendet wird) oder mit **Zertifikaten** persistieren.
|
||||
|
||||
## References
|
||||
|
||||
|
||||
Reference in New Issue
Block a user