Inhaltsverzeichnis
Security Checklist (KRITIS/NIS2)
Version: 2.0
Scope: Crypto, Memory Safety, Availability, Information Disclosure, Secure Error Handling.
Umfassende Sicherheits-Checklist basierend auf CWE-Schwachstellen und Angriffsmustern.
Cryptographic Security
| Check | CWE | Description |
|---|---|---|
| [ ] Nonce Uniqueness | CWE-323 | AES-GCM Nonce pro Verschlüsselung einzigartig (KRITISCH!) |
| [ ] Nonce Tracking | CWE-323 | Verwendete Nonces tracken, MAX_NONCES_PER_KEY erzwingen |
| [ ] Key Rotation | CWE-323 | Key nach Nonce-Limit rotieren |
| [ ] Cryptographic RNG | CWE-330 | OpenSSL/OS CSPRNG für Keys/Nonces |
| [ ] Random IDs | CWE-330 | Keine sequentiellen Key/Session IDs |
| [ ] Constant-time Comparison | CWE-208 | Für Secrets, MACs, Tokens, API Keys |
| [ ] Replay Protection | CWE-294 | Nonce/Timestamp/Sequence Tracking |
| [ ] Channel Encryption | CWE-300 | mTLS für externe Kommunikation |
Memory Security
| Check | CWE | Description |
|---|---|---|
| [ ] Memory Zeroization | CWE-316 | Secrets nach Verwendung löschen |
| [ ] No Secrets in Logs | CWE-532 | Niemals Keys, Passwords, Tokens loggen |
| [ ] Secure String Handling | CWE-316 | SecureString (C#), secrecy (Rust) |
| [ ] Key Material Cleared | CWE-316 | try-finally sichert Cleanup bei Exception |
Input Validation
| Check | CWE | Description |
|---|---|---|
| [ ] Size Limits | CWE-400 | MAX_PAYLOAD_SIZE erzwungen (Default: 64KB) |
| [ ] Integer Overflow | CWE-190 | SafeAdd(), checked_add(), checked arithmetic |
| [ ] Null Checks | CWE-476 | An allen API-Grenzen |
| [ ] No Unwrap on Input | CWE-248 | Korrektes Error Handling, kein Panic bei malformed Data |
| [ ] Parameterized Queries | CWE-89 | Niemals String-Konkatenation für SQL |
| [ ] Character Validation | - | Whitelist für Identifiers wo passend |
Error Handling
| Check | CWE | Description |
|---|---|---|
| [ ] Sanitized Messages | CWE-209 | Keine Pfade/Versionen/Stack Traces an Client |
| [ ] Full Error Logging | - | Kompletten Fehler intern loggen vor Sanitizing |
| [ ] No Panic in Service | CWE-248 | Graceful Error Recovery, Service bleibt up |
| [ ] Stack Trace Preserved | - | Re-throw ohne Wrapping |
Availability (DoS Protection)
| Check | CWE | Description |
|---|---|---|
| [ ] Rate Limiting | CWE-400 | Token Bucket pro Client/Endpoint |
| [ ] Request Size Limits | CWE-400 | Oversized Payloads früh ablehnen |
| [ ] Lock Safety | CWE-667 | Lock Recovery Mechanismus |
| [ ] Resource Cleanup | CWE-772 | try-finally, using, defer, RAII - immer |
| [ ] Timeout Handling | CWE-400 | Timeouts auf alle externen Operationen |
Thread Safety
| Check | CWE | Description |
|---|---|---|
| [ ] Lock Poisoning Handled | CWE-667 | Recovery von poisoned Locks |
| [ ] No Race Conditions | CWE-362 | Thread-safe Datenstrukturen |
| [ ] Atomic Operations | CWE-362 | Für Counters, Flags, Shared State |
| [ ] Deadlock Prevention | CWE-833 | Lock Ordering, Timeouts |
Audit & Compliance
| Check | Standard | Description |
|---|---|---|
| [ ] All Modifications Logged | ISO 27001 A.12.4 | Datenänderungen mit User, Timestamp, Old/New Value |
| [ ] Security Events Logged | NIS2 Art. 21 | Failed Auth, Rate Limiting, Suspicious Input |
| [ ] Log File Rotation | - | Inkrementelles Format |
| [ ] No Sensitive Data in Logs | CWE-532 | Audit für accidental Exposure |
Quick Reference - By Attack Type
Cryptographic Attacks:
- [ ] Nonce Reuse verhindert
- [ ] Timing Attacks mitigiert (constant-time compare)
- [ ] Replay Attacks blockiert
- [ ] Key Enumeration verhindert (random IDs)
Input Attacks:
- [ ] Buffer Overflow verhindert (size limits)
- [ ] Integer Overflow verhindert
- [ ] Malformed Input behandelt
- [ ] SQL Injection verhindert
Availability Attacks:
- [ ] Resource Exhaustion verhindert (rate limiting)
- [ ] Lock Poisoning behandelt
- [ ] Memory Exhaustion verhindert
Information Disclosure:
- [ ] Error Messages sanitized
- [ ] Secrets nach Verwendung zeroized
- [ ] Keine sensitiven Daten in Logs
<wvds:audit:template critical=„true“> Keine exec/shell_exec/system Aufrufe Keine eval() Aufrufe Output Escaping SQL Injection Prevention CSRF Protection </wvds:audit:template>
Version: 2.0 (Split)
Autor: Wolfgang van der Stille
Zurück zu Sicherheit Checklists | Review Checklists
Zuletzt geändert: den 29.01.2026 um 15:13