forkkipommi for dummies :P

Normaalikäyttäjänä, tai vaikka roottina:

perl -e "while(1) { fork(); }"

Heh, takaan että Linux menee jumiin noin 30 sekunnin sisällä, vaatii resettiä tai eipä tokene ;)
10927
Äänestä

Muut lukivat myös

Vastaukset 10

Vanhimmat

Mitä, jos sittenkin palaisit yliopistoon opiskelemaan wintoysin ylläpitoa.

Äänestä
  • Windows oli liian helppo forkkipommittaa suohon -.-
    Kesti vieläpä vähemmän aikaa kuin keskimäärin Unix systeemeissä.

    Huvittelin aikoinaan ajamalla itsetekemiäni haittaohjelmia julkisilla Windows-päätteillä. Nämä softat sitten forkkipommitti aika koneen suohon, ja se oli vitun hauskaa.

    Äänestä

  • ksym_ kirjoitti:

    Windows oli liian helppo forkkipommittaa suohon -.-
    Kesti vieläpä vähemmän aikaa kuin keskimäärin Unix systeemeissä.

    Huvittelin aikoinaan ajamalla itsetekemiäni haittaohjelmia julkisilla Windows-päätteillä. Nämä softat sitten forkkipommitti aika koneen suohon, ja se oli vitun hauskaa.

    Ei tullu mieleen, että tuommoinen touhu on täysin laitonta?

    Äänestä

Jokaisen käyttiksen saa hyydytettyä tuolla periaatteella. Ohjelmointia tuntemattomille tiedoksi se, että toi ei hyödynnä mitään tietoturvareikää tai linuxin vikaa. Tuossa yksinkertasesti tehdään ikuisesti pyörivä looppi, jossa luodaan kokoajan uusia vastaavia ikuisessa loopissa pyöriviä prosesseja, jotka luo taas lisää niitä. Ideana tuossa on se, että kuormitetaan prosessoria omilla prosesseilla niin että systeemin muu toiminta hidastuu.

Äänestä

echo ulimit -u 200 >> /etc/profile

Äänestä

Itseasiassa linuxissa on varsin helppo estää systeemin jumittaminen tuommoisella forkkipommilla. Homma hoituu asettamalla rajoitus sille kuinka monta prosessia käyttäjä voi käynnistää. Ainakin palvelimissa tuo on järkevää. Rajoitukset voi asettaa tiedostossa

/etc/security/limits.conf

Limits.conf tiedostossa voi asettaa tämmöisiä rajoituksia käyttäjälle:

core - limits the core file size (KB)
data - max data size (KB)
fsize - maximum filesize (KB)
memlock - max locked-in-memory address space (KB)
nofile - max number of open files
rss - max resident set size (KB)
stack - max stack size (KB)
cpu - max CPU time (MIN)
nproc - max number of processes
as - address space limit
maxlogins - max number of logins for this user
priority - the priority to run user process with
locks - max number of file locks the user can hold

Äänestä
  • Tuli tuohon liittyen mieleen

    Monella linuxin kotikäyttäjällä varmasti on linuxissa käytössä ssh ja ftp/sftp -palvelin, niin että omaan koneeseen pääsee käsiksi netin yli esim töistä tai koululta. Systeemissä voi myös olla luotuna yksi tai useampi erillinen käyttäjätunnus, joita käytetään vain kun koululta/töistä otetaan esim ssh yhteys kotikoneelle.

    Jos noin on, niin sillon on aika järkevää rajoittaa näiden etä-käyttäjien osalta sitä kuinka monta prosessia käyttäjä voi käynnistää. Rajoituksia voi tehdä sekä käyttäjäkohtaisesti, että käyttäjäryhmäkohtaisesti.

    Tuolla tavalla voi estää sen, että joku käyttäjätunnuksen/salasanan jostain käsiinsä saanut voi tulla koneelle ja jumittaa systeemin forkkipommilla.

    Tietenkin on paljon muutakin ilkeää mitätunkeutuja voi tehdä, mutta ainakin tuon on sitten estettynä.

    Äänestä

  • Suurin osa nykydistroista ei automaattisesti moisia asetuksia laita käyttäjän puolesta.

    Säälittävää sikäli ... onneksi on parantamisen varaa.

    Nytpä olisi tilausta sellaiselle distrolle, missä limitit määrättäisiin jokaisella käyttäjälle automaattisesti.

    Äänestä

  • ksym_ kirjoitti:

    Suurin osa nykydistroista ei automaattisesti moisia asetuksia laita käyttäjän puolesta.

    Säälittävää sikäli ... onneksi on parantamisen varaa.

    Nytpä olisi tilausta sellaiselle distrolle, missä limitit määrättäisiin jokaisella käyttäjälle automaattisesti.

    Nythän on niin, että tällä koneella ainoa apina hääräämässä on minä eikä kukaan ksymforkkipelle.

    Äänestä

Ota yksi bsd-pölö hännästä kii, kiipeä korkean talon katolle, pyöräytä pari kertaa ilmassa ja päästä irti. Ja kas noin on yksi häiriötekijä vähemmän.

Äänestä

Kommentoi aloitusta


ksym_ kirjoitti:

Normaalikäyttäjänä, tai vaikka roottina:

perl -e "while(1) { fork(); }"

Heh, takaan että Linux menee jumiin noin 30 sekunnin sisällä, vaatii resettiä tai eipä tokene ;)

Anonyymi
5000

Ilmoita asiaton sisältö

  • Sisältää materiaalia, joka on loukkaavaa, herjaavaa, rasistista, uhkailevaa tai ahdistelevaa.

  • Materiaali sisältää nimiä, yhteystietoja tai muita henkilökohtaisia tietoja. Julkisuuden henkilöistä, julkisissa viroissa toimivista ihmisistä sekä yritysten vastuuhenkilöistä saa keskustella työhön liittyen. Myös yksityiselämään liittyvistä asioista voi keskustella siltä osin, kuin niistä on julkisesti kerrottu.

  • Sisältää lapsille haitallista tai heiltä kiellettyä materiaalia. Seksuaalinen sisältö on sallittua aiheeseen tarkoitetuilla palstoilla, joiden ikäraja on 18 vuotta.

  • Lainvastaista sisältöä voi olla mm. yksityiselämää loukkaavan tiedon levitys, kiihottaminen kansanryhmää vastaan, laiton uhkaaminen, alaikäisiin liittyvä seksuaalinen sisältö/grooming, petokset, identiteettivarkaudet, kunnianloukkaukset ja tekijänoikeusrikkomukset.

  • Sisältö ei liity palstan tai keskusteluketjun aiheeseen.

  • Viesti ei ole suomea tai ruotsia (pl. International Forums), se sisältää mainontaa, se sisältää tekijänoikeuksin suojattua materiaalia, se on massapostitus tai jokin muu syy.

Jaa keskustelu