• florian.wilde released this 2026-08-24 10:35:51 +00:00 | 18 commits to main since this release

    Diese Fassung geht aus einer Sicherheitsprüfung hervor (#38). Sie ändert
    nichts an der Bedienung, schließt aber mehrere Lücken — darunter drei, bei
    denen im Code eine Zusage stand, die so nicht galt.

    Vor dem Update: zwei neue .env-Zeilen

    ERSTEINRICHTUNG_GEHEIMNIS=<zufällig, npm run schluessel erzeugt einen>
    VERTRAUE_PROXY=true
    
    • Ohne ERSTEINRICHTUNG_GEHEIMNIS läuft alles weiter, nur der erste
      Zugang ließe sich nicht anlegen. Auf einer bestehenden Installation ist
      das richtig so.
    • Ohne VERTRAUE_PROXY=true zählt die Anmeldesperre nur noch nach
      E-Mail-Adresse, nicht mehr zusätzlich nach Anschluss.

    Nach dem Update, nur mit Objektspeicher

    npm run speicher:verschluesseln -- --anwenden
    

    Schreibt bereits abgelegte Dateien in den Umschlag um. Lesen funktioniert
    währenddessen durchgehend, der Lauf lässt sich abbrechen und wiederholen.

    Behoben

    • Der zweite Faktor war eine Anzeige, keine Grenze. Durchgesetzt wurde
      er nur im App-Layout; Server Actions und Downloads liefen daran vorbei.
    • Ein Dokumenten-Download fragte nur nach der Anmeldung.
    • Die Anmeldesperre sperrte dauerhaft aus. Jeder Versuch während einer
      Sperre verlängerte sie um die volle Dauer — damit ließ sich ein fremder
      Zugang aussperren, ohne dessen Passwort zu kennen.
    • Ein Code aus der Authenticator-App galt bis zu 90 Sekunden mehrfach.
    • Passkeys ließen sich ohne Rückfrage anlegen und entfernen.
    • Die Ersteinrichtung stand offen und war nicht atomar.
    • Dateien im Objektspeicher lagen mit dem Schlüssel des Anbieters da.
    • Ein präpariertes PDF konnte den Server umbringen —
      Dekompressionsbombe und unbegrenzte Bildgröße beim Rendern.
    • 32 Schwachstellen in Paketen, davon 5 kritische → keine.

    Geändert

    • Downloads laufen jetzt immer über die Anwendung, auch mit Objektspeicher.
      Nebeneffekt: Jeder Abruf prüft die Berechtigung und wird protokolliert.
    • docs/SICHERHEIT.md ist neu: Bedrohungsmodell, OWASP-Durchgang, und ein
      Abschnitt darüber, was ausdrücklich nicht geschützt ist.

    Einzelheiten im Changelog.

    Downloads