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 >> C /C + + Programming >> Content
    Hvordan fikse en bufferoverløp
    A bufferoverløpet , eller buffer overflow , er et problem der et dataprogram skriver mer data til en buffer enn det som er avsatt til at buffer . Som et resultat blir data skrevet til en tilstøtende del av minnet , som potensielt kan overskrive andre data . Dette kan føre til at programmet til å handle uberegnelig , potensielt forårsaker den til å krasje. Det kan også utnyttes til å utløse driften av et ondsinnet program . Som sådan , er det alltid lurt å unngå bufferoverflyter i et program . Du trenger
    Kildekode som inneholder buffer overflow
    Compiler for språket i denne kildekoden
    Vis flere instruksjoner
    en

    Begrens ditt søk . Du kan gjøre dette ved å skrive ut debug informasjon og ved å hindre deler av programmet fra å kjøre. Buffer overflow kan være vanskelig å spore opp fordi bevisene er ikke alltid konsekvent . Men hvis bevisene du har forsvinner når en del av programmet er forhindret fra å kjøre , er det en god indikasjon på problemet er med den delen .
    2

    Les kildekoden . Når du har tilstrekkelig snevret søket, se gjennom kildekoden for noe som potensielt kan føre til en overflod. Noen ganger er det i en sløyfe som skriver utover lengden av en matrise . Noen ganger er det en sammensetning av strenger til en streng større enn buffer avsatt til strengen.
    3

    Fest feil. Hvis problemet var å skrive forbi en tabellens grenser , sørg for hva som forårsaket den går som den skal, eller at matrisen er riktig skaleres etter behov. Kontroller at alle string buffere er store nok til å holde i trådene de kan holde .
    4

    Ta forebyggende tiltak. Bruk intervallkontroll funksjoner slik som å garantere at minnet er aldri overskrevet . Dynamisk endre størrelsen arrays som nødvendig. Hold forsiktig oversikt over alle potensielle minne skriver for å sikre at de aldri skrive til feil område av minnet .

    früher :

     Weiter:
      Relatert Artike
    ·Hvordan Sett verdien av en variabel i en streng C 
    ·Hvordan bruke CoffeeCup StyleSheet Maker 
    ·Hvordan returnere en Vector Fra en funksjon 
    ·Hvordan Skjul subview på en iPhone 
    ·Hvordan konvertere en BMP til en Byte Array 
    ·Hvordan sette den Isolation nivå i ODBC 
    ·Legge til en DLL til en CPP Project 
    ·Hva er Partial Properties 
    ·Hvordan lese en Array i C Språk 
    ·Hvordan bruke pekere i C + + 
      Anbefalte artikler
    ·Hvordan tillate Perl i Snow Leopard 
    ·Hvordan lage en keylogger i Python 
    ·Mobile C # Development Tutorial 
    ·Hvordan Godta Bruker Input Med Python 
    ·Hvordan Lukk arbeidsbøker i VBA 
    ·Hvordan stopper jeg en person fra å komme til huset mi…
    ·Hvordan lese en fil i ANSI C 
    ·Hvordan erstatte flere tegn i en streng Med Java 
    ·Hvordan starte opp Python IDLE Miljø 
    ·VBS Tutorial 
    Copyright ©  Datamaskin  http://www.datamaskin.biz/