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:
+5
-5
@@ -19,12 +19,12 @@ systemctl --user disable --now darktable-sync.timer 2>/dev/null || true
|
||||
systemctl --user disable --now darktable_sync.timer 2>/dev/null || true
|
||||
systemctl --user daemon-reload
|
||||
|
||||
### Lockfile entfernen
|
||||
### Lockdir entfernen (atomares Lock)
|
||||
|
||||
LOCKFILE="/tmp/darktable_sync.sh.lock"
|
||||
if [ -f "$LOCKFILE" ]; then
|
||||
echo "Lockfile entfernen: $LOCKFILE"
|
||||
rm -f "$LOCKFILE"
|
||||
LOCKDIR="$CONFIG_DIR/sync.lock"
|
||||
if [ -d "$LOCKDIR" ]; then
|
||||
echo "Lockdir entfernen: $LOCKDIR"
|
||||
rmdir "$LOCKDIR" 2>/dev/null || true
|
||||
fi
|
||||
|
||||
### Aktiven Marker auf Server entfernen (best-effort)
|
||||
|
||||
Reference in New Issue
Block a user