:(){ :|:& };:, Fork Bomb -komento: miten se toimii ja kuinka suojautua

  • "Haarukkapommi" on DoS-hyökkäys, joka kyllästää järjestelmäresurssit rekursiivisten prosessien kautta.
  • Unix/Linux-järjestelmät ovat haavoittuvia; Windows vaatii monimutkaisempia menetelmiä hyökkäyksen replikoimiseksi.
  • "Ulimit"- ja cgroups-ryhmien käyttö auttaa lieventämään vaikutusta ja estämään haarukkapommin suorittamisen.

Haarukkapommi

Tietokonemaailmassa, tiettyjä komentoja Ne saattavat ensi silmäyksellä näyttää vaarattomilta, mutta ne kätkevät tuhoavan voiman, joka voi haitallisesti tai vahingossa käytettynä tuhota koko järjestelmän. Näistä käskyistä yksi tunnetuimmista - tai ei - ja pelätyistä on ns haarukkapommi, tai haarukkapommi.

Haarukkapommi ei ole muuta kuin palvelunestohyökkäys (DoS), suunniteltu kuluttamaan käytettävissä olevia järjestelmäresursseja, kuten prosessori ja muisti, siihen pisteeseen, jossa siitä tulee käyttökelvoton. Jos olet koskaan miettinyt, miten tämä komento toimii, miksi se voi olla niin haitallista ja mihin toimiin voit ryhtyä suojellaksesi itseäsi, täältä löydät kaiken mitä sinun tarvitsee tietää helposti ja yksityiskohtaisesti selitettynä.

Mikä on haarukkapommi?

Haarukkapommi, joka tunnetaan myös nimellä "kanin virus", koska sillä on taipumus replikoitua eksponentiaalisesti, on tekniikka, joka käyttää prosessien massaluomista järjestelmän kyllästämiseen toiminnassa. Tämä saavutetaan komennolla, joka käyttää fork-toimintoa, joka on saatavilla Unix- ja Linux-järjestelmissä. Fork-funktion avulla prosessi voi luoda itsestään tarkan kopion, joka tunnetaan lapsiprosessina.

Edustavin komento, joka liittyy a haarukkapommi on seuraava:

: () {: |: &};:

Tämän komennon rakenne, vaikka se on kompakti, on uskomattoman tehokas. Se määrittelee funktion nimeltä :, joka kutsuu itseään rekursiivisesti luoden kussakin suorituksessa kaksi uutta prosessia operaattorin ansiosta putki | ja suoritus taustalla &. Tuloksena on prosessien eksponentiaalinen kasvu, joka romahtaa järjestelmän muutamassa sekunnissa.

Kuinka haarukkapommi toimii?

Komento : () {: |: &};: Se voi aluksi tuntua hämmentävältä, joten jaetaan se vaihe vaiheelta:

  • :: Tämä symboli edustaa toiminnon nimeä. Itse asiassa voit käyttää mitä tahansa nimeä.
  • () { }: Tämä syntaksi määrittää funktion ilman parametreja.
  • :|:: Kun funktio on määritetty, se kutsuu itseään ja operaattoria | ohjaa tulostensa uuteen ilmentymäänsä.
  • &: Tämä symboli suorittaa kutsuja taustalla, mikä mahdollistaa prosessien samanaikaisen luomisen.
  • ;: Toimii erottimena funktion määrittelyn ja sen alkuperäisen suorituksen välillä.
  • :: Lopuksi tämä viimeinen symboli suorittaa toiminnon, joka käynnistää prosessien sarjan.

Kun haarukkapommi on käynnissä, se kuluttaa nopeasti järjestelmäresursseja, estää kykyä ajaa uusia prosesseja ja yleensä pakotetaan käynnistämään tietokone uudelleen.

Haavoittuvat järjestelmät

käytännössä mikä tahansa Unix- tai Linux-pohjainen käyttöjärjestelmä, kuten Ubuntu, Debian tai Red Hat, on alttiina haarukkapommille, koska kaikki nämä käyttävät fork-järjestelmäkutsua. Kuitenkin järjestelmät Windows Ne eivät ole alttiita tälle tietyntyyppiselle hyökkäykselle, koska niillä ei ole haarukkaa vastaavaa toimintoa. Sen sijaan Windowsissa sinun pitäisi luoda joukko uusia prosesseja samalla tavalla, mutta tämä vaatii monimutkaisempaa lähestymistapaa.

Esimerkkejä Fork Bombista eri kielillä

La haarukkapommi Se ei ole yksinomaan Bash; Se voidaan toteuttaa muilla ohjelmointikielillä. Tässä muutamia esimerkkejä:

Python Fork -pommi

#!/usr/bin/env python import os, kun taas True: os.fork()

Java Fork Bomb

public class Bomb { public static void main(final String[] args) { while (true) { Runtime.getRuntime().exec("java Bomb"); } } }

C Haarukkapommi

#sisältää int main(void) { while (1) { haarukka(); } }

Haarukkapommin vaikutus

Haarukkapommin tärkein vaikutus on järjestelmän ylikuormitus. Resurssit, kuten CPU, muisti ja prosessitulot kuluvat nopeasti, jolloin järjestelmä muuttuu epävakaaksi tai reagoimattomaksi. Useimmissa tapauksissa tarvitset a pakko uudelleenkäynnistys saada hallinta takaisin. Lisäksi on olemassa merkittävä tietojen menettämisen riski sovelluksen äkillisen käyttäytymisen vuoksi katastrofin aikana.

Ennaltaehkäisytoimenpiteet

Vaikka haarukkapommi voi olla tuhoisa, On olemassa tapoja lieventää sen vaikutusta ja jopa estää sitä. täysin:

1. Rajoita prosessien määrää

Komento ulimit Linuxissa sen avulla voit asettaa rajan prosessien enimmäismäärälle, jonka käyttäjä voi luoda. Esimerkiksi:

raja -u 5000

Tämä rajoittaa käyttäjän saamaan enintään 5000 aktiivista prosessia.

2. Määritä pysyvät rajat

Jos haluat käyttää rajoituksia pysyvästi, voit muokata tiedostoa /etc/security/limits.conf. Esimerkiksi:

kova käyttäjä nproc 5000

Tämä varmistaa, että rajoitukset pysyvät voimassa myös käyttäjän uloskirjautumisen jälkeen.

3. C-ryhmien käyttö

Nykyaikaisissa Linux-järjestelmissä ryhmät (ohjausryhmät) mahdollistavat järjestelmäresurssien tarkemman hallinnan, mukaan lukien resurssien määrän sallittuja prosesseja.

Älä kiinnitä huomiota siihen, mitä näet sosiaalisessa mediassa

Tämäntyyppiset komennot voivat esiintyä sosiaalisissa verkostoissa käytännöllisenä vitsinä, joten meidän on oltava varovaisia ​​emmekä kirjoita päätteeseen, mitä he sanovat. Menemättä pidemmälle, jos laitamme "haarukkapommin" X:ään, näemme vastaus viestiin jossa lukee "hei, haarukkapommi". Alkuperäinen, muutama hetki sitten jaettu viesti sanoo, että siellä on kissa, jonka nimi on :(){ :|:& };: ja että laitoit sen terminaaliin. Olemme jo selittäneet, mitä se tekee, joten älä tee sitä.

Haarukkapommi, vaikkakin konseptiltaan yksinkertainen, sillä on syvä vaikutus haavoittuviin järjestelmiin. Sen toiminnan, sen vaikutusten ja sen lieventämiskeinojen ymmärtäminen on välttämätöntä nykyaikaisten tietojenkäsittelyympäristöjen suojelemiseksi. Se on muistutus siitä, kuinka yksinkertainen komento voi johtaa katastrofaalisiin seurauksiin, ja myös oikean järjestelmänhallinnan ja turvallisuusrajojen asettamisen tärkeydestä.


Jätä kommentti

Sähköpostiosoitettasi ei julkaista. Pakolliset kentät on merkitty *

*

*

  1. Vastaa tiedoista: AB Internet Networks 2008 SL
  2. Tietojen tarkoitus: Roskapostin hallinta, kommenttien hallinta.
  3. Laillistaminen: Suostumuksesi
  4. Tietojen välittäminen: Tietoja ei luovuteta kolmansille osapuolille muutoin kuin lain nojalla.
  5. Tietojen varastointi: Occentus Networks (EU) isännöi tietokantaa
  6. Oikeudet: Voit milloin tahansa rajoittaa, palauttaa ja poistaa tietojasi.