Skip to content

Security: vibtellect/quote-generation-automation

Security

SECURITY.md

Security Policy

Sicherheit ist sehr wichtig für dieses Projekt. Hier erfährst du, wie wir mit Sicherheitsfragen umgehen.


Supported Versions

Version Supported
1.x ✅ Ja
< 1.0 ❌ Nein

Reporting a Vulnerability

Falls du eine Sicherheitslücke findest:

NICHT öffentlich in Issues posten!

Stattdessen:

  1. GitHub Security Advisory öffnen:

    • Gehe zu: Repository → Security → Report vulnerability
  2. Oder per E-Mail:

  3. Beschreibe:

    • Was ist die Schwachstelle?
    • Wie kann sie ausgenutzt werden?
    • Mögliche Auswirkung
    • Reproduktionsschritte (falls möglich)

Wir werden dir schnellstmöglich antworten (innerhalb von 48 Stunden).


Security Best Practices

1. AWS Credentials

Nicht tun:

# Secrets in Code
AWS_ACCESS_KEY_ID=AKIA...  # im .env oder git!
docker run -e AWS_ACCESS_KEY_ID=...  # in Befehle

So besser:

# .env File (in .gitignore!)
AWS_ACCESS_KEY_ID=AKIA...

# Via Environment
export AWS_ACCESS_KEY_ID=AKIA...
docker compose up  # liest aus .env

# Via AWS Credentials File
~/.aws/credentials  # nicht in Git!

2. IAM Policy

  • Principle of Least Privilege: Nur nötige Permissions geben
  • Resource Restriction: Nicht "*" für alle Services
  • Regular Rotation: Access Keys alle 90 Tage wechseln

Siehe: iam/n8n-automation-policy.json

3. Docker Security

Nicht tun:

# n8n ohne Auth (für Prod)
N8N_BASIC_AUTH_ACTIVE=false

Für Production:

# Basic Auth aktivieren
N8N_BASIC_AUTH_ACTIVE=true
N8N_BASIC_AUTH_USER=admin
N8N_BASIC_AUTH_PASSWORD=SecurePassword123!

# Oder OAuth/SAML integrieren

4. SMTP Credentials

  • App-Passwörter verwenden (nicht Main-Password)
  • Gmail: Create App Password
  • SendGrid: API Key generieren (nicht Full Account)

5. Datenhandling

  • Customer Anfragen: Nicht im Code speichern
  • Angebots-JSON: In secure S3 mit Encryption
  • Logs: Keine PII (Personalien) in CloudWatch
  • Retention: Alte Angebote nach X Tagen löschen

6. n8n Security

  • Node Red Authentication: TLS/HTTPS für Production
  • Webhook Security: Optional: Secret Token validieren
  • Execution Logs: Cleanup nach 30 Tagen (EXECUTIONS_DATA_PRUNE=true)

7. Dependencies

  • Docker Image: n8n 1.76.1 (gepinnt, nicht "latest")
  • Regular Updates: Monatlich n8n Version prüfen
  • Vulnerability Scanning: Dependabot aktivieren

Checkliste für Production Deployment

  • IAM Policy Review (kein overbroad access)
  • AWS Region restrict (z.B. nur eu-central-1)
  • n8n Basic Auth oder OAuth aktiviert
  • HTTPS/TLS für Webhooks konfiguriert
  • Secrets in AWS Secrets Manager / Parameter Store (nicht .env)
  • CloudWatch Logs aktiviert & monitored
  • Cost Alarms eingerichtet
  • Backup Strategy für n8n_data Volume
  • DSGVO Compliance überprüft (Customer Daten)
  • Security Scanning (Dependabot, Snyk)

Häufige Sicherheitsfehler

1. Git-Secrets Leak

# FALSCH: Secret im Code
echo "AWS_ACCESS_KEY_ID=AKIA123..." > .env
git add .env
git commit -m "setup"
git push

Fix:

# .gitignore aktualisieren
echo ".env" >> .gitignore
git rm --cached .env
git commit -m "remove .env from tracking"

# Secret rotieren (new Access Key)
aws iam create-access-key --user-name n8n-quote-automation

2. Docker Image Pull Security

# FALSCH: "latest" Tag (Breaking Changes möglich)
image: n8nio/n8n:latest

Fix:

# Gepinnte Version verwenden
image: n8nio/n8n:1.76.1

3. Webhook Authentication

# FALSCH: Ungesicherter Webhook
POST /webhook/quote-generation
# Anyone can send requests

Fix: Optional - Secret Token validieren

{
  "X-Webhook-Secret": "super-secret-token-from-env"
}

4. Bedrock Model Restrictions

# FALSCH: Alle Modelle erlaubt (Kosten!)
bedrock:InvokeModel on *

Fix: Nur Claude 3.5 Sonnet

{
  "Resource": [
    "arn:aws:bedrock:eu-central-1::foundation-model/anthropic.claude-3-5-sonnet*"
  ]
}

Incident Response

Falls ein Security Issue auftritt:

  1. Identify: Was ist passiert?
  2. Contain: Betroffene Keys rotieren, Access einschränken
  3. Eradicate: Ursache beheben
  4. Recover: System hochfahren
  5. Review: Post-mortem durchführen

Security Resources


Kontakt

Sicherheitsfragen? 🔐


Last Updated: 2026-03-05

There aren't any published security advisories