Skip to main content

Ano ang isang stack buffer overflow?

Ang isang pag -apaw ng buffer ng stack ay kung ano ang mangyayari kapag ang isang programa ay gumagawa ng isang pagpasok sa isang memorya ng computer na mas mahaba kaysa sa inilalaan na puwang.Sa ilang mga pangyayari maaari itong masira ang iba pang data sa memorya, na nagiging sanhi ng mga problema sa pagpapatakbo ng computer.Sa iba pang mga kaso ang isang stack buffer overflow ay maaaring samantalahin ng isang nakakahamak na aplikasyon upang kontrolin ang iba pang mga bahagi ng computer.: Ang termino ay nagmula sa pagkakatulad ng pagtatambak ng mga pisikal na item.Isang bersyon nito, ang

call stack,

ay ang listahan na ginagamit ng isang programa sa computer upang masubaybayan ang iba't ibang mga bahagi ng programa, ang mga subroutines, na gumagana sa anumang partikular na sandali.Habang ang call stack ay nagpapatakbo sa isang pansamantalang batayan at kailangang ma -access nang mabilis, matatagpuan ito sa memorya ng mga computer kaysa sa permanenteng imbakan tulad ng hard drive.ay isang pangangailangan upang ayusin ang paraan na inilalaan ng memorya, kabilang ang pagtawag sa mga stack.Ginagawa ito nang mahusay sa pamamagitan ng pagtatalaga ng mga buffer, isang puwang sa memorya na idinisenyo upang maging sapat na malaki upang makayanan ang maximum na puwang na hinihiling ng isang partikular na buffer.Sa karamihan ng mga kaso ang ilan sa puwang ay hindi magamit, kaya kumikilos ito bilang isang buffer sa pagitan ng data mula sa iba't ibang mga aplikasyon, na nag -iiwan ng silid upang makaya kung ang isang tao ay biglang nangangailangan ng labis na puwang.Ang isang paraan upang mailarawan ito ay mag -isip ng isang silid -aklatan na naglaanParehong oras, sa halip na alinman sa mga ito ay nasuri.Maaari itong mangyari nang hindi sinasadya, karaniwang sa pamamagitan ng isang bug sa isang programa.Halimbawa, kung ang isang application ay idinisenyo upang payagan ang gumagamit na mag -type sa isang numero ng telepono, ngunit walang limitasyon sa bilang ng mga character na maaaring maipasok, maaaring magamit ng isang hacker ang walang limitasyong patlang upang sinasadyang magdulot ng isang pag -apaw ng buffer ng stack.Depende sa paraan ng gumagana ang operating system, pinapayagan nito ang hacker na hindi direktang ma -access ang alinman sa isa pang application o ang operating system mismo.Ang isa ay kilala bilang Address Space Layout Randomization.Inayos nito ang pinakamahalagang lugar ng data sa computer sa isang random na paraan.Ang ideya ay kahit na ang isang hacker ay nagiging sanhi o sinasamantala ang isang pag -apaw ng buffer ng stack, hindi niya magagawang samantalahin ang paglabag sa isang maaasahang paraan.