Et bufferoverløb er en type fejl i datalogi , der har betydelige sikkerhedsproblemer forbundet med det. En buffer er et sted at gemme datasæt og en bufferoverløb opstår, når et program forsøger at gemme flere data i en buffer end sin kapacitet.
Buffer Overskridelsen er en type fejl i datalogi
Eksempel
Følgende kode illustrerer en simpel bufferoverløb : Hej
//Opret et array af ti integersint [10] arrayOfTenIntegers ,
//Forsøg at skrive data til den 100th adresse arrayarrayOfTen [ 100] = 1;
bufferoverløb opstår og alle data i at blive gemt i beliggenhed ved siden arrayOfTenIntegers i hukommelsen overskrives .
Sikkerhed konsekvenser
Denne fejl kan udnyttes af en virus at narre en computer til at køre kode, det ellers ville aldrig kørt , ved at indsprøjte kode ind i en anden programmer del af hukommelsen .
Execution Area Protection
i praksis fleste moderne operativsystemer forsøger at adskille de områder af hukommelse , der anvendes for programmet, og dem, der anvendes til datalagring , der kaldes en funktion Execution Area Protection.
sanity kontrol
bufferoverløb illustrerer behovet for god tilregnelighed kontrol på indkommende data, når skrive software.
Farerne ved C
C /C + + sproget giver lidt indbygget beskyttelse mod bufferoverløb i forhold til sprog, såsom Java.