Explicació ràpida de la bomba fork. ¿Que fa la bomba fork en GNU / Linux?
: () {: |: &} ;:
És un tipus d'atac de denegació de serveis o DoS, que bàsicament el que fa és saturar l'espai disponible a l'ordinador, encara que és possible usar bombes fork en qualsevol llenguatge, només em centraré en colpejar, Per la seva forma que sembla tan estranya
Tot i que es veu molt complex, és senzill és una simple funció que es diu a ella mateixa ... Ara la bomba Fork llegible per humans XD
: () {: |: &} ;:
Aquí una funció simple ...
funció () {var1 = $ 1 echo "Funció"}
Per a qualsevol persona que sàpiga llegir i una mica de programació
bomba () {bomba | bomba &}; bomba
Com es pot veure és realment simple, es crea una funció que es diu a ella mateixa, que crea un cicle que no s'atura fins aconseguir el seu objectiu saturar l'ordinador.
En resum ...
: () {
És la funció anomenada:
: |:
Es diu la funció a ella mateixa, per mitjà de recursivitat i canonades. La pitjor part és quan es diu per segona vegada ...
&
Fa que s'executi la funció de fons, així el procés no pot ser acabat, fins a acabar amb tots els recursos
} ;:
Acaba la funció i es torna a cridar de nou ...
Per si algú tenia curiositat a l'veure aquest seductor codi que per a un newbe fins podria ser estrany, però no és res que una mica de lògica no resolgui
Alfred.
De fet és interessant, tot i que avui dia si et llancen una bomba fork no passaria res perquè hi ha nivells de seguretat que estableixes on limites la quantitat de processos que pot generar qualsevol programa, només distros com Arch, Gentoo, etc no porten aquestes restriccions per defecte i has de crear-les tu.
És graciós perquè Tete i jo vam passar un dia hores cagándonos del riure amb aquest tema, molta gent que instal·la Arch només ho instal i li posa l'entorn, però i s'obliden de moltes altres coses importantíssimes que són necessàries per configurar (o al menys eren necessàries, la veritat és que no tinc idea de com sigui ara) i per això es deia que era «fàcil i ràpid d'instal·lar».
En fi, crec que hagués estat una mica mes simple explicar-ho amb la bomba a python, que és encara més explícita.
De fet, aquests ajustos d'execució de processos solen ser bastant importants a l'hora d'instal·lar una distro GNU / Linux amb un minimalisme com el que té Arch i / o Gentoo.
I per cert, les vegades que em poso a fer servir Arch són per provar les versions de programes i interfícies que recentment han sortit de forn. En fi, és força interessant aquesta bomba de fork.
Si, és molt més senzill d'entendre en python els deixo aca per si a algú els intereza:
import us
mentre que és cert:
--os.fork ()
I amb recursivitat:
import us
def bomba ():
--os.fork ()
--bomba ()
bomba ()
I nano cal desctacar que en debian 7 Stable, tampoc hi ha seguretat per això, almenys no amb python, et penja el sistema instantani.
Salutacions.
doncs jo he executat una bomba fork en Ubuntu i es calo l'ordinador instantàniament
Per desactivar la bomba, es limita els processos a la terminal amb: ulimit -u 50 i bomba desactivada: pàg.
En tot cas cal esmentar que els US actuals tenen limitats quants processos poden tenir actius, és cosa de llançar una bomba fork en un Fedora i no passés nadita.
Sens dubte, però per exemple Solaris i Windows (que és on ho he provat) no vénen protegits.
COOL! 🙂
Feu el mateix; però aquesta vegada faci que sigui útil, és a dir que s'executi en windows i haver que passa. No en GNU / Linux.
Molt curiós, la proximitat a el tema de sabotatge informàtic, no sé si aquest podria ser el cas de l'reproductor Gnash: al lloc Vimeo corre vídeos de forma impecable, però a Youtube amb prou feines i arriba resolució de 240 píxels; En Dailymotions ni reprodueix, a la meva manera de veure alguna cosa incomprensible per a mi, ja que no sóc programador.
De no canviar això, crec que, no és mala idea que els simpatitzants de l'programari lliure publiquem els nostres vídeos en on si es difongui per a tothom, sense discriminació.
Gnash s'hauria de fixar en això, però com el seu desenvolupament era lent, Mozilla va optar per fer el seu propi reproductor de Flash a punta de Javascript anomenat Shumway. Espero que Shumway surti aviat per poder reemplaçar el Flash Player que tinc en GNU / Linux.
i ja que estem no ve demas dir com protegir-se, una forma molt bàsica (i sobretot per als noobs Archers) és limitar la quantitat de processos, per això ens anem a /etc/security/limits.conf i afegim la següent línia:
* Hard nproc 1000
amb això, limitem els processos a aquesta quantitat, jo per exemple el tinc posat en aquesta quantitat (encara que tot el SO a full corre amb molt menys, uns 200-300 processos) i a l'aplicar-li la bomba fork, el meu SO segueix totalment funcional i immune, aquesta clar que si limitem la quantitat de processos a alguna cosa molt baix podria portar alguna que una altra conseqüència ja que algun programa voldria crear processos i el SO no ho deixaria, en el meu cas, limitat a 1000 processos em va perfecte
Jo ho he posat a
* soft nproc 500
* hard nproc 1000
Tot i que la wiki de arch recomana el soft a 100 i hard a 200.
Tot i que no hauria d'haver problema, em fa por llançar-me una bomba per provar ... xD
La forma més senzilla de fer escudar és limitant el valor de ulimits de manera que es pugui matar el procés de la bomba.
Interessant article, per prevenir-en Slackware utilitzem ulimit a l'arxiu / etc / profile
El problema de restringir ulimit és que pot limitar l'ús de sistema depenent què facis.