Підтримка
www.wikidata.uk-ua.nina.az
Fork bomba shkidliva abo pomilkovo napisana programa yaka neskinchenno stvoryuye svoyi kopiyi sistemnim viklikom fork yakij zazvichaj takozh stvoryuye svoyi kopiyi j t d Rekursivne porodzhennya procesiv yake vede do vidmova v obslugovuvanni abo padinnyu sistemi Vikonannya takoyi programi mozhe viklikati velike navantazhennya obchislyuvalnoyi sistemi abo navit vidmova v obslugovuvanni vnaslidok nestachi sistemnih resursiv deskriptoriv procesiv pam yati procesornogo chasu sho i ye cillyu Programa klasichnoyi fork bombi napisanoyi movoyu Si viglyadaye tak include lt unistd h gt int main while 1 fork Shozhimi vipadkami vitoku sistemnih resursiv ye programi yaki porodzhuyut zombi Odnak yaksho bilshist fork bomb stvoryuyutsya navmisne to ci problemi zazvichaj ye rezultatom neuvazhnosti abo nekompetentnosti programista IstoriyaBlizko 1978 roku buv stvorenij rannij variant fork bombi pid nazvoyu wabbit System 360 Ce mozhe vidbutisya z analogichnoyi ataki pid nazvoyu RABBITS yaku povidomlyayut z 1969 r OpisFork bomba porodzhuye veliku kilkist vlasnih kopij i tim samim namagayetsya zapovniti vilne misce v spisku aktivnih procesiv operacijnoyi sistemi Pislya zapovnennya spisku procesiv staye nemozhlivim start korisnoyi programi Navit yaksho yakij nebud inshij proces pripinit robotu i misce v spisku procesiv zvilnitsya to start korisnoyi programi malojmovirnij tomu sho bezlich inshih kopij fork bombi vzhe chekayut mozhlivosti zapustiti svoyu chergovu kopiyu Krim zapovnennya spisku procesiv mozhlivi takozh strategiyi zapovnennya virtualnoyi pam yati procesornogo chasu soketiv i inshih sistemnih resursiv Rezultatom vicherpannya cih resursiv staye upovilnennya roboti abo praktichno zupinka operacijnoyi sistemi ta abo korisnih program zavisannya komp yutera Fork bomba mozhe buti otrimana i v rezultati pomilki pri sumlinnomu programuvanni Napriklad programa yaka sluhaye merezhevij port mozhe pri otrimanni merezhevogo paketa abo vstanovlenni z yednannya vpasti v neskinchennij cikl stvorennya svoyih kopij dlya obrobki paketa abo z yednannya Prosta pomilka programuvannya mozhe privesti do vitoku pam yati abo do naslidkiv harakternim dlya rezultativ roboti fork bombi Prikladi fork bomb na riznih movah programuvannyaVikonannya danih prikladiv mozhe privesti do vtrati nezberezhenih danih Ne rekomenduyetsya vikonuvati yih bez zastosuvannya nalezhnih zapobizhnih zahodiv Bash amp Perl fork while fork Python import os while True os fork Ruby fork while fork Inshij variant loop fork PHP lt php while true pcntl fork Paketnij fajl Microsoft Windows s start 0 goto s Inshij variant start 0 0 Variant na VB NET Do System Diagnostics Process Start System Reflection Assembly GetExecutingAssembly Location Loop While TrueTrudnoshi likvidaciyiU razi uspishnogo spracovuvannya fork bombi staye vazhkim abo praktichno nemozhlivim vidnoviti normalnu robotu EOM bez perezavantazhennya tak yak yedinij sposib pripiniti robotu fork bombi ce odnochasne pripinennya roboti vsih pracyuyuchih kopij fork bombi U bilshosti realizacij operacijnih sistem viklik komandi dlya pripinennya roboti procesu vimagaye zapusku novogo procesu sho v umovah uspishno pracyuyuchoyi fork bombi nemozhlivo Odnak na praktici deyaki fork bombi ne vimagayut takih radikalnih zahodiv i mozhut buti znisheni bez neobhidnosti perezavantazhennya Rozglyanemo napriklad vipadok bombi z prikladu vishe amp Osoblivist cogo kodu v tomu sho vin ne zaciklyuyetsya pislya neuspishnogo porodzhennya svoyih kopij a zavershuye robotu V rezultati spisok procesiv postijno znahoditsya na mezhi zapovnennya odna z kopij fork bombi zavershuyetsya i misce sho zvilnyayetsya tut zhe zajmayetsya novostvorenim procesom z inshoyi kopiyi fork bombi Staye mozhlivim konkuruvati z fork bomboyu za zahoplennya miscya v spisku procesiv Todi mozhlivo rano chi pizno zapustiti komandu dlya odnochasnogo znishennya vsih kopij fork bombi abo zapustiti bezpechnu programu yaka bude postupovo vidvojovuvati misce v spisku procesiv do zavershennya roboti ostannogo procesu fork bombi Priklad takoyi bezpechnoyi programi na zsh while sleep 100 amp do doneZapobigannyaOdin zi sposobiv zapobigannya negativnim naslidkam roboti fork bombi primusove obmezhennya kilkosti procesiv yaki koristuvach mozhe zapustiti odnochasno Takozh mozhut buti obmezheni kilkist vidilenoyi virtualnoyi pam yati ta inshi sistemni resursi Pri vicherpanni maksimumu dostupnih procesiv sproba procesu stvoriti novij proces zaznaye nevdachi Maksimum sho zapuskayutsya procesiv povinen buti takim shob vin dozvolyav zapustiti rozumne korisne kilkist program ale ne privodiv do krahu sistemi pri odnochasnomu zapusku fork bombi vid vsih koristuvachiv sistemi Neobhidno vidznachiti sho obmezhennya kilkosti procesiv same po sobi ne zapobigaye zapusk fork bombi a lishe napravleno na minimizaciyu mozhlivoyi shkodi v razi yiyi spracovuvannya Inshe rozv yazannya problemi intelektualne rozpiznavannya fork bombi zasobami samoyi operacijnoyi sistemi ale ce rishennya ne znajshlo shirokogo zastosuvannya Isnuye i taka trudnist sho yaksho fork bomba zajmaye ves dostupnij procesornij chas to rezultati yiyi roboti mozhut buti katastrofichnimi ne tilki na odnoprocesornij ale i na bagatoprocesornij sistemi navit pri obmezhenni chisla procesiv Napriklad yaksho chislo procesoriv 16 a maksimum kilkosti zapushenih procesiv 100 to na kozhen procesor bude pripadati v serednomu 6 7 pracyuyuchih ekzemplyariv fork bombi sho pozhirayut procesornij chas Dlya rozv yazannya ciyeyi problemi zastosovuyetsya obmezhennya po priv yazci do procesoriv Div Takozhfork sistemnij viklik Unix podibnih operacijnih sistem vidpovidno do standartu POSIX Zombi shozhi vipadki vitoku sistemnih resursivPrimitkiodin z najbilsh elegantnih prikladiv fork bombi stvorenij en om
Топ