Attack Surface: Denial of Service (DoS) on Agent/Collector/Query/Ingester
- Description: Attacker overwhelms a Jaeger component, making it unavailable.
- Jaeger's Contribution: Jaeger's reliance on network communication (UDP, gRPC, HTTP) for data transmission and querying creates DoS entry points.
- Example: Flooding the Jaeger Agent with malformed UDP packets, causing it to crash.
- Impact: Loss of tracing data, potential application performance degradation, inability to monitor.
- Risk Severity: High.
- Mitigation Strategies:
- Rate Limiting (all components).
- Strict Input Validation.
- Resource Quotas.
- Network Segmentation.
- Monitoring and Alerting.
- Use gRPC instead of UDP.
- Load Balancing (Collector/Query).
Attack Surface: Unauthorized Access to Trace Data (Query Service)
- Description: Attacker gains unauthorized access to trace data via the Query Service API.
- Jaeger's Contribution: The Jaeger Query Service API is a direct entry point for accessing trace data; if unsecured, it's vulnerable.
- Example: Attacker accesses the Query Service endpoint without authentication, retrieving all traces.
- Impact: Data breach, exposure of sensitive application logic, potential for further attacks.
- Risk Severity: High to Critical (depending on data sensitivity).
- Mitigation Strategies:
- Strong Authentication and Authorization (OAuth 2.0, OpenID Connect).
- Role-Based Access Control (RBAC).
- API Gateway.
- Network Segmentation.
- Audit Logging.
- Description: Attacker intercepts/modifies communication between Jaeger components.
- Jaeger's Contribution: Jaeger's distributed architecture relies on network communication; unencrypted communication is vulnerable.
- Example: Intercepting unencrypted communication between Agent and Collector, capturing sensitive span data.
- Impact: Data breach, exposure of sensitive information, data manipulation.
- Risk Severity: High.
- Mitigation Strategies:
- TLS Encryption (all communication).
- Mutual TLS (mTLS).
- Network Segmentation.
Attack Surface: Storage Backend Attacks (Indirect via Collector/Query/Ingester
- Description: Attacker targets the storage backend (e.g., Cassandra, Elasticsearch) used by Jaeger.
- Jaeger's Contribution: Jaeger components (collector, query, ingester) interact with the backend; backend vulnerabilities expose the tracing system.
- Example: Exploiting a vulnerability in Elasticsearch to steal Jaeger data.
- Impact: Data breach, data loss, tracing system disruption.
- Risk Severity: High to Critical (depending on data sensitivity and backend security).
- Mitigation Strategies:
- Secure Backend Configuration (strong passwords, access control, encryption).
- Least Privilege (for Jaeger component access).
- Regular Security Updates (for the backend).
- Monitoring and Alerting (for the backend).
- Data Backup and Recovery.
- Use dedicated user with restricted permissions.