Sicherheitshaertung: Injection-Schutz, atomares Locking, Pfad-Validierung
- load_config blockiert Shell-Operatoren (;|&`) in .env-Werten - validate_path prueft Sonderzeichen und Path-Traversal in Pfad-Variablen - validate_config prüft DARKTABLE_BIN-basename und ruft validate_path auf - Lockdir-Trap erst nach erfolgreicher Lock-Akquisition registriert (verhindert dass externer Lockdir bei gescheitertem Lock entfernt wird) - uninstall.sh nutzt rmdir statt rm -rf fuer Lockdir - security.bats mit 10 Tests fuer alle Sicherheitsanforderungen Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
This commit is contained in:
@@ -52,8 +52,8 @@ setup() {
|
||||
[ -f "$CONFIG_DIR/sync_pending" ]
|
||||
}
|
||||
|
||||
@test "Lockfile wird nach Abschluss entfernt" {
|
||||
@test "Lockdir wird nach Abschluss entfernt" {
|
||||
run_with_stubs env SSH_STUB_FAIL=0 bash "$SYNC_SCRIPT"
|
||||
[ "$status" -eq 0 ]
|
||||
[ ! -f "/tmp/darktable_sync.sh.lock" ]
|
||||
[ ! -d "$CONFIG_DIR/sync.lock" ]
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user