Dator
 |  Startsida |  Hårdvara |  Nätverk |  Programmering |  Programvara |  Felsökning |  System |   
Programmering
  • C /C + + -programmering
  • Computer Programspråk
  • Delphi Programmering
  • Java Programming
  • JavaScript programmering
  • PHP /MySQL Programmering
  • perl Programmering
  • python Programming
  • Ruby programmering
  • Visual Basics Programmering
  • * Dator Kunskap >> Programmering >> Computer Programspråk >> Content

    Effekterna av buffertöverflöden & strings format på Program Flow

    Även de mest anspråkslösa aspekter av ett program kan presentera säkerhetshot . Grundläggande inmatning kan kortsluta ett program interna kod på olika sätt . Ingången kan använda arbetena av utskriftsfunktioner för att komma åt programmets Flödeskontrollen av tvingande gränser funktionen . Eller , kan det överskrids bufferten gränser som fastställts för den av programmeraren för att påverka data utanför dess programmerare - avsedda utrymmet . Hursomhelst , påverkar användarens input hur programmet körs , eventuellt mot illasinnade syften . Format Strings

    Formatera strängar i C och C + + är en del av in-och utgångar . Formatet strängen innehåller data för att mata data till skärmen. Formatera strängar har två huvudkomponenter . Den första är den grundläggande strängen för att skriva ut , som innehåller tecken och skiljetecken . Den andra komponenten innehåller specialtecken märkt med procentuella tecken som fungerar som platshållare för variabeldata . Dessa symboler finns i strängen , och ersätts under produktionen med värden i variabler . Följande exempel illustrerar ett grundläggande printf uttalande med en formatsträng :

    char x = " c " , int y = 10 ;

    printf ( " Skriva ut tecken % c och decimaler % d " , , x , y ) ;
    Formatsträng Attacks

    otrygghet för formatsträngar ligger i hur symbolerna bäddas in i de övriga sträng referens delar av programmet . Till exempel kan en angripare in data i en variabel som används i ett format sträng injicera symboler som tillåter henne att komma åt andra ramar för genomförandet av programmet . På så sätt kan angriparen ändra värden i variabler som inte omfattas av utskriftsfunktionen . Dessutom kan angriparen tillgång möjligen värden i minnet som representerar placeringen av funktioner . Angriparen kan sedan ändra detta värde att peka på en annan funktion , vilket ändrar flödet av utförande och i huvudsak kapning programmet .
    Ingångsbuffertar

    Input buffertar är utrymmen av datalagring som skapats av programmeraren för att hålla data som anges av användaren. Oftast , ingångsbuffertar hanterar användarens inmatning av log in namn och lösenord . Specifikt för programspråket C , som inte omfattar infödda sträng hantering , ingångsbuffertar existera som arrayer av tecken med en uppsättning storlek . I detta fall är det upp till programmeraren att fördela data för användarens input .
    Buffer Overflow

    En angripare kan utnyttja begränsningarna av dessa buffertar genom översvämningar det med data . I det enklaste exemplet , innebar en mängd tecken att hålla en logg i namn kanske har 20 rum fördelade , men en angripare ger det över tjugo tecken att bearbeta . I detta fall , de extra tecken skrivs minnesplatser direkt efter uppsättningen . Dessa minnesplatser håller möjligen relevanta data programkörning , till exempel villkorliga variabler för uttalanden flödeskontroll eller referenser till funktioner på stacken . Liksom formatsträng attack , gör detta i huvudsak för angriparen att kapa programmet .

    Tidigare:

    nästa:
    relaterade artiklar
    ·Hur man installerar en IPA -fil i en iPhone Simulator
    ·Hur man gör en person gå i Game Maker 7
    ·Vad är en Boolean typ
    ·Hur Code dataöverföring med HTTPService Flex
    ·Vad är skillnaden mellan XSL & XSD
    ·Hur kan man överföra bilder till ASP.Net
    ·Hur Infoga databas information i Flödesschema
    ·Hur man gör den grafiska Borders
    ·Vad är blanktecken i Matlab
    ·Hur man lär CNC Makron Programmering
    Utvalda artiklarna
    ·Hur Override Java Arv
    ·Hur du ändrar färg i C + +
    ·Hur man driver ett Powershell Inside Visual Basic Progr…
    ·Hur Fördela Xcode i Mac Apps
    ·Hur du registrerar ett SIS Nokia Application fil
    ·Hur konvertera heltal till Datum Värde Visual Basic
    ·Vilka är de Event & händelsehanterare i Visual Basic
    ·Hur man gör en webbläsare
    ·Hur man sparar filen med en tid och datum i LabVIEW
    ·Hur att införliva ett Lista över listor i Python
    Copyright © Dator Kunskap http://www.dator.xyz