Check ID:
Provider: AWS
Service:
Severity: HIGH
Categories:
Resource type:
kafka_cluster_mutual_tls_authentication_enabledProvider: AWS
Service:
kafkaSeverity: HIGH
Categories:
encryptionResource type:
AwsMskClusterWhat this check verifies
Amazon MSK clusters enforce client authentication on client-to-broker connections. Serverless clusters use TLS-based authentication by default; provisioned clusters must have mutual TLS (mTLS) explicitly enabled.Risk
Without mTLS, adversaries can impersonate clients or intercept sessions, compromising confidentiality and integrity. Unauthorized producers/consumers can read or alter topics, poison data streams, and flood brokers, degrading availability and impacting downstream systems.Recommendation
Enable mutual TLS for client-broker traffic and disablePLAINTEXT listeners. Issue short-lived client certificates from a managed CA with rotation. Apply least privilege using Kafka ACLs, restrict network access to trusted sources, and monitor authentication events as part of defense in depth.
Remediation
- CLI
- Terraform
- Native IaC
- Dashboard steps
References
- https://www.trendmicro.com/trendaivisiononecloudriskmanagement/knowledge-base/aws/MSK/enable-mutual-tls-authentication-for-kafka-clients.html
- https://docs.aws.amazon.com/msk/latest/developerguide/msk-update-security.html
- https://docs.aws.amazon.com/msk/latest/developerguide/msk-authentication.html
Where this check fires
This check runs on every scheduled scan against your AWS account. Findings appear at Cloud Security → Findings filterable byCheck ID = kafka_cluster_mutual_tls_authentication_enabled. To re-evaluate after a fix, hit Run now on the account’s schedule under Cloud Security → Schedules — the next scan re-checks this control and marks the finding fixed or keeps it persistent.
← Back to AWS checks