Kaj je škropljenje?

Razprševanje kopice je hekerska tehnika, ki se uporablja za izkoriščanje ranljivosti v računalniški programski opremi. Deluje tako, da pridobi nadzor nad programom z izkoriščanjem dela njegovega pomnilnika. Ko je del pomnilnika nadzorovan s hekersko kodo, lahko heker prevzame nadzor nad izvajanjem kode z izvajanjem prelivanja medpomnilnika v območju kopice pomnilnika. Najpogostejša aplikacija za škropljenje je vdiranje v spletne brskalnike, kot je Internet Explorer®.

»Kup« je dinamični blok pomnilnika, ki ga računalnik dodeli določenemu programu, imenovan tako, ker računalnik nameni navidezni kup pomnilnika programu. To si lahko predstavljamo kot prostor za shranjevanje v omari ali mizi. Ta kup pomnilnika pripada programu, dokler ga programska oprema ali zbirna koda operacijskega sistema ne sprosti. Zbirna koda je preprosto varna naprava, ki si povrne pomnilnik, če se program zruši ali programska oprema sama ne sprosti pomnilnika po prenehanju uporabe.

Pri razprševanju kopice heker poskuša “razpršiti” pomnilniško kopico z določenim delom kode. Cilj je postaviti kodo na določeno mesto znotraj pomnilniške kopice programa, kot je zagozditev loma v rob okvirja vrat, da se zagotovi vzvod za prisilno odpiranje vrat. Potem ko se informacije zagozdijo v pomnilniško kopico s toplotnim razprševanjem, lahko heker prepolni bodisi kopico bodisi celoten pomnilniški pomnilnik, kar povzroči napake v sistemu. Ko pride do napak, jih lahko heker izkoristi za izvajanje lastne kode v sistemu.

Škropljenje na kopico deluje zaradi dinamičnega dodeljevanja pomnilnika v sistemu. Računalniški program je zaenkrat v bistvu »lastnik« celotnega dela pomnilnika, tako da heker že pozna relativno lokacijo v pomnilniku, ki ga je računalnik dodelil programu. Zato heker potrebuje malo specifičnosti, da bi svojo kodo zagozdil v razpoke; lahko na slepo razprši kodo, saj ve, da bo blok pomnilnika vedno tam, dokler se program še naprej izvaja. To bi lahko primerjali s poskusom odrivanja ključavnice z zavezanimi očmi; naloga postane skoraj nemogoča, če se ključavnica premika naokoli, a dokler ostane na enem fiksnem mestu – tako kot kopica pomnilnika v sistemu – postane opravilo mogoče.