| Hjem | Hardware | Netværk | Programmering | software | Fejlfinding | systemer | 
Programmering  
  • C /C + + Programming
  • Computer Programmeringssprog
  • Delphi programmering
  • Java programmering
  • JavaScript Programmering
  • PHP /MySQL programmering
  • Perl programmering
  • Python Programming
  • Ruby Programming
  • Visual Basics Programmering
  •  
    Computer Viden >> Programmering >> C /C + + Programming >> Content
    Sådan Fix en Buffer Overrun
    A bufferoverløb eller buffer overflow , er et problem, hvor et edb-program skriver flere data til en buffer end det har været afsat for denne buffer. Som følge heraf er skrives data til en tilstødende del af hukommelsen , potentielt overskrive andre data. Dette kan medføre, at programmet til at handle ujævnt , potentielt får det til at gå ned. Det kan også udnyttes til at udløse driften af ​​et ondsindet program . Som sådan er det altid tilrådeligt at undgå bufferoverløb i et program . Ting du skal
    Kildekode indeholdende buffer overflow
    Compiler for sproget i denne kildekode
    Vis Flere Instruktioner
    1

    indsnævre din søgning . Du kan gøre dette ved at udskrive debug information og ved at forhindre dele af programmet i at køre. Bufferoverløb kan være svært at opspore fordi beviserne ikke altid er konsekvent. Men hvis de beviser, du har forsvinder, når en del af programmet er forhindret i at køre , er det en god indikation af problemet er med den del .
    2

    Læs kildekoden. Når du har tilstrækkeligt indsnævret din søgning, kigge gennem kildekoden til noget, der kan potentielt forårsage et overløb . Undertiden er det i en løkke, der skriver ud over længden af ​​et array . Nogle gange er det er en sammenkædning af strenge til en streng større end buffer afsat til denne streng .
    3

    Fastgør fejl. Hvis problemet var at skrive forbi en array- bounds, sørg uanset forårsaget , der kører ordentligt , eller at den vifte korrekt skaleres efter behov. Sørg for at alle string buffere er store nok til at holde strengene , de må have.
    4

    Tag forebyggende foranstaltninger . Brug bounds - kontrol funktioner, så som at sikre, at hukommelsen er aldrig overskrives. Dynamisk resize arrays som nødvendigt . Hold nøje øje med alle potentielle hukommelse skriver at sikre, at de aldrig skriver til den forkerte område af hukommelsen .

    Forrige :

    næste :
      Relaterede artikler
    ·Sådan Detect en begivenhed WIA Wait 
    ·Sådan Afsætte Pointers 
    ·Sådan Skyl Buffer i C + + 
    ·Sådan Lær C # Step-by- Step 
    ·Sådan importeres koder med SVN Xcode 3.2 
    ·Sådan bruges Microsoft Visual Studio C Compiler for Pi…
    ·Sådan vises filer fra en udvalgt trævisning Node i en…
    ·Hvordan man laver en Quiz i C + + 
    ·Sådan kompilere C + + header filer 
    ·Fordele ved LINQ 
      Anbefalede Artikler
    ·Sådan tilføjes et login knappen for at NIB 
    ·Sådan bruges Pipes i Java 
    ·Sådan Indsæt Records i Java 
    ·Sådan nulstilles Novell Administrator Password 
    ·Sådan Læs e-mail i Visual Basic 
    ·Sådan konvertere en streng til GUID 
    ·Struts Vs. Hibernate 
    ·Sådan Beregn NS2 Båndbredde 
    ·Sådan oprettes Visual Basic Graphic Screens 
    ·Forskellen mellem Fortolket & Compiled Sprog 
    Copyright © Computer Viden http://www.computerdk.com