5. Sicherheitsbetrachtungen (Security Considerations)
Siehe die Diskussion in Abschnitt 3.
Wichtigste Sicherheitsbetrachtungen (Main Security Considerations)
Passive Daten (Passive Data)
CSV-Dateien enthalten passive Textdaten und sollten (should) im Allgemeinen kein direktes Sicherheitsrisiko darstellen. Als reines Textformat führt CSV selbst keinen Code oder Skripte aus.
Potenzielle Risiken (Potential Risks)
1. Pufferüberläufe (Buffer Overruns)
Bösartige Binärdaten könnten (may) theoretisch in eine CSV-Datei aufgenommen werden, um potenzielle Pufferüberlauf-Schwachstellen in Programmen auszunutzen, die CSV-Daten verarbeiten.
Gegenmaßnahmen (Mitigations):
- Eine angemessene Eingabevalidierung implementieren.
- Sichere Zeichenfolgenfunktionen verwenden.
- Angemessene Grenzen für die Feldgrößen festlegen.
- CSV-Parsing-Bibliotheken auf dem neuesten Stand halten.
2. Datenschutz (Data Privacy)
Private Daten können (may) über dieses Format geteilt werden, wie es für alle Textdaten gilt.
Gegenmaßnahmen (Mitigations):
- Angemessene Zugriffskontrollen für vertrauliche CSV-Dateien anwenden.
- Verschlüsselung während des Transports verwenden, z. B. TLS.
- Gespeicherte CSV-Dateien bei Bedarf verschlüsseln.
- Datenminimierungsprinzipien befolgen.
3. Injektionsangriffe (Injection Attacks)
Daten in CSV-Dateien können (may) Formelinjektion oder Befehlsausführung auslösen, wenn sie in Tabellenkalkulationsprogramme importiert werden.
Gegenmaßnahmen (Mitigations):
- Felder, die mit
=,+,-oder@beginnen, escapen oder validieren. - Die automatische Formelausführung beim Import nach Möglichkeit deaktivieren.
- Benutzer vor potenziell ausführbaren Inhalten warnen.
4. Probleme der Zeichenkodierung (Character Encoding Issues)
Eine falsche Handhabung der Zeichenkodierung kann (may) Datenbeschädigung oder Sicherheitslücken verursachen.
Gegenmaßnahmen (Mitigations):
- Zeichenkodierungen explizit angeben und validieren, unter Verwendung des Parameters charset.
- Mehrbytezeichen korrekt behandeln.
- Kodierungsverwirrungsangriffe verhindern.
Implementierungsempfehlungen (Implementation Recommendations)
- Eingabevalidierung (Input validation): CSV-Eingabedaten immer validieren und bereinigen.
- Fehlerbehandlung (Error handling): Eine robuste Fehlerbehandlung implementieren.
- Ressourcengrenzen (Resource limits): Angemessene Grenzen für Dateigröße, Datensatzanzahl und Feldlänge festlegen.
- Sichere Konfiguration (Secure configuration): CSV-Prozessoren mit minimalen Rechten ausführen.
- Protokollierung (Logging): Anomalien oder verdächtige CSV-Verarbeitungsaktivitäten protokollieren.
Allgemeine Leitlinien (General Guidance)
Bei der Verarbeitung von CSV-Dateien sollten (should) Anwendungen standardmäßigen Sicherheits-Best-Practices folgen, einschließlich:
- Benutzereingaben nicht vertrauen.
- Defense in Depth anwenden.
- Regelmäßige Sicherheitsüberprüfungen und -aktualisierungen durchführen.
- Dem Prinzip von RFC 793 folgen: „Seien Sie konservativ bei dem, was Sie tun, seien Sie liberal bei dem, was Sie von anderen akzeptieren."