|
|||||||
|
|
|
![]() |
|
|
Strumenti |
|
|
#1 |
|
Senior Member
Iscritto dal: Jun 2002
Città:
Provincia De VaRéSe ~ § ~ Lat.: 45° 51' 7" N Long.: 8° 50' 21" E ~§~ Magica Inter ~ § ~ Detto: A Chi Più Amiamo Meno Dire Sappiamo ~ § ~ ~ § ~ Hobby: Divertimento allo Stato Puro ~ § ~ ~ § ~ You Must Go Out ~ § ~
Messaggi: 8897
|
SQL injection
Allora ho da fare un esame e dentro ci può essere sql injection. Solo che non capisco cosa fare.
Esempi: a) una applicazione web in html in cui è presente una form che consente di inviare una email con contenuto generico (textfield) a un indirizzo inserito dall'utente (user_address). Questo indirizzo deve essere tra quelli presenti in una tabella autorizzata. Prima di inviare si esegue select count(*) from ValidAddressTable where address = ' + user_address + ' 1) illustrare il modo di manipolare il sistema per inviare una mail a un indirizzo arbitrario 2) illustrare come si può rendere più sicura l'applicazione Se mando dentro user_address = ' 1or1 il count dovrei averlo bypassato .. ma poi come faccio a mettere dentro l'indirizzo che voglio? b)applicazione per il login: select count(*) from user where pwd='+ stringa_pwd + ' and login = ' + stringa_login + ' 1) come violare la sicurezza dando un esempio 2) cosa cambirebbe se ci fosse invece un controllo sul fatto che il risultato dell'istruzione sia esattamente pari a 1? 3) cosa si deve fare per proteggere l'applicazione? 4) sulla query di partenza, si riesce a leggere dati da una tabella con lo stesso numero di colonne della tabella user? se si come? 5) cosa si deve fare per eliminare questo problema? Soluzione mia: 1) metto string_pwd = ' 1 or 1 '-- 3) la modifica sarebbe di controllare che non ci siano '-- o altri comandi sql Qualcuno mi spiega come si fanno ste cose? ~§~ Sempre E Solo Lei ~§~
__________________
Meglio essere protagonisti della propria tragedia che spettatori della propria vita
Si dovrebbe pensare più a far bene che a stare bene: e così si finirebbe anche a star meglio. Non preoccuparti solo di essere migliore dei tuoi contemporanei o dei tuoi predecessori.Cerca solo di essere migliore di te stesso |
|
|
|
|
|
#2 |
|
Senior Member
Iscritto dal: Jun 2002
Città:
Provincia De VaRéSe ~ § ~ Lat.: 45° 51' 7" N Long.: 8° 50' 21" E ~§~ Magica Inter ~ § ~ Detto: A Chi Più Amiamo Meno Dire Sappiamo ~ § ~ ~ § ~ Hobby: Divertimento allo Stato Puro ~ § ~ ~ § ~ You Must Go Out ~ § ~
Messaggi: 8897
|
Uppo nella speranza
~§~ Sempre E Solo Lei ~§~
__________________
Meglio essere protagonisti della propria tragedia che spettatori della propria vita
Si dovrebbe pensare più a far bene che a stare bene: e così si finirebbe anche a star meglio. Non preoccuparti solo di essere migliore dei tuoi contemporanei o dei tuoi predecessori.Cerca solo di essere migliore di te stesso |
|
|
|
|
|
#3 |
|
Senior Member
Iscritto dal: Sep 2004
Messaggi: 3967
|
a livello di esame universitari non ne ho la minima idea, ma in genere bastano dei 'parameters' per evitare sql iniection.
In base all'applicazione e al db, può variare qualcosa. Faccio un esempio in C# e MySql Codice:
SELECT COUNT(*) FROM Utenti WHERE userName = ? AND userPass = ?
//evitando quindi il classico:
where userName = '" + testo.Text + "' blabla
MySqlParameter user = new MySqlParameter("?user", MySqlDbType.Tipo, lunghezza)
user.Value = testoUserName.Text
//stessa cosa per password
__________________
Dai wafer di silicio nasce: LoHacker... il primo biscotto Geek
|
|
|
|
|
|
#4 |
|
Senior Member
Iscritto dal: Jun 2002
Città:
Provincia De VaRéSe ~ § ~ Lat.: 45° 51' 7" N Long.: 8° 50' 21" E ~§~ Magica Inter ~ § ~ Detto: A Chi Più Amiamo Meno Dire Sappiamo ~ § ~ ~ § ~ Hobby: Divertimento allo Stato Puro ~ § ~ ~ § ~ You Must Go Out ~ § ~
Messaggi: 8897
|
il problema è che devo risolvere quel tipo di esercizi
~§~ Sempre E Solo Lei ~§~
__________________
Meglio essere protagonisti della propria tragedia che spettatori della propria vita
Si dovrebbe pensare più a far bene che a stare bene: e così si finirebbe anche a star meglio. Non preoccuparti solo di essere migliore dei tuoi contemporanei o dei tuoi predecessori.Cerca solo di essere migliore di te stesso |
|
|
|
|
| Strumenti | |
|
|
Tutti gli orari sono GMT +1. Ora sono le: 10:26.



















