| Home  | Casa  | Hardware  | Networking  | Programmazione  | Software  | Domanda  | Sistemi  |   
Programmazione  
  • C /C + + Programming

  • Computer Programming Languages

  • Delphi Programming

  • Java Programming

  • Programmazione Javascript

  • PHP /MySQL Programmazione

  • Perl Programming

  • Python Programming

  • rubino Programmazione

  • Nozioni di base di Visual Programming
  •  
    Conoscenza Informatica >> Programmazione >> Computer Programming Languages >> Content
    Che cosa è sovraccarico del buffer String Handling
    ? Falle di sicurezza nel software possono venire in forme più che i programmatori possono immaginare. Uno di questi attacchi è il sovraccarico del buffer , quando un attaccante fornisce più informazioni di un programma in grado di gestire . In particolare gli scenari di programmazione , come ad esempio la programmazione del sistema o di programmazione C di basso livello , i buffer di stringa sono vulnerabili allo sfruttamento . Alcune tecniche di manipolazione delle stringhe possono essere impiegati per prevenire questi attacchi . Queste tecniche comprendono il monitoraggio della dimensione della stringa , verifica limiti di buffer e utilizzando le funzioni di gestione delle stringhe sicure . String BUFFER PIENO

    Quando i programmatori di scrivere codice per gestire l'input dell'utente testuale , che l'input spesso si muove attraverso un buffer o variabile. Buffer " superamento " si verifica quando il programmatore non crea un buffer di dimensioni sufficienti per gestire l'input dell'utente . L'ingresso non si ferma quando il buffer si ferma. Piuttosto , il programma salva il testo in memoria subito dopo il buffer , potenzialmente sovrascrivere i dati del programma fondamentali . Stringa di buffer overflow più spesso si verificano quando i programmatori non controllano l'input dell'utente in modo corretto.
    Controllo Boundaries

    Ingresso utente può spesso estendersi oltre i confini di un allineamento a causa del cattivo confine controllo . In particolare in C , dove le stringhe sono rappresentate come array di caratteri , l'inserimento e la manipolazione di stringhe in questi array può diventare difficile. E 'possibile valori di indice di matrice sbagliare e sovrascrivere posizioni in memoria al di fuori della matrice . Da sempre incluso il codice che controlla i confini della matrice per garantire che essi non siano sovrascritti , il programmatore può limitare l'accesso stringa alla matrice.
    Usando grandi buffer

    Nei linguaggi di più alto livello , come C # o Java , il programmatore può utilizzare gli oggetti di input specifici che contengono grandi buffer . BufferedReader di Java è un buon esempio di questo . L'utente può creare l'oggetto con un grande stronzo o un bastone con la sua grande dimensione del buffer predefinito per gestire l'input . L'oggetto quindi gestisce testo nel buffer. In linguaggi di basso livello come C , il programmatore probabilmente array di caratteri di uso . In tal caso , il programmatore deve assicurarsi che l' array di caratteri ricezione di dati rimane sufficiente per gestire qualsiasi formato di dati immaginabile .
    Usare le funzioni sicura

    Per quanto riguarda l'input dell'utente va , il linguaggio di programmazione C impiega funzioni diverse per le varie operazioni di input . Non tutte queste opzioni sono sicuri . Per esempio, la Ottiene funzione non controlla l'input dell'utente a tutti, e vi permetterà di passare qualche cosa nel programma. La funzione strcpy non effettuerà alcun controllo limiti. Invece , le altre funzioni di sicurezza dovrebbero essere utilizzati , come ad esempio le fgets o funzioni strncpy .

    Previous :

    next :
      Articoli Correlati
    ·Come scrivere Progetti Open Source 
    ·Come Ctrl + Alt + Canc un PC remoto 
    ·Possono Media persone sviluppano un App Android 
    ·Che cosa è Virtual Reality Modeling Language 
    ·Come Design Specification Lingue per Sistemi di Control…
    ·Come trovare una griglia di riferimento OS 
    ·Intestazione PE Caratteristiche DLL 
    ·Vs decimale . Tipi di dati numerici 
    ·Come aggiungere un utente a un gruppo Wheel 
    ·I vantaggi di utilizzare generalizzazione in UML Modell…
      Articoli in evidenza
    ·Come costruire applet Java 
    ·Come disegnare una Five Star Point Usare Python Lingua 
    ·Come visualizzare documenti di Word in pagine web Net 
    ·C MDI Tutorial 
    ·Come fare una Key Presser Con VB 
    ·Come disattivare un client tastiera Server utilizzando …
    ·Che cosa è una dichiarazione di programma ? 
    ·Come aggiornare più colonne di un'altra tabella 
    ·Come mettere il codice JavaScript in un file PHP 
    ·Che cosa è JDK in Java 
    Copyright © Conoscenza Informatica http://it.wingwit.com