Le app del telefono sono vulnerabili a XSS o CSRF? (Webview, PhoneGap, Chrometab)

9

Devo fornire la prova che CSRF o XSS è possibile su un telefono ... utilizzando PhoneGap, una Webview, o in particolare una "Scheda Chrome" o equivalente iOS.

Credo che in teoria sia possibile, e la mitigazione è necessaria, ma stiamo cercando esempi di exploit precedenti non eseguiti in un "browser"

    
posta random65537 07.06.2015 - 04:06
fonte

2 risposte

6

Un attacco CSRF può avvenire solo quando i cookie (o altri meccanismi di autenticazione) vengono forniti automaticamente dal client. Cioè, dove il cliente ha accesso ai cookie da più domini (come un browser Web che memorizza i cookie per ogni sito che visiti).

Tuttavia, un'app mobile contenente un visualizzatore Web in genere avrà solo i cookie per il proprio sistema. I cookie non saranno condivisi con altre applicazioni utilizzando lo stesso controllo del visualizzatore Web. Tutto ciò che viene caricato dal sistema di archiviazione sarà anche isolato l'uno dall'altro: Android e iOS dispongono di controlli di sicurezza che impediscono alle app di leggere i dati di altre app. Pertanto, CSRF non è probabile all'interno di un'applicazione mobile.

L'XSS potrebbe comunque rappresentare un problema, dal momento che qualsiasi cosa visualizzata in una pagina web visualizzata da un'app in cui JavaScript è abilitato potrebbe causare l'esecuzione di codice JavaScript se tale difetto esiste, proprio come all'interno di un browser web.

    
risposta data 11.06.2015 - 11:42
fonte
0

XSS è solitamente un attacco contro un server. A meno che il telefono non stia servendo pagine Web a connessioni esterne, questo non dovrebbe essere un problema. Se il server che sta servendo le pagine al telefono è vulnerabile, XSS è identico a un normale sito Web, con l'eccezione che potrebbe essere più difficile indurre qualcuno a seguire un link. A meno che la tua applicazione non raccolga dati da altre fonti non attendibili (un file, input dell'utente, messaggi interdominio) e li visualizzi senza caratteri di escape - vedi sotto.

CSRF si basa sul prendere una sessione valida in modo che dipenda dalla sandbox implementata dal componente del browser. Sarei molto sorpreso se fosse possibile, a meno che tu non abbia implementato male le chiamate jsonp, o window.postMessage o simili. (vedi: link per ulteriori idee su questo)

    
risposta data 07.06.2015 - 12:29
fonte

Leggi altre domande sui tag