Hallo zusammen,
Ich möchte eine Beobachtung mit euch teilen: myAI kann beim Erstellen von Inhalten eine herunterladbare Datei (Word, Excel, PDF, HTML) generieren und stellt einen Download-Link bereit - manchmal auch dann, wenn man gar keine Datei explizit angefordert hat, sondern myAI aus dem Kontext heraus entscheidet, dass eine Datei sinnvoll wäre. Dieser Link funktioniert ohne Authentifizierung und offenbar unbegrenzt - trotz scheinbarem Ablaufmechanismus. Probiert es selbst: kopiert einen solchen Link und öffnet ihn in einem Inkognito-Browser ohne Swisscom-Login. 😬
Das heisst: Man muss gar nicht bewusst eine Datei anfordern, um potenziell sensible Inhalte auf einem öffentlich erreichbaren Bucket zu haben.
🔍 Technischer Hintergrund:
Die generierten Links verweisen auf einen AWS Bucket (Frankfurt, eu-central-1) und sehen ungefähr so aus:
$$
https://myai-cb-documents-prd.s3.eu-central-1.amazonaws.com/…/generated-XXXXX.docx
?X-Amz-Security-Token=…
&X-Amz-Algorithm=AWS4-HMAC-SHA256
&X-Amz-Date=…
&X-Amz-SignedHeaders=host
&X-Amz-Credential=…
&X-Amz-Expires=600
&X-Amz-Signature=…
$$
Ja, der Link enthält einen langen, kryptisch aussehenden Token/Signatur-String - das erweckt auf den ersten Blick den Eindruck von Sicherheit. Aber: Dieser Token ist kein persönlicher Login und keine Session-Bindung. Wer den Link hat - egal wer, egal wo, egal wann - hat Zugriff. Und der Parameter X-Amz-Expires=600, der suggeriert, dass der Link nach 10 Minuten ablaufen sollte, wird offensichtlich nicht durchgesetzt. ⚠️
🚨 Das eigentliche Problem:
Ich habe festgestellt, dass Links, die vor mehreren Tagen generiert wurden, immer noch funktionieren - in einem Inkognito-Browser, ohne jeglichen Swisscom-Login. Das bedeutet:
Der Expires=600 Parameter ist entweder wirkungslos oder wird nicht serverseitig durchgesetzt
Die Dateien sind möglicherweise öffentlich zugänglich (Public Read auf Bucket-/Object-Ebene)
Die Pre-Signed URL Signatur ist in diesem Fall nur Kosmetik - kein echter Schutz
⚠️ Warum das problematisch ist:
Die Dateien enthalten potenziell sensible Inhalte (Finanzdaten, persönliche Informationen, Code, etc.)
Wer den Link hat, hat Zugriff - tagelang, möglicherweise unbegrenzt
Kein Login, keine Session, keine Authentifizierung erforderlich
Nicht sicher ob Speicherort Frankfurt 🇩🇪 (eu-central-1), nicht Schweiz
Unklar ob und wann die Dateien jemals gelöscht werden
🔁 So könnt ihr das Problem selbst reproduzieren:
Öffnet myAI und lasst eine Datei generieren (z.B. Word, Excel oder HTML)
myAI erstellt einen Download-Link - Rechtsklick → “Link-Adresse kopieren”
Wartet mehrere Stunden oder einen Tag ⏱️
Öffnet ein neues Inkognito-/Privat-Fenster (kein Swisscom-Login, keine aktive Session)
Fügt den kopierten Link ein und drückt Enter
Wenn die Datei trotz Expires=600 immer noch heruntergeladen wird → Houston, we have a problem 🚨
Bonus: Versucht die URL ohne Query-Parameter (nur den Pfad zur Datei)
❓ Meine Fragen an myAI community & Swisscom:
Warum funktionieren Links nach Tagen, wenn X-Amz-Expires=600 gesetzt ist? Ist der Bucket öffentlich? 🔓
Werden die Dateien jemals gelöscht? Wenn ja, nach welcher Frist? 🗑️
Warum Frankfurt und nicht ein Schweizer Rechenzentrum? 🇨🇭
Gibt es eine Möglichkeit, eigene erstellte Dateien manuell zu löschen?
Ist dieses Verhalten gewollt oder ein Konfigurationsfehler? 🛡️
Wie verträgt sich das mit den Datenschutzversprechen von myAI?
📋 Zusammenfassung:
Ich möchte keine Panik verbreiten - aber das Ergebnis meines Tests spricht eine deutliche Sprache. Entweder ist die Pre-Signed URL Implementierung fehlerhaft, oder der Bucket ist schlicht öffentlich konfiguriert. Beides wäre für einen Schweizer Telekom-Anbieter, der mit Datenschutz wirbt, erklärungsbedürftig.
Hat jemand ähnliche Tests gemacht oder kann meine Beobachtung bestätigen/widerlegen? 🙏
Danke und Grüsse
Hinweiss: Ca. 75% dieses Beitrags wurden mit myAI erarbeitet und strukturiert.