Hjem Audio Hva er stacksmashing? - definisjon fra techopedia

Hva er stacksmashing? - definisjon fra techopedia

Innholdsfortegnelse:

Anonim

Definisjon - Hva betyr Stack Smashing?

Stakkesprengning er en form for sårbarhet der bunken til et dataprogram eller operativsystem tvinges til å strømme over. Dette kan føre til at programmet / systemet blir undergravet og krasjet.


En stabel, en første inn-ut-ut-krets, er en form for buffer som holder mellomresultater av operasjoner i den. For å forenkle, stabler du med å slå mer data i en stabel enn holdekapasiteten. Dyktige hackere kan bevisst introdusere overdreven data i stabelen. Overdreven data kan lagres i andre stabelvariabler, inkludert funksjonens returadresse. Når funksjonen kommer tilbake, hopper den til den ondsinnede koden på stabelen, noe som kan ødelegge hele systemet. Tilstøtende data på stabelen påvirkes og tvinger programmet til å krasje.

Techopedia forklarer Stack Smashing

Hvis programmet som er berørt av stacksmashing godtar data fra ikke-tillitlige nettverk og kjører med spesielle rettigheter, er det et sikkerhetsproblem. Hvis bufferen inneholder data levert av en ikke-klarert bruker, kan stabelen bli ødelagt ved å injisere kjørbar kode i programmet, og dermed få uautorisert tilgang til en datamaskin. En angriper kan også overskrive kontrollstrøminformasjon som er lagret i stabelen.


Siden stack-knusing har vokst til en veldig alvorlig sårbarhet, implementeres visse teknologier for å overvinne stack-knusende katastrofen. Beskyttelse mot overstrømming av bufferbuffer endrer organisering av data i stabelrammen til en funksjonsanrop for å inkludere kanariverdier. Disse verdiene når de blir ødelagt, indikerer at en buffer som går foran den i minnet har blitt overfylt. Kanariske verdier overvåker bufferoverløp og plasseres mellom kontrolldataene og bufferen på stabelen. Dette sikrer at et bufferoverløp ødelegger kanarien først. En mislykket bekreftelse av kanariedata betyr et overløp i stabelen. De tre typene kanari er tilfeldig, terminator og tilfeldig XOR.


Terminatorkanarien er basert på det faktum at stabelen av buffertoverløp avhenger av strengoperasjoner som slutter på terminatorene. Tilfeldige kanarifugler genereres tilfeldig fra en entropi som samler demonen, som forhindrer angripere i å kjenne verdier. Tilfeldige kanariefugler genereres ved programinitialisering og lagres i globale variabler. Tilfeldige XOR-kanarier er tilfeldige bærere som er XOR-kryptert ved bruk av kontrolldata. Det ligner på tilfeldige kanarifugler bortsett fra at "read from stack-metoden" for å få kanarifuglen er sammensatt. Hackeren trenger kanarifuglene, algoritmen og kontrolldataene for å produsere den originale kanarifuglen. De beskytter mot angrep som involverer overfylte buffere i en struktur til pekere for å endre pekeren til å peke på et stykke kontrolldata.

Hva er stacksmashing? - definisjon fra techopedia