Domov Zvok Kaj je razbijanje svežnja? - definicija iz tehopedije

Kaj je razbijanje svežnja? - definicija iz tehopedije

Kazalo:

Anonim

Opredelitev - Kaj pomeni Stack Smashing?

Razbijanje stakov je oblika ranljivosti, pri kateri je kup računalniške aplikacije ali OS prisiljen preplaviti. To lahko privede do podrejanja programa / sistema in ga zruši.


Sklop, prvi vhodni vezje, je oblika medpomnilnika, ki vsebuje vmesne rezultate operacij znotraj njega. Če želite poenostaviti, razbijanje zložite, tako da se v sveženj naloži več podatkov, kot je njegova zmogljivost. Spretni hekerji lahko namerno vnesejo odvečne podatke v sklad. Preveliki podatki so lahko shranjeni v drugih spremenljivkah skladov, vključno s povratnim naslovom funkcije. Ko se funkcija vrne, skoči na zlonamerno kodo na nizu, ki lahko poškoduje celoten sistem. Vplivajo sosednji podatki na naboru in prisilijo program, da se zruši.

Techopedia razlaga Stack Smashing

Če program, na katerega vpliva razbijanje skladov, sprejema podatke iz nezaupljivih omrežij in deluje s posebnimi privilegiji, gre za ranljivost varnosti. Če medpomnilnik vsebuje podatke, ki jih zagotavlja nezaupljiv uporabnik, se lahko sklad zlomi z vbrizgavanjem izvršljive kode v program in s tem pridobi nepooblaščen dostop do računalnika. Napadalec lahko prepiše tudi podatke o nadzornem toku, shranjene v sveženju.


Ker je razbijanje skladov preraslo v zelo resno ranljivost, se za premagovanje katastrofe zaradi zmanjševanja skladov uporabljajo nekatere tehnologije. Zaščita pred prelivom sklapljajočega sklada spremeni organizacijo podatkov v okviru skladanja funkcijskega klica, tako da vključuje kanarske vrednosti. Te vrednosti, ko se uničijo, kažejo, da je bil predpomnilnik v pomnilniku pred njim. Kanarske vrednosti nadzor medpomnilnika nadomeščajo in se postavijo med kontrolne podatke in medpomnilnik na nizu. To zagotavlja, da preliv pufra najprej pokvari kanar. Neuspešno preverjanje podatkov o kanarčkih pomeni preliv v nizu. Tri vrste kanarčkov so Random, Terminator in Random XOR.


Kanator terminatorja temelji na dejstvu, da je napad prelivanja medpomnilnika skladovnice odvisen od nizkih operacij, ki se končajo na terminatorjih. Naključni kanarčki nastanejo naključno iz demona, ki zbira entropijo, kar preprečuje, da bi napadalci vedeli vrednosti. Naključni kanarčki nastanejo ob inicializaciji programa in se shranijo v globalne spremenljivke. Naključni kanarčki XOR so naključni nosilci, ki jih XOR šifrira s pomočjo nadzornih podatkov. Podobno je z naključnimi kanarčki, le da je metoda branja s kanara "branje iz sklada" zapletena. Heker potrebuje kanarske podatke, algoritem in nadzor podatkov za izdelavo izvirnega kanarčka. Ščitijo pred napadi, ki vključujejo prelivanje medpomnilnikov v strukturi v kazalce, da spremenijo kazalec, da kaže na kos kontrolnih podatkov.

Kaj je razbijanje svežnja? - definicija iz tehopedije