Skip to content

Blossom-Anhänge unterliegen nicht den Gruppenrechten #35

Description

@usekaneo

Sicherheitslücke, die durch die invite-only-Entscheidung (CON-22) scharf wird.

Nachgesehen am 2026-09-09: scripts/dev-blossom.mjs prüft die Autorisierung nur beim Upload (kind 24242, t=upload, Signatur über den Hash). Der Lesepfad GET /<sha256> hat keinerlei Prüfung — wer die URL oder den Hash kennt, lädt die Datei, ohne npub, ohne Mitgliedschaft, ohne AUTH.

Da die Anhang-URLs im Seitentext stehen, heißt das für einen privaten Space: der Text ist geschützt, die Bilder und Dateien sind es nicht. Blossom kennt das NIP-29-Gruppenmodell nicht.

Mögliche Wege, zu entscheiden:

  1. Blossom-Server prüft beim GET eine Autorisierung (t=get, BUD-01 sieht das vor) und fragt die Mitgliedschaft beim Relay ab — bindet den Dateiserver an das Relay
  2. Anhänge vor dem Upload verschlüsseln, Schlüssel im Revisionstext — schützt auch gegen den Betreiber des Dateiservers, macht Vorschaubilder und Verlinkung aber aufwendig
  3. Bewusst akzeptieren und offen dokumentieren, dass Anhänge nicht dem Gruppenschutz unterliegen — vertretbar nur, wenn die UI beim Anhängen darauf hinweist

Betrifft auch den Produktivbetrieb: Für CON-4 muss klar sein, welcher Blossom-Server unter welchen Regeln läuft.

Betroffen: scripts/dev-blossom.mjs, src/nostr/blossom.ts, docs/09-security-privacy.md


Task: d6hwjvhykh50bgb3qfjlg010

Activity

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

No one assigned

    Projects

    No projects

      Milestone

      No milestone

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions