Quali sono i rischi di sicurezza esatti di avere JavaScript abilitato?

2

Ci sono molti siti web che dichiarano che dovresti disabilitare JavaScript a causa dei possibili rischi per la sicurezza. C'è anche una ragione per cui un AddOn come NoScript è stato sviluppato e viene usato molto.

Ora, i tempi in cui ho usato JavaScript per arricchire l'esperienza utente il codice più pericoloso che ho potuto eseguire nel browser era fondamentalmente solo un ciclo con messaggi alert di spamming, questo è più di un fastidio che un rischio per la sicurezza tuttavia e può essere facilmente disabilitato dall'utente su browser aggiornati.

Tuttavia, NoScript esiste e quindi JavaScript può probabilmente fare più danni delle finestre di messaggio. Quali rischi di sicurezza reale possono essere sfruttati quando JavaScript è abilitato e stai visitando un sito Web con codice JavaScript dannoso? (Supponendo un motore e un browser JavaScript moderni (Chrome, Firefox))

È possibile accedere alle informazioni all'esterno del browser e inviarle al server?

I file possono essere scaricati sul computer client senza il consenso del cliente?

Quali gravi minacce alla sicurezza ci sono che si basano esclusivamente sul codice JavaScript del client consentito dal browser?

    
posta Sombrero Chicken 16.01.2016 - 14:55
fonte

1 risposta

4

What serious security threats are there that solely rely on the client JavaScript code that the browser allows?

Un rischio sono le implementazioni bug che possono essere utilizzate per bloccare il browser o eseguire il codice utilizzando attacchi di irrorazione dell'heap o simili. Questi possono essere mitigati all'interno dei browser moderni usando ASLR, DEP, sandbox e tecniche simili.

Più interessanti sono gli attacchi come Cross Site Scripting ( XSS ). Questi attacchi possono essere utilizzati per rubare le credenziali di autorizzazione (ovvero le password) o per dirottare le sessioni esistenti. In questo modo possono essere utilizzati per il furto d'identità o l'uso improprio. Funzionano perché lo stesso browser viene utilizzato per diversi siti Web (ad esempio, bancario e guardando i gatti) e in questo modo abbatte i confini di sicurezza tra questi siti. La stessa politica di origine è solo di uso limitato in questi casi.

Un tipico caso di tali attacchi è l'inclusione di script di terze parti in un sito web. Può trattarsi di librerie Javascript esterne, codice di monitoraggio come google analytics, pulsanti per social network o pubblicità. Questo codice incluso è fuori dal controllo del sito web originale ma ha ancora pieno accesso al sito all'interno del browser e può quindi leggere le informazioni da esso, compilare moduli o leggere il loro contenuto, navigare l'utente verso siti diversi, premere pulsanti simili , inserire pubblicità o malware ecc.

Oltre al fatto che Javascript può essere utilizzato per impronta digitale del browser in un modo più dettagliato che potrebbe essere un problema soprattutto quando si cerca di essere anonimi.

Can information outside of the browser be accessed and sent off to the server?

Non dovrebbe essere possibile accedere ai file sul computer locale (almeno non senza notifica) ma con attacchi come rebinding DNS è possibile leggere i contenuti dai siti Web intranet e inoltrare queste informazioni all'autore dell'attacco.

Anche i bug nei server locali o intranet possono essere utilizzati per dirottare le connessioni a terze parti come fatto in questo esempio dello stesso script del sito.

Can files be downloaded to the client computer without the client's consent?

Questo di solito non può essere fatto con Javascript da solo, ma spesso viene fatto usando bug in Flash o Java.

    
risposta data 16.01.2016 - 16:58
fonte

Leggi altre domande sui tag