Turinys:
Apibrėžimas - ką reiškia „Stack Smashing“?
Paketų sutriuškinimas yra tokia pažeidžiamumo forma, kai kompiuterio programos ar OS krūva yra priversta perpildyti. Tai gali pakenkti programai / sistemai ir ją sugadinti.
Rietuvė, pirmojo paskutinio išėjimo grandinė, yra buferio forma, laikanti tarpinius operacijų rezultatus joje. Norėdami supaprastinti, dėkite į krūvą daug daugiau duomenų, nei jo laikymo talpa. Kvalifikuoti įsilaužėliai gali sąmoningai įnešti per daug duomenų į krūvą. Duomenų perteklius gali būti saugomas kituose krūvos kintamuosiuose, įskaitant funkcijos grąžinimo adresą. Kai funkcija grįžta, ji pereina prie kenkėjiško kodo, kuris gali sugadinti visą sistemą. Paveikiami gretimi krūvos duomenys ir programa verčiama strigti.
„Techopedia“ paaiškina „Stack Smashing“
Jei programa, kuriai įtakos turi krūvos sutriuškinimas, priima duomenis iš nepatikimų tinklų ir veikia su specialiomis privilegijomis, tai yra saugumo pažeidžiamumo atvejis. Jei buferyje yra nepatikimo vartotojo pateiktų duomenų, paketas gali būti sugadintas, įleidžiant vykdomąjį kodą į programą ir tokiu būdu įgyjant neteisėtą prieigą prie kompiuterio. Užpuolikas taip pat gali perrašyti krūvoje saugomą valdymo srauto informaciją.
Kadangi krūvos sutriuškinimas tapo labai rimtu pažeidžiamumu, tam tikros technologijos yra įgyvendinamos siekiant įveikti krūvą triuškinančią katastrofą. Apsaugos nuo kamino buferio apsauga keičia duomenų organizavimo funkciją skambučio kamino rėme, kad būtų įtrauktos kanarinės vertės. Šios vertės sunaikintos rodo, kad prieš ją buferis buvo perpildytas. Kanarinės vertės kontroliuoja buferio perpildymą ir yra dedamos tarp kontrolinių duomenų ir buferio buferio. Tai užtikrina, kad buferio perpildymas pirmiausia sugadina kanarėlę. Nesėkmingas kanarų duomenų patikrinimas reiškia krūvos perpildymą. Trys kanarų tipai yra „Random“, „Terminator“ ir „Random XOR“.
Terminatoriaus kanarėlė remiasi tuo, kad krūvos buferio perpildymo ataka priklauso nuo stygų operacijų, kurios baigiasi terminatoriais. Atsitiktiniai kanarai yra generuojami atsitiktinai iš entropijos rinkimo demono, kuris užkerta kelią užpuolikams žinoti vertybes. Inicijuojant programą generuojamos atsitiktinės kanarėlės ir saugomos globaliuose kintamuosiuose. Atsitiktinės XOR kanarėlės yra atsitiktiniai nešėjai, kurie XOR yra užšifruojami naudojant kontrolės duomenis. Tai panašu į atsitiktinius kanarus, išskyrus tai, kad „skaityti iš kamino metodą“ norint gauti kanarą yra sudėtinga. Hakeriui reikia kanarėlių, algoritmo ir valdymo duomenų, kad būtų galima sukurti originalų kanarėlę. Jie apsaugo nuo atakų, susijusių su perpildytais buferiais struktūroje į rodykles, kad rodyklė pasikeistų į valdymo duomenų dalį.
