XSS dalle uscite JSON

2

Nel libro "XSS Attacks - Exploits and Defense" scrive Jeremiah Grossman:

The exploit found in Google’s reader was due to the developers thinking that JSON was only going to be viewed by the calling script.The developers never realized that attackers could send users directly to the JSON output. While AJAX and JSON do not generally introduce new holes per se, they definitely can increase the attacker’s surface area.

Io non c'è modo per l'attaccante di forzare il browser della vittima a eseguire javascript direttamente da JSON. C'è qualche esempio che mostri lo scopo degli autori?

    
posta ᔕIᑎᗩ KᗩᖇᐯᗩᑎᗪI 30.01.2017 - 19:25
fonte

1 risposta

1

Per area di superficie, Grossman fa riferimento al principio secondo il quale la probabilità di un attacco di successo aumenta man mano che viene identificato più del limite di sicurezza di un sistema. 1

Nella domanda, la penetrazione di superficie di un utente malintenzionato per eseguire JavaScript da JSON (chehttp: //blog.watchfire.com/wfblog/2011/10/json-based-xss-exploitation.html potrebbe arrivare al browser attraverso un RETful GET o POST asincroni può richiedere due punti di violazione.

  • La possibilità di iniettare JavaScript nello stream JSON RESTful
  • La possibilità di trasferire l'esecuzione a uno degli oggetti istanziati durante l'analisi

A seconda delle condizioni precedenti all'attacco 2 , uno o entrambi questi meccanismi potrebbero già essere presenti, quindi non richiedere quella particolare violazione. 3

La risposta diretta alla domanda è che i vari attacchi XSS documentati possono essere utilizzati per realizzare una o entrambe le violazioni. Quali potrebbero essere utilizzati dipenderanno dai dettagli della superficie menzionata da Grossman.

C'è un esempio nel commento di @ rápli-andrás e qui è una buona panoramica con più esempi di codice.

[1] Una volta che si verifica una violazione, se non ci sono altre superfici di sicurezza, l'attacco è completo. Altrimenti è parziale, il che può comunque facilitare gli obiettivi dell'attaccante.

[2] Le condizioni includono il design del sistema e il suo stato di esecuzione corrente nel browser e nel server.

[3] Questo potrebbe aver contribuito alla vulnerabilità con Google Reader.

    
risposta data 31.01.2017 - 21:43
fonte

Leggi altre domande sui tag