Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Matrix v1.12 – Behandlung Content-Type & Content-Disposition für Medien #281

Open
Johennes opened this issue Oct 14, 2024 · 2 comments
Open

Comments

@Johennes
Copy link
Contributor

Abgespalten von #271.

Folgende Änderung soll im Hinblick auf TI-M bewertet und falls nötig behandelt werden:

  • Specify Content-Type and Content-Disposition usage in the media repo, as per MSC2701 and MSC2702. (#1935)
@Johennes Johennes changed the title Matrix v1.12 – Behandlung Content-Type & Content-Disposition Matrix v1.12 – Behandlung Content-Type & Content-Disposition für Medien Oct 14, 2024
@Johennes Johennes mentioned this issue Oct 14, 2024
44 tasks
@Johennes
Copy link
Contributor Author

Johennes commented Oct 16, 2024

  • Neue SHOULD Empfehlungen gegen XSS-Attacken
    • CS-API sollte nicht auf derselben Domain gehosted werden wie Clients
    • Liste von Content-Type Werten für die Server in Content-Disposition den Wert inline erlauben können
  • Server MÜSSEN Content-Type beim Download exakt so wie beim Upload übermittelt oder in angemessenen Grenzen korrigiert setzen
  • Änderungen an Endpunkten für Mediendownloads
    • Content-Type und Content-Disposition werden von optional auf verpflichtend geändert
      • /media/download/{serverName}/{mediaId}
      • /media/download/{serverName}/{mediaId}/{fileName}
      • /media/v3/download/{serverName}/{mediaId}
      • /media/v3/download/{serverName}/{mediaId}/{fileName}
    • Content-Type wird von optional auf verpflichtend geändert, Content-Disposition kommt verpflichtend neu hinzu und MUSS immer inline sein
      • /media/thumbnail/{serverName}/{mediaId}
      • /media/v3/thumbnail/{serverName}/{mediaId}
  • Änderungen an Endpunkten für Medienuploads
    • Content-Type bleibt optional, Default-Wert wird auf application/octet-stream geändert
      • /media/v3/upload
      • /media/v3/upload/{serverName}/{mediaId}
  • Kompatibilität
    • Content-Disposition auf den Thumbnail-Endpunkten gänzlich neu
    • Wert dort allerdings immer inline (was Clients ohnehin erwarten sollten)
    • Content-Disposition auf den Download-Endpunkten nicht neu
    • Daher keine Kompatibilitätsprobleme zu erwarten

Die TI-M-Spec regelt diese problematik aktuell nur in generischers durch A_25523.

A_25523 - Keine Ausführung aktiver Inhalte

Verfügt der TI-M Client über eine Funktion, Dokumente direkt über den TI-M Client ohne Nutzung von Third-Party Software anzuzeigen, MUSS er die Ausführung von aktiven Inhalten verhindern. [<=]

Vorschlag: Für TI-M Webclients machen wir die Domain-Empfehlung verpflichtend.

A_1 – Domainseparation für Web-Clients

TI-M Web-Clients und Fachdienste dürfen nicht auf derselben Domain gehosted werden.

Frage: Kann A_25523 konkretisiert werden, so dass inline nur für die empfohlenen Content-Type Werte verwendet werden DARF?

  • text/css
  • text/plain
  • text/csv
  • application/json
  • application/ld+json
  • image/jpeg
  • image/gif
  • image/png
  • image/apng
  • image/webp
  • image/avif
  • video/mp4
  • video/webm
  • video/ogg
  • video/quicktime
  • audio/mp4
  • audio/webm
  • audio/aac
  • audio/mpeg
  • audio/ogg
  • audio/wave
  • audio/wav
  • audio/x-wav
  • audio/x-pn-wav
  • audio/flac
  • audio/x-flac

@Johennes
Copy link
Contributor Author

@AlexB030 hast du eine Meinung zum Vorschlag und der Frage oben? ☝️

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

No branches or pull requests

1 participant