Articles

Sicurezza del linguaggio Javascript – strumenti di difesa

In sicurezza on aprile 14, 2010 by poyblog Messo il tag: , , ,

Come difendersi dalla tipologia di attacchi rappresentati nell’articolo: https://poyblog.wordpress.com/2010/04/14/sicurezza-del-linguaggio-javascript-metodologie-di-attacco/ ?

Dal punto di vista dell’utente finale le raccomandazioni più importanti sono:

  • non navigare contemporaneamente su più siti quando si è autenticati (il cookie rimane attivo)
  • Effettuare sempre il logout, infatti durante questa fase il cookie vine distrutto, in caso contrario rimane

Dal punto di vista dello sviluppatore è necessario validare tutte le variabili in input:

  • form
  • campi hidden
  • querystring

Per generare del buon codice Javascript è necessario gestire in modo molto accurato gli errori, e di conseguenza adottare delle valide metodologie di debugging.

Un costrutto molto efficace in questo caso è il classico blocco try-catch-finally. Con questo metodo il codice eseguito sta nella sezione try, mentre le eccezioni sollevate vengono gestire dalle sezioni catch. La sezione finally viene sempre eseguita, sia che l’esecuzione termini correttamente sia nel caso in cui si fermi anzitempo; solitamente questo blocco di codice serve per liberare risorse acquisite. Di seguito ecco un esempio di try-cath-finally:

<script type=”text/javascript”>
<!–
try{
document.write(10/0) ;
}
catch(e){

alert(e.message);
}
finally{

document.write(“questo codice viene eseguito comunque.”);
}
–>
</script>

Uno dei metodi migliori per validare i dati immessi dagli utenti è quello di utilizzare le espressioni regolari. Per chi volesse approfondire l’argomento suggerisco: http://it.wikipedia.org/wiki/Espressione_regolare

Sfruttando a dovere la potenza di questo strumento è possibile ridurre al minimo la possibilità di attacchi dato che tutte le stringhe in input sono controllate.

Comunque anche con l’ausilio delle espressioni regolari gli errori di programmazione exploitabili sono sempre possibili. Vale la pena utilizzare dei validi programmi di debug per ridurre al minimo queste probabilità. Ecco due dei maggiori strumenti di controllo:

Annunci

Una Risposta to “Sicurezza del linguaggio Javascript – strumenti di difesa”

  1. […] metodologie di attacco via JavaScript, e un altro dedicato invece alle modalità principali di difesa da questi attacchi (sia da parte dell’utente che da parte del […]

Rispondi

Inserisci i tuoi dati qui sotto o clicca su un'icona per effettuare l'accesso:

Logo WordPress.com

Stai commentando usando il tuo account WordPress.com. Chiudi sessione /  Modifica )

Google+ photo

Stai commentando usando il tuo account Google+. Chiudi sessione /  Modifica )

Foto Twitter

Stai commentando usando il tuo account Twitter. Chiudi sessione /  Modifica )

Foto di Facebook

Stai commentando usando il tuo account Facebook. Chiudi sessione /  Modifica )

Connessione a %s...

%d blogger hanno fatto clic su Mi Piace per questo: