Datamaskin
  | Hjem | Hardware | Nettverk | Programmering | Software | Feilsøking | Systems | 
Programmering  
  • C /C + + Programming
  • Computer Programmeringsspråk
  • Delphi Programming
  • Java Programming
  • JavaScript Programmering
  • PHP /MySQL programmering
  • Perl Programming
  • Python Programming
  • Ruby Programming
  • Visual Basics Programming
  •  
    Datamaskin >> Programmering >> Computer Programmeringsspråk >> Content
    Hva er bufferoverløp String Håndtering
    ? Sikkerhetshull i programvare kan komme i flere former enn programmerere kan forestille deg. En av disse angrepene er bufferoverløpet , når en angriper gir mer informasjon enn et program kan håndtere. Spesielt programmering scenarier, for eksempel system programmering eller lavt nivå C-programmering , string buffere er sårbare for utnytting. Visse streng håndtering teknikker kan brukes for å forhindre disse angrepene . Disse teknikkene omfatte overvåking av strengen størrelse , sjekke buffer grenser og ved hjelp av trygge streng - håndtering funksjoner . String bufferoverløpene

    Når programmerere skrive kode for å håndtere tekstlig brukerundersøkelser , beveger den inngangen ofte gjennom en buffer eller variabel . Buffer " overkjørt " oppstår når programmerer ikke skaper en buffer av tilstrekkelig størrelse til å håndtere brukerens input. Inngangen stopper ikke når buffer stopper. Snarere lagrer programmet teksten i minnet direkte følge buffer, potensielt overskrive viktige programdata . Strengbufferen flyter oftest oppstår når programmerere ikke sjekke brukerundersøkelser riktig.
    Kontroll Boundaries

    Bruker innspill kan ofte strekke seg utover grensene for en rekke på grunn av dårlig grensen sjekking. Spesielt i C , der strengene er representert som matriser av tegn , sette inn og manipulere strenger i disse matriser kan bli vanskelig. Det er mulig å feilberegner rekke indeksverdier og overskrive steder i minnet utenfor tabellen. Ved å alltid inkludert kode som sjekker grensene i tabellen for å sikre at de ikke er overskrevet , kan programmereren begrense streng tilgang til matrisen .
    Bruke Store buffere

    høyere nivå språk, for eksempel C # eller Java , kan programmereren bruke spesifikke innspill gjenstander som inneholder store buffere . Javas BufferedReader er et godt eksempel på dette. Brukeren kan opprette dette objektet med en stor bugger eller stokk med sin store standard buffer størrelse for å håndtere input . Gjenstanden håndterer deretter tekst i bufferen. I lavere nivå språk som C , programmerer vil mest sannsynlig bruke tegnet arrays . I så fall må programmereren sikre at karakteren rekke mottar data fortsatt stor nok til å håndtere alle tenkelige data størrelse.
    Bruk Secure Funksjoner

    Såvidt brukerundersøkelser går , benytter programmeringsspråket C ulike funksjoner for ulike input operasjoner . Ikke alle av disse alternativene er sikre. For eksempel Gets funksjonen sjekker ikke brukerundersøkelser i det hele tatt , og vil la noe passere inn i programmet . Den strcpy funksjonen vil ikke utføre grensekontroll. I stedet bør andre sikre funksjoner benyttes , for eksempel fgets eller strncpy funksjoner.

    früher :

     Weiter:
      Relatert Artike
    ·Hvordan sette en VBA End of Statement 
    ·Definisjonen av UML 
    ·Hva er de to funksjoner av DMAP 
    ·Hvordan skrive en Fortran Program 
    ·Hvordan beregne Frames Per Second 
    ·Hvordan bruke Device - Mapper Multipath 
    ·Hvordan hente en link fra en celle i GridView 
    ·Hvordan lage en produktnøkkel i Visual Installer 
    ·Slik konverterer Pseudo Codes til flytskjemaer 
    ·Hvordan bruke CVS Diff 
      Anbefalte artikler
    ·Slik Clear Java Web Start Cache 
    ·Slik konverterer en ByteArray OutputStream til en Input…
    ·Slik importerer DBX filer 
    ·Hvordan sette opp Distribusjon i VBS 
    ·Hvordan Design Joomla Meny Maler 
    ·Hvordan redigere DataGrid Cell i Silverlight 
    ·Forskjellen mellom fgetc og getc 
    ·Hvordan få opp en skanner i Java 
    ·Slik konverterer en Alphabet Into Caps i CPP 
    ·Hvordan bruke referanser for en VB6 
    Copyright ©  Datamaskin  http://www.datamaskin.biz/