Home Hardware Networking Programmazione Software Domanda Sistemi
Conoscenza Informatica >> Programmazione >> C /C + + Programming >> .

C + + Funzioni che causano Buffer Overflow

A differenza di altri linguaggi , C e C + + non selezionare la dimensione di ingresso prima di scrivere in un buffer . Se l'ingresso è maggiore dello spazio allocato nel buffer , l'ingresso viene scritta su altri dati nella pila programma . Oltre a causare il vostro programma a comportarsi in modo anomalo , i buffer overflow può consentire a un hacker di crash il programma , accedere ai dati privati ​​o anche prendere il controllo di una macchina . Evitando pericolosi funzioni C + + è uno dei passi per prevenire i buffer overflow nel programma. Funzioni stringa

funzioni non sicure che gestiscono stringhe includono strcpy ( ) , strcat ( ) , sprintf ( ) , vsprintf ( ) , e ottiene ( ) . Queste funzioni eseguono operazioni su variabili stringa memorizzata come array di caratteri in C + + . Le funzioni di leggere una stringa da una fonte - come ad esempio l'input dell'utente - copia , o concatenare una stringa per formare una nuova stringa . Se non si seleziona la dimensione della nuova stringa prima di scrivere in memoria , può causare un buffer overflow .
Funzioni di scansione
funzioni di scansione di file non sicuri

includono scanf ( ) , fscanf ( ) , sscanf ( ) , vscanf ( ) vsscanf ( ) e vfscanf ( ) . Funzioni di scansione leggere i dati da input dell'utente , un file o altri fonti e scrivere in una stringa formattata . Se i dati di scansione è maggiore dello spazio allocato per la stringa di formattazione , si verifica un overflow del buffer .

 

Programmazione © www.354353.com