- Ein 16-jähriger Schüler veröffentlichte eine Zusammenfassung darüber, wie sich über eine Schwachstelle in der Mintlify-Plattform Cross-Site-Scripting (XSS) auf den Dokumentationsseiten großer Unternehmen wie X, Vercel, Cursor und Discord ausführen ließ. Über diese Schwachstelle erhielt er 11.000 US-Dollar Bug-Bounty-Prämie
- Der interne Pfad
/_mintlify/static/[subdomain]/[...route] von Mintlify war so aufgebaut, dass externe Dateien ohne Domain-Validierung geladen werden konnten
- Angreifer konnten JavaScript in SVG-Dateien einbetten und dadurch bösartige Skripte auf Domains großer Dienste wie Discord ausführen
- Die Schwachstelle betraf nahezu alle Kunden von Mintlify; bereits ein einziger Klick auf einen Link konnte zur Kontoübernahme führen
- Der Vorfall gilt als Beispiel dafür, wie eine einzelne Schwachstelle in der Supply Chain zu Schäden in großem Maßstab führen kann
Entdeckung bei Discord
- Im November 2025 begann die Untersuchung der Schwachstelle, nachdem Discord auf die KI-basierte Dokumentationsplattform Mintlify umgestellt hatte
- Unmittelbar nach der Migration von der bisherigen Custom-Plattform zu Mintlify analysierte der Forscher die Struktur des neuen Dokumentationssystems
- Die Dokumentations-Domain von Discord (
discord.mintlify.app) legte den internen Pfad von Mintlify (/_mintlify/*) unverändert offen
- Dieser Pfad musste für zentrale Funktionen wie Authentifizierung zwingend erreichbar sein
Aufbau der Mintlify-Plattform
- Mintlify ist ein Dienst, der Markdown-basierte Dokumentationserstellung unterstützt und diese automatisch in Web-Dokumentation umwandelt
- Alle Dokumentationsseiten laufen unter der Subdomain
*.mintlify.app oder unter Custom-Domains
- Intern werden Endpunkte wie
/_mintlify/api/user, /_mintlify/markdown/ und /_mintlify/static/ verwendet
Ablauf der Schwachstellenanalyse
- Es wurde festgestellt, dass der Endpunkt
/_mintlify/_markdown/_sites/[subdomain]/[...route] Dateien anderer Dokumentationen ohne Domain-Validierung zurückgibt
- Allerdings lieferte dieser Pfad nur nicht gerenderten Markdown-Text zurück, sodass keine Codeausführung möglich war
- Anschließend wurde durch Analyse des Mintlify-CLI-Pakets zusätzlich der Endpunkt
/_mintlify/static/[subdomain]/[...route] entdeckt
- Dieser Pfad liefert statische Dateien aus und verwendet eine Whitelist für Dateierweiterungen
- HTML- und JS-Dateien waren blockiert, SVG-Dateien jedoch erlaubt
Praktische Ausnutzung
- Angreifer luden eine SVG-Datei mit eingebettetem JavaScript in ihre eigene Mintlify-Dokumentation hoch
- Wurde die Datei auf der Discord-Domain aufgerufen (
https://discord.com/_mintlify/_static/.../lmao.svg), wurde das Skript ausgeführt
- Damit war XSS nicht nur bei Discord, sondern auf den Dokumentations-Domains aller Unternehmen möglich, die Mintlify einsetzen
Zusammenarbeit und Meldung
- Der Forscher arbeitete mit anderen Sicherheitsforschern zusammen, um die Schwachstelle zu verifizieren
- Discord deaktivierte unmittelbar nach der Meldung die gesamte Entwicklerdokumentation für zwei Stunden und kehrte anschließend zur bisherigen Plattform zurück
- Nachdem Mintlify über Discord von der Schwachstelle erfahren hatte, richtete das Unternehmen einen Slack-Kanal zwischen dem Engineering-Team und den Forschern ein und begann sofort mit der Behebung
Auswirkungsbereich
- Die meisten Mintlify-Kunden, darunter X (Twitter), Vercel, Cursor und Discord, waren betroffen
- Auf den offiziellen Domains der jeweiligen Unternehmen bestand die Möglichkeit einer Kontoübernahme über einen einzelnen bösartigen Link
- Eine einzelne Schwachstelle in der Supply Chain kann eine Kettenreaktion von Sicherheitsrisiken für Hunderte Unternehmen auslösen
Belohnung und Fazit
- Das Forscherteam erhielt insgesamt rund 11.000 US-Dollar an Bug-Bounty-Prämien
- Discord zahlte 4.000 US-Dollar, Mintlify zusätzlich weitere Prämien für einzelne Schwachstellen
- Der Fall bleibt ein prägnantes Beispiel für die Bedeutung von Supply-Chain-Sicherheit und die enorme Reichweite einer einzelnen Plattform-Schwachstelle
Noch keine Kommentare.