olha so o texto

1. olha so o texto

Ricardo Jose Bastos
bastos

(usa Ubuntu)

Enviado em 21/01/2007 - 04:25h

Fuçando no ubuntubr.org olha so o texto

Rafael Proença - CypherBIOS
Não façam isto em casa!!! [explicação]

Eita como brasileiro é curioooso….

Atendendo a alguns emails e comentários de pessoas que ficaram curiosas em relação ao “comando” postado.

: () { : | : & }; :

O que é isto?

É uma função em bash. Sua forma de ação é denominada fork bomb.

O que isto faz?

Ele basicamente cria um número exponencial de processos muito rapidamente, mais rápido do que o processador é capaz de aguentar. Uma vez disparado, o processador é entupido com vários processos em thread impossibilitando o carregamento de novos programas e deixando os programas existentes em baixa prioridade (-n19). Não se preocupe, isto levará apenas alguns milésimos de segundos, quanto mais rápido o processador, mais rápido ele vai agir, ou seja, é uma forma incomumente insustentável de retroatividade.

Que sistemas estão vulneráveis?

Praticamente todo sistema que suportar a função ‘fork’, ou seja, todos os sistemas operacionais de computadores.

O Windows, não escapa desta também (que dúvida…), mas há uma diferença… até onde sei, não é possível limitar o número de processos no Windows (
Se você quiser fazer um teste com seu amigo que usa Windows basta criar um batch com o seguinte conteúdo:

:s
start %0
goto s

Seria, no mínimo, interessante botar isto no autoexec.bat Contente

Como parar?

Uma vez disparado, o processo não pode ser interrompido, pois ele se auto-executa recursivamente em looping infinito. Sua máquina, irrevogavelmente, travará e será necessário reinicia-la.

Como se previnir?

Um fork bomb é uma forma de ataque DoS (Denial of Service). A maneira de se proteger dele é limitando o número de processos ou o número de processos equivalentes. Para limitar o número máximo de processos por usuário, basta dar o comando:

ulimit -u 1000

Onde 1000 é o número de máximo de processos por usuário.

Para maiores detalhes e sintaxe do ulimit, digite ‘help ulimit’.

Explicando a função:

Vou tentar explicar resumidamente a função:

Começa-se criando uma função chamada “:” que não aceita argumentos “()” e se reinicia recursivamente em loop, jogando a saída para ela própria “:|:”, e ainda chamando a função-mãe ao final “:” para que crie um loop dentro do loop.

Considerações finais:

Reza a lenda que esta função é um dos fork bombs mais fatais, que sua execução pode até mesmo vir a causar um buffer overflow, queimando o processador.

Fonte:
http://www.euglug.org/pipermail/euglug/2005-August/004338.html
http://en.wikipedia.org/wiki/Fork_bomb



  






Patrocínio

Site hospedado pelo provedor RedeHost.
Linux banner

Destaques

Artigos

Dicas

Tópicos

Top 10 do mês

Scripts