02.06.2013 Views

analisi e gestione della sicurezza di una complessa applicazione ...

analisi e gestione della sicurezza di una complessa applicazione ...

analisi e gestione della sicurezza di una complessa applicazione ...

SHOW MORE
SHOW LESS

Create successful ePaper yourself

Turn your PDF publications into a flip-book with our unique Google optimized e-Paper software.

6.2.5 I vantaggi nascosti<br />

CAPITOLO VI - Gli attacchi e il progetto OWASP<br />

Per rendere più “attraente” l’uso dei parameters nei command anche ai più scettici, ve<strong>di</strong>amo<br />

adesso quali altri vantaggi ne derivano.<br />

Il vantaggio più evidente per lo sviluppatore riguarda i rognosi problemi dei separatori dei<br />

decimali, date e ora. Un comando SQL che non fa uso dei parametri deve necessariamente<br />

convertire il DateTime in stringa:<br />

string str = "select * from orders where OrderDate>" + MyDate.ToString();<br />

Il DateTime internamente non ha cognizione dei separatori, tanto meno del nome, dei giorni o<br />

dei mesi. Nel Framework. .NET il DateTime è un numero a 64bit in cui ogni unità rappresenta<br />

cento nanosecon<strong>di</strong> a partire dall’anno zero. In sostanza è un offset da <strong>una</strong> data convenzionale<br />

ed ha <strong>una</strong> granularità molto bassa che ci permette <strong>di</strong> rappresentare con esattezza un istante<br />

temporale.<br />

Il risultato <strong>della</strong> conversione da DateTime a stringa è relativo a dove viene fatta la conversione.<br />

Negli USA la data del 6 Luglio 2005 sarà 7/6/2005, in Italia 06/07/2005 ed in Svizzera<br />

06.07.2005. Questa impostazione deriva dai settaggi internazionali <strong>di</strong> Windows associati al<br />

profilo dell’utente il cui token ha fatto partire il processo <strong>della</strong> nostra <strong>applicazione</strong>.<br />

123

Hooray! Your file is uploaded and ready to be published.

Saved successfully!

Ooh no, something went wrong!