PDA

Visualizza la versione completa : [C (ma anche altri linguaggi)] Funzioni di input e sicurezza


rsdpzed
19-05-2004, 14:23
Spesso nei post del forum leggo:

"Non usare scanf perch puo dare problemi di sicurezza"

oppure

"Non usare Gets perche puo dare problemi di sicurezza"


Qualcuno puo dirmi dove potrei informarmi meglio sull'argomento (magari anche per quanto riguarda java) o farmi un piccolo sunto?

Thx

gandalf45
19-05-2004, 16:24
google tuo amico :D (frase vista 200 volte :))

cmq sia se vuoi ti posso dare una breve spiegazione:
tu passi a scanf l'indirizzo di un'array di char su cui tu vuoi mettere l'input; come sai gli array hanno una lunghezza, se scanf trova un input pi lungo dell'array che fa? non sapendo quanto lungo il tuo array continua a sovrascrivere la memoria dove avrebbe dovuto continuare il tuo array che invece finito; in questo modo c' il rischio che venga modificato il valore di return permettendo ad un malintenzionato di sfruttare questo errore per far eseguire codice estraneo al tuo programma (te l'ho spiegato male :( ma il fatto che una materia complessa :bh:)

Loading