Diese Issue beschreibt eine wiederkehrende Sicherheits- und Qualitätsprüfung für das ThemisDB C++ Codebase:
Prüfschritte
- Speicherlecks (Resource Leaks, Owner lost, Dangling raw new/delete, OpenSSL C-API Objekte)
- Race Conditions (Wettläufe bei Move/Copy, Thread-Safety, Lock Guards, Iterator Lifetime)
- Alignment & Type Punning (strikte Alignment Assertion für SIMD, unaligned Zugriff auf ARM)
- Strict Aliasing Violations (reinterpret_cast, memcpy/union bevorzugen)
- Move Semantics & RAII-Pattern korrekt angewendet
- Verwendung von Smart Pointer überall erzwingen (unique_ptr/shared_ptr, keine raw new/delete)
- Exception Safety (Strong Guarantee, noexcept-Konstruktoren prüfen)
- const-correctness und Typsicherheit
- Nach Security-Fix TODOs, FIXMEs, HACKS filtern
- Compliance zu Coding Standards (siehe C++ Coding Standards und LLM Core Verification Report)
Vorgehen
- Regelmäßige Ausführung: mindestens 1x pro Sprint/Monat
- Automatisierte Tools:
- Cross-compile-reviewer.py
- pre-build-validation.ps1
- clang-tidy, cppcheck, AddressSanitizer, UBSan
- Valgrind für Leaks
- Manuelle Review:
- Durchsicht der Referenzdateien (siehe unten)
- Sicherheits-relevante TODOs/FIXMEs gezielt prüfen
Relevante Dateiliste:
- src/llm/model_loader.cpp
- src/llm/gguf_loader.cpp
- src/llm/paged_block_manager.cpp
- src/llm/grammar.cpp
- src/server/http3_session.cpp
- src/auth/jwt_validator.cpp
- src/auth/gssapi_authenticator.cpp
- src/performance/allocator.h
- src/utils/serialization.cpp
- src/sharding/pki_shard_certificate.cpp
- src/sharding/signed_request.cpp
- src/utils/pki_client.cpp
- src/utils/license_info.cpp
- src/utils/error_registry.cpp
- src/utils/pii_detection_engine.cpp
- src/utils/normalizer.cpp
- src/llm/adapter_load_balancer.cpp
- src/llm/lora_framework/vram_allocator.cpp
- src/performance/alignment_helpers.h
- src/utils/unaligned_access.h
- include/utils/safe_cast.h
- include/utils/openssl_deleter.h
- include/utils/vector_types.h
- benchmarks/bench_lora_auto_binding.cpp
- benchmarks/bench_advanced_patterns.cpp
- benchmarks/RPC_FRAMEWORK_REVIEW.md
- benchmarks/RPC_FRAMEWORK_FINAL_SUMMARY.md
- docs/CODING_STANDARDS.md
- docs/LLM_CORE_VERIFICATION_REPORT.md
- docs/RACE_CONDITION_ANALYSIS.md
- docs/RACE_CONDITION_SUMMARY.md
- docs/de/llm/BEST_PRACTICES_AND_DESIGN_PATTERNS.md
- docs/THREAD_SAFETY_BEST_PRACTICES.md
- docs/chimera/SECURITY_SUMMARY.md
- docs/de/guides/guides_styleguide.md
- docs/analysis/IMPLEMENTATION_GUIDE.md
- docs/COMPILER_TROUBLESHOOTING.md
- docs/build-guide/BUILD_ARM_ERRORS.md
- docs/build-guide/BUILD_LINUX_ERRORS.md
- docs/CONTRIBUTING_PLATFORM_GUIDELINES.md
- compendium/docs/chapter_36_security_hardening.md
- compendium/docs/chapter_37_ecosystem_integration.md
Ziel
- Proaktive Erkennung und Korrektur sicherheitskritischer Schwachstellen
- Nachhaltige C++ Codequalität gemäß Industriestandards
- Dokumentation aller Findings/PRs im Audit Wiki
Diese Aufgabe ist als periodisches TODO zu behandeln. Nach jedem Ausführen bitte Findings als Issue/PRs festhalten und verlinken!
Diese Issue beschreibt eine wiederkehrende Sicherheits- und Qualitätsprüfung für das ThemisDB C++ Codebase:
Prüfschritte
Vorgehen
Relevante Dateiliste:
Ziel
Diese Aufgabe ist als periodisches TODO zu behandeln. Nach jedem Ausführen bitte Findings als Issue/PRs festhalten und verlinken!