Mit meiner bloßen ID hätte ich die gesamte FIFA-Weltmeisterschaft rickrollen können
(bobdahacker.com)- Allein durch die Anmeldung bei der öffentlichen FIFA Agent Platform war es möglich, in den Microsoft-Entra-Mandanten der FIFA zu gelangen und sogar auf die Football Data Platform für den Betrieb der FIFA World Cup 2026 sowie Funktionen zur Verwaltung von Broadcast-Streams zuzugreifen
- Ursache war eine clientseitige Berechtigungsprüfung: Der JWT-Status
NO_ROLESwurde nur im Frontend geprüft, während die Backend-API keine Rollen erzwang - Das offengelegte Streaming-Management-Panel enthielt pro Spiel 5 Kamera-Feeds mit RTMP-Ingest-URL, Preview-Manifest, Output-URL und Stream-Key; in VLC ließ sich ein Live-Preview-Feed abspielen
- Der Zugriff ging über bloßes Lesen hinaus und umfasste einige Schreiboperationen wie Starten, Stoppen und Terminieren von Spiel-Streams sowie Live-Statistiken, Anstoßzeit, Spielstand und taktische Aufstellungen; auch das Commentator Information System und eine Azure Function App für die Entwicklung waren offen
- FIFA reagierte nicht direkt, stellte den Server aber am Tag nach der Meldung so um, dass er
403zurückgab; der Forscher fordertsecurity.txt, eine Richtlinie zur Offenlegung von Schwachstellen, ein Bug-Bounty-Programm und serverseitige Berechtigungsprüfungen
Die öffentliche Anmeldung zur Agent Platform führte zu internem Zugriff
- Die FIFA Agent Platform ist ein öffentliches Portal zur Registrierung von Fußballagentenlizenzen; eine Anmeldung ist mit Ausweis und E-Mail-Verifizierung möglich
- Nach Abschluss der Anmeldung wurde das Konto dem Microsoft Entra-Mandanten der FIFA hinzugefügt, der offenbar plattformübergreifend für interne FIFA-Systeme genutzt wurde
- Der Forscher scheiterte wegen eines Beleuchtungsproblems beim Ausweisfoto zweimal und schaffte die Anmeldung erst beim dritten Versuch
- Beim anschließenden Aufruf von
fdp.fifa.orgließ die Football Data Platform die Authentifizierung passieren und zeigte danach nur einen Bildschirm an, der besagte, dass keine Rolle vorhanden sei- Auf dem Bildschirm erschien eine Zugriffsverweigerung mit dem Hinweis, dass dem Konto keine „FIFA Football Data Platform role“ zugewiesen sei
- Die tatsächliche Prüfung blieb jedoch beim clientseitigen Rendering der Angular-App; die Backend-API lieferte die angeforderten Daten trotzdem zurück
Streaming-Management-Panel offengelegt
- Nach dem Umgehen des clientseitigen Guards war der Zugriff auf das produktive Streaming-Management-Panel der FIFA World Cup 2026 möglich
- Das Panel zeigte alle Spiele, Kamerawinkel, RTMP-Ingest-URLs und Stream-Keys an
- Pro Spiel gab es 5 Kamera-Feeds
PGMTacticalCamera1High Behind LeftHigh Behind Right
- Jeder Feed enthielt die folgenden Informationen
- die RTMP-Ingest-URL, an die die Kamera das Video sendet
- ein Preview-Manifest, mit dem sich der Feed ansehen lässt
- die Output-URL als HLS-Manifest, das an Broadcast-Partner ausgeliefert wird
- Die UUID am Ende der RTMP-Ingest-URL war der Stream-Key, und derselbe Key wurde für die 5 Kamerawinkel desselben Spiels gemeinsam verwendet
- Die Streaming-Infrastruktur wurde beim Streaming-Technologiepartner der FIFA, MediaKind, gehostet und war ein produktiver Endpunkt, der Live-Kamera-Feeds aus Stadien in den USA, Mexiko und Kanada entgegennahm
Live-Feeds sichtbar und Möglichkeit zur Stream-Steuerung
- Als der Forscher das Preview-Manifest in VLC einfügte, wurde auf einem PC in Tokio der Live-Feed der Tactical Camera eines aktiven Spiels abgespielt
- Der Feed wurde direkt danach geschlossen, aber es wurde bestätigt, dass die Preview-URL während laufender Spiele Live-Video auslieferte
- Das Streaming-Management-Panel bot nicht nur Lesezugriff, sondern auch Steuerfunktionen wie start, stop, schedule
- Der Forscher klickte keine Steuerbuttons an, aber die Steuerfunktionen für alle Spiele und alle Kamerawinkel waren im Panel sichtbar
- Die RTMP-Ingest-URL war der Eingabepfad von den Stadionkameras zu MediaKind und den Broadcast-Partnern
- Der Ablauf war Kamera → RTMP-Ingest → MediaKind → Broadcast-Partner → TV
- Ein Angreifer hätte Video zusammen mit dem Stream-Key an den RTMP-Endpunkt pushen und damit den Kamera-Feed ersetzen können
PGMist der Haupt-Broadcast-Output; würde dieser ersetzt, könnte auf TV-Netzwerken, die den FIFA-Feed beziehen, vom Angreifer eingespeistes Material erscheinen
- Der Forscher betont ausdrücklich, dass er zu keinem RTMP-Endpunkt Video gepusht hat
Weitere Funktionen der Football Data Platform offengelegt
- Ein
NO_ROLES-Konto konnte neben Streaming Management auch auf viele weitere Bereiche der Football Data Platform zugreifen- Competitions
- Matches
- Teams
- Tools
- Exchange Platform
- Analysis Dashboard
- Commentator Information System
- FIFA AI Pro
- Admin
- Das Live-Match-Dashboard enthielt einen eingebauten Videoplayer, eine Echtzeit-Ereignis-Timeline und Daten zu Spieloffiziellen
- Als Beispiel wurde das Spiel Côte d'Ivoire vs Ecuador als live angezeigt, zusammen mit einer Yellow-Card-Timeline und Informationen zu den Match Officials
- Advanced Analytics umfasste live possession control, attempt creation breakdowns, ball recovery timing, distance covered und eine Integration von FIFA AI Pro
Schreiboperationen in der Spielverwaltung und Einfluss auf Broadcast-Daten
- Im Tab Management von
fdp.fifa.orggab es Schreiboperationen, und das Backend akzeptierte Anfragen vonNO_ROLES-Konten - Der Bildschirm „Update Live Stats“ enthielt einen Rich-Text-Editor, Felder für Spielzeit und Spielstand sowie einen Button
Edit and Publish - Die zugänglichen Verwaltungsbereiche waren
- Attendance
- Possession
- Post Match Statistics
- Team Registration Statistics
- Analysis Finished
- Score and Statistics
- Adjust Kick-off Moment
- Performance Data
- Send Tactical Lineup
- Event Ingress Details
- Ein Angreifer hätte folgende Aktionen durchführen können
- editorial commentary notes bearbeiten und veröffentlichen, die an Broadcast-Systeme weitergegeben werden
- die offizielle Anstoßzeit anpassen
- tactical lineup data senden
- Spielstand und Spielstatistiken ändern
- Diese Daten fließen laut Darstellung in das Commentator Information System ein und werden im Live-TV angezeigt
Zugriff auf das Commentator Information System
- Auch
cis.fifa.orgwar mit einemNO_ROLES-Konto zugänglich - Dieses System war ein Echtzeit-Dashboard, das Broadcast-Kommentatoren während laufender Spiele verwenden
- Das Dashboard für die FIFA World Cup 2026 zeigte Live-Spielstände, angesetzte Spiele und Ergebnisse
- Im Bildschirm zum Spiel Côte d'Ivoire vs Ecuador in der 75. Minute waren Tactical View, Spielerpositionen, Formation, Live-Statistiken, Wechsel-Timeline und Kaderdaten enthalten
- Im Konto waren außerdem editorial note für Kommentatoren, pre-match stats kit und talking point einsehbar
Azure Function App der Entwicklungsumgebung offengelegt
- Der Forscher entdeckte außerdem eine Azure Function App in der Form
xxxxxxxxx-spreadsheets-api.azurewebsites.net - Diese API gab Metadaten zu 23 internen FIFA-Dateien sowie direkte Download-URLs aus Azure Blob Storage zurück
- In den Antworten waren Dateinamen wie
00_TransferCount_in_ENGLISH.xlsx,0_pending_transfers_example.xlsxundDebbie.xlsxenthalten - Als Inhalte der Dateien wurden transfer reports, revenue comparisons, board-level representation data sowie referee and coach statistics genannt
- Auch bei dieser API fehlte eine Rollenprüfung
Meldeversuche und Kontaktwege
- Der Forscher erklärte, er habe das Problem während der Weltmeisterschaft entdeckt, doch FIFA habe weder ein Bug-Bounty-Programm noch
security.txtoder einen öffentlichen Sicherheitskontakt gehabt - Er schickte die vollständige Meldung an mehrere FIFA-Adressen und Mitarbeiter-E-Mails; 5 kamen als unzustellbar zurück, auf die übrigen gab es keine Antwort
- Über LinkedIn fand er Sebastian Runge, Head of Football Technology & Data bei FIFA, und kontaktierte ihn per WhatsApp, erhielt aber keine Antwort
- Er rief das FIFA-Hauptquartier in Zürich und die FIFA-Medienleitung an, doch es war Sonntagabend in Zürich und beide Stellen waren geschlossen
- Auch beim Kay Bailey Hutchison Convention Center in Dallas, wo sich das International Broadcast Centre befand, rief er an, landete jedoch auf der Mailbox
- Die gebührenfreie Nummer von MediaKind war erreichbar; der Ansprechpartner verstand das Problem sofort und bat darum, die Details inklusive Stream-Key per E-Mail zu senden
- HBS wurde ebenfalls angerufen, doch nach der Aussage, dass niemand helfen könne, wurde das Gespräch beendet; ein weiterer Rückruf kam nicht zustande
- Auch die Muttergesellschaft von HBS, Infront Sports & Media, war telefonisch nicht erreichbar
- Der Forscher bestätigte daraufhin, dass CISA die föderale Cybersecurity-Führung für die FIFA World Cup 2026 einschließlich der Broadcast-Systeme innehat, und kontaktierte das 24/7 Operations Center
- CISA nahm den Anruf entgegen und bat darum, die Details per E-Mail zu senden
- Auch einen FBI-Kontakt aus früherer Cybersecurity-Arbeit kontaktierte er über Signal; von dort kam die Antwort, man habe Kontaktwege und müsse das passend aufbereiten
Nach der Behebung verbliebene Offenlegung
- Zwischen der Meldung und dem folgenden Tag wurde die Schwachstelle behoben, und das
NO_ROLES-Konto des Forschers erhielt statt der clientseitigen Zugriffsverweigerung nun eine serverseitige 403-Antwort - FIFA gab jedoch keinerlei direkte Rückmeldung, weder eine Bestätigung der Meldung noch Dank oder Gespräche über eine Belohnung
- Der Forscher erklärte allerdings, dass er weiterhin auf der FDP-E-Mail-Verteilerliste stehe und offizielle Spieldokumente zur FIFA World Cup 2026 erhalte
- Start Lists
- Tactical Lineups
- Full Time Match Reports
- Dokumente, die in 4 Sprachen versendet werden
Ursache war fehlende serverseitige Erzwingung von Berechtigungen
- Die Grundursache war eine Architektur, die Berechtigungen nur im Client prüfte, ohne serverseitige Erzwingung
- Interne FIFA-Anwendungen nutzten Microsoft Entra für Authentifizierung und rollenbasierte Zugriffskontrolle, aber das Frontend prüfte nur den JWT-Role-Claim und renderte bei fehlender Rolle einen Zugriffsverweigerungsbildschirm
- Die Backend-API vertraute lediglich darauf, dass es sich um ein authentifiziertes Mitglied des Mandanten handelte, und lieferte Daten unabhängig von der Rolle aus
- Der Angriffsablauf war wie folgt
- öffentliche Registrierung bei
agents.fifa.org - Hinzufügen des Kontos zum FIFA-Entra-Mandanten
- Authentifizierung an internen FIFA-Apps
- der Client zeigt Zugriffsverweigerung an
- der Server liefert Daten
- öffentliche Registrierung bei
- Dieses Muster betraf mindestens die folgenden Systeme
fdp.fifa.org— Football Data Platformcis.fifa.org— Commentator Information Systemxxxxxxxxx-spreadsheets-api.azurewebsites.net— Entwicklungsumgebung
- Der Forscher fordert von FIFA eine
security.txt-Datei, eine Richtlinie zur Offenlegung von Schwachstellen (VDP), ein Bug-Bounty-Programm und serverseitige Berechtigungsprüfungen
1 Kommentare
Lobste.rs-Kommentare
Ich frage mich, ob man damit nicht auch Zugriff auf die Bestechungsverwaltungs-Konsole der FIFA hatte
could've? Schade, dass es nicht wirklich gemacht wurdeIch verstehe den Tonfall des Artikels nicht
Das ist einfach eine lustige Geschichte. Wenn ich mir ein Internet ohne solche Vorfälle vorstelle, klingt das extrem langweilig, und der Autor sollte eher dankbar sein
Außerdem hat niemand verlangt, dass das gemeldet werden muss, also verstehe ich nicht, warum sich darüber beschwert wird, dass das Melden schwierig war. Wenn man will, macht man es, und wenn nicht, dann eben nicht. Wenn man so wütend war, hätte man die Lücke ja ausnutzen können, statt sich darüber zu beklagen, dass es keine E-Mail-Adresse für Sicherheitsmeldungen gibt
Merkwürdig ist, dass der Autor nicht die dumme Schwachstelle selbst kritisiert, sondern nur, dass es schwer gemacht wurde, sie zu melden
Hinweise darauf sind die titelartige Großschreibung, kurze Sätze mit vielen Punkten, kurze rhetorische Fragen wie „That UUID at the end? [...] That's the stream key“ und die Verwendung des Wortes „breakthrough“ in einem nichttechnischen Text
In längeren Beiträgen der Autorin in sozialen Medien schreibt sie nicht so
Deshalb ist wahrscheinlich Panik ausgebrochen. Es wurden Dinge gesehen, die niemand hätte sehen dürfen, und falls tatsächlich ein Hack passiert wäre, wäre diese Person der erste Verdächtige gewesen
Es ist erstaunlich, dass so riesige Organisationen nicht einmal die Grundlagen beherrschen
Man hat das Bild eines Managements voller Geschäftsleute, deren Computerverständnis auf dem Niveau von Derek Zoolander liegt
Ich kann verstehen, dass es Schwachstellen geben kann, aber wenn ein Sicherheitsforscher das dem FBI melden muss, ist das ein noch größeres strukturelles Problem
Es wäre großartig gewesen, wenn ein Hacker die FIFA-Weltmeisterschaft gerickrollt hätte
Das wäre fast so legendär geworden wie der Hack des Sphere in Las Vegas
Es wirkt, als hätte man die Integration zwischen Portal und Streaming-Panel grob von Copilot zusammenzimmern lassen und es dann dabei belassen
Ich frage mich, ob die Seite für alle down ist oder nur bei mir
Mit einem öffentlichen rekursiven Resolver getestet, scheint die Seite selbst in Ordnung zu sein
Die Domain stand vor einer Woche in rpz/tif.txt der dns blocklist aus dieser Kopie. Wahrscheinlich auch in anderen Formaten, aber ich habe nur die Datei geprüft, die ich nutze
Nach welchen Kriterien die Domain in diese Liste aufgenommen wurde, weiß ich nicht, in der neuesten Version ist sie jedenfalls nicht mehr enthalten