Security logs from three sources are forwarded to the SIEM endpoint:
| Source | Mechanism |
|---|---|
| AWS CloudTrail | CloudWatch Logs → Kinesis Firehose → SIEM |
| Kubernetes audit logs | Fluent Bit DaemonSet → Kinesis Firehose → SIEM |
| Application security logs | Fluent Bit (pods labelled security-log: "true") → Firehose |
Deployed via infrastructure/terraform/siem-integration.tf:
aws_kinesis_firehose_delivery_stream.siem— GZIP-compressed HTTP endpoint deliveryaws_s3_bucket.siem_backup— 365-day retention backup for failed deliveriesaws_cloudwatch_log_group.siem_trail— 90-day CloudTrail log retention
kubectl apply -f infrastructure/monitoring/siem-forwarder.yaml
kubectl create secret generic siem-config \
--from-literal=firehose_stream_name=gistpin-prod-siem-stream \
-n monitoringexport TF_VAR_siem_endpoint_url="https://your-siem-endpoint/collector"
terraform apply -target=aws_kinesis_firehose_delivery_stream.siemConfigure the following in your SIEM:
- Brute-force: >10 failed logins in 5 min from same IP
- Privilege escalation: IAM policy changes followed by new resource creation
- Exfiltration: Unusually large S3 GetObject bursts