Sisällysluettelo:
Määritelmä - mitä puskurin ylivuoto tarkoittaa?
Puskurin ylivuoto tapahtuu, kun puskuriin kirjoitetaan enemmän dataa kuin siihen mahtuu. Ylimääräinen tieto kirjoitetaan viereiseen muistiin, korvaamalla kyseisen sijainnin sisältö ja aiheuttaen odottamattomia tuloksia ohjelmassa. Puskurin ylivuodot tapahtuvat, kun virheellinen validointi (ei rajoituksia ennen tietojen kirjoittamista. Sitä pidetään ohjelmistovirheenä tai heikkoutena)
Techopedia selittää puskurin ylivuodon
Hyökkääjät voivat hyödyntää puskurin ylivuotovirheen injektoimalla koodia, joka on erityisesti räätälöity aiheuttamaan puskurin ylivuoto tietojoukon alkuosan kanssa, kirjoittamalla sitten loput tiedot muistiosoitteeseen, joka on täynnä puskuria. Ylivuotodata saattaa sisältää suoritettavan koodin, jonka avulla hyökkääjät voivat ajaa isompia ja hienostuneempia ohjelmia tai myöntää itselleen pääsyn järjestelmään.
Puskurin ylivuodot ovat yksi pahimmista virheistä, joita hyökkääjä voi hyödyntää lähinnä siksi, että sitä on erittäin vaikea löytää ja korjata, varsinkin jos ohjelmisto koostuu miljoonista rivistä koodia. Jopa näiden virheiden korjaukset ovat melko monimutkaisia ja alttiita virheille. Siksi tämän tyyppisen virheen poistaminen kokonaan on todella mahdotonta.
Vaikka kaikki ohjelmoijat tietävät puskurin ylivuodon mahdollisen uhan ohjelmissaan, niin uudessa kuin vanhassa ohjelmistossa on edelleen paljon puskurin ylivuotoon liittyviä uhkia, riippumatta jo suoritettujen korjausten lukumäärästä.
