Pular para o conteúdo

Por que esse :(){ :|:& };: trava a máquina? [RESOLVIDO]

Responder tópico
  • Denunciar
  • Indicar

1. Por que esse :(){ :|:& };: trava a máquina? [RESOLVIDO]

Enviado em 07/06/2016 - 18:55h

Por que esse :(){ :|:& };: trava a máquina?

Responder tópico

2. Re: Por que esse :(){ :|:& };: trava a máquina? [RESOLVIDO]

Melhor resposta

Enviado em 07/06/2016 - 19:09h

É uma declaração de função chamada dois pontos.
O que está dentro dos { } colchetes é o que ela faz.
Ela chama uma função chamada dois pontos e usa o | pipe para transferir dados para outra chamada da função dois pontos.
Ao final da declaração do } colchete final há um ponto-e-vírgula que encerra e separa a função do próximo comando.
O que ocorre após o ponto-e-vírgula é uma chamada à função dois pontos.

Depois disso ocorre a criação de infinitos processos em quantidade de somatório de progressão geométrica.
É só fazer as contas.

----------------------------------------------------------------------------------------------------------------
Nem direita, nem esquerda. Quando se trata de corrupção o Brasil é ambidestro.
(anônimo)

Encryption works. Properly implemented strong crypto systems are one of the few things that you can rely on. Unfortunately, endpoint security is so terrifically weak that NSA can frequently find ways around it. — Edward Snowden[/quote]

3. Re: Por que esse :(){ :|:& };: trava a máquina? [RESOLVIDO]

Enviado em 07/06/2016 - 19:06h

Porque é uma função que chama ela mesma varias vezes e se coloca em segundo plano em quanto se multiplica enchendo o sistema com processos





=====================================================================
Não existe saber mais ou saber menos, existem saberes diferentes.
=====================================================================

4. Re: :(){ :|:& };:

Enviado em 07/06/2016 - 19:14h

é bem bolado, isso.
Esse tipo de "comando" se chama "Fork Bomb" e são usados para consumir memória RAM, em Benchmarks, testes de performance.

Sempre nosso amigo aqui do VOL, Listeiro, o "Mago do Terminal", grande conhecedor de Linux e Programação!
¨¨¨¨¨¨¨¨¨¨¨¨¨¨¨¨¨¨¨¨¨¨¨¨¨¨¨¨¨¨¨¨¨¨¨¨¨¨¨¨¨¨¨¨¨¨¨¨¨¨¨¨¨¨¨¨¨¨¨¨¨¨¨¨¨¨¨¨¨¨¨¨¨¨¨¨¨¨¨¨¨¨¨¨¨¨¨¨¨¨¨¨
Albfneto,
Ribeirão Preto, S.P., Brasil.
Usuário Linux, Linux Counter: #479903.
Distros Favoritas: Sabayon, Gentoo, openSUSE, Mageia e OpenMandriva.

5. Re: Por que esse :(){ :|:& };: trava a máquina?

Enviado em 08/06/2016 - 01:20h

Assim eu fico encabulado ^^
Trm gente que manja mais de programação que eu por aqui.

----------------------------------------------------------------------------------------------------------------
Nem direita, nem esquerda. Quando se trata de corrupção o Brasil é ambidestro.
(anônimo)

Encryption works. Properly implemented strong crypto systems are one of the few things that you can rely on. Unfortunately, endpoint security is so terrifically weak that NSA can frequently find ways around it. — Edward Snowden[/quote]

6. Re: Por que esse :(){ :|:& };: trava a máquina? [RESOLVIDO]

Enviado em 08/06/2016 - 01:44h

listeiro_037 escreveu:

É uma declaração de função chamada dois pontos.
O que está dentro dos { } colchetes é o que ela faz.
Ela chama uma função chamada dois pontos e usa o | pipe para transferir dados para outra chamada da função dois pontos.
Ao final da declaração do } colchete final há um ponto-e-vírgula que encerra e separa a função do próximo comando.
O que ocorre após o ponto-e-vírgula é uma chamada à função dois pontos.

Depois disso ocorre a criação de infinitos processos em quantidade de somatório de progressão geométrica.
É só fazer as contas.

----------------------------------------------------------------------------------------------------------------
Nem direita, nem esquerda. Quando se trata de corrupção o Brasil é ambidestro.
(anônimo)

Encryption works. Properly implemented strong crypto systems are one of the few things that you can rely on. Unfortunately, endpoint security is so terrifically weak that NSA can frequently find ways around it. — Edward Snowden
kkkkkkk pensei até em apagar minha resposta, pelo menos tentei explicar do meu jeito kkk.





=====================================================================
Não existe saber mais ou saber menos, existem saberes diferentes.
=====================================================================

7. Re: Por que esse :(){ :|:& };: trava a máquina? [RESOLVIDO]

Enviado em 09/06/2016 - 13:40h

Do jeito que os colegas explicaram até eu que não sei nada de programação entendi, só não sei fazer. Ser safo é saber das coisas ou saber a quem perguntar.

8. Re: Por que esse :(){ :|:& };: trava a máquina?

Enviado em 09/06/2016 - 17:25h

Não sou Profissional de TI, masd vou tentar explicar.

A Sintaxe do "comando", chama uma função interna, do "Bash", da "Shell".
a função executa... quando ela executa, ela "joga" a saída numa outra chamada da mesma função e reexecuta (sem descarregar da RAM)...
assim, ela vai se repetindo em progressão geométrica....1 vez executada, ela "gera" 2 execuções, que por sua vez geram 4 etc...
e vai executando.... desse modo ela "come" a RAM do micro e ele fica sem memória RAM disponível e trava...

http://www.cyberciti.biz/faq/understanding-bash-fork-bomb/
https://simple.wikipedia.org/wiki/Fork_bomb
https://en.wikipedia.org/wiki/Fork_bomb
https://wiki.hackstore.com.br/Fun%C3%A7%C3%A3o_de_looping_infinito_(Fork_Bomb)

é mais ou menos isso, né, Listeiro?

como eu disse, é bem bolado. Existem outras "Fork Bombs".
¨¨¨¨¨¨¨¨¨¨¨¨¨¨¨¨¨¨¨¨¨¨¨¨¨¨¨¨¨¨¨¨¨¨¨¨¨¨¨¨¨¨¨¨¨¨¨¨¨¨¨¨¨¨¨¨¨¨¨¨¨¨¨¨¨¨¨¨¨¨¨¨¨¨¨¨¨¨¨¨¨¨¨¨¨¨¨¨¨¨¨¨
Albfneto,
Ribeirão Preto, S.P., Brasil.
Usuário Linux, Linux Counter: #479903.
Distros Favoritas: Sabayon, Gentoo, openSUSE, Mageia e OpenMandriva.

9. Re: Por que esse :(){ :|:& };: trava a máquina? [RESOLVIDO]

Enviado em 09/06/2016 - 18:56h

Vlw msm pessoal
so de ficar vasculhando por aqui, já estou melhorando no Linux
logo mais, eu darei as respostas. kkkk

10. Re: Por que esse :(){ :|:& };: trava a máquina? [RESOLVIDO]

Enviado em 09/06/2016 - 22:38h

Al_Cyclops escreveu:

Por que esse :(){ :|:& };: trava a máquina?
Porque você não configurou o ulimit.

11. Re: Por que esse :(){ :|:& };: trava a máquina? [RESOLVIDO]

Enviado em 10/06/2016 - 13:50h

albfneto escreveu:

Não sou Profissional de TI, masd vou tentar explicar.

A Sintaxe do "comando", chama uma função interna, do "Bash", da "Shell".
a função executa... quando ela executa, ela "joga" a saída numa outra chamada da mesma função e reexecuta (sem descarregar da RAM)...
assim, ela vai se repetindo em progressão geométrica....1 vez executada, ela "gera" 2 execuções, que por sua vez geram 4 etc...
e vai executando.... desse modo ela "come" a RAM do micro e ele fica sem memória RAM disponível e trava...

http://www.cyberciti.biz/faq/understanding-bash-fork-bomb/
https://simple.wikipedia.org/wiki/Fork_bomb
https://en.wikipedia.org/wiki/Fork_bomb
https://wiki.hackstore.com.br/Fun%C3%A7%C3%A3o_de_looping_infinito_(Fork_Bomb)

é mais ou menos isso, né, Listeiro?

como eu disse, é bem bolado. Existem outras "Fork Bombs".
¨¨¨¨¨¨¨¨¨¨¨¨¨¨¨¨¨¨¨¨¨¨¨¨¨¨¨¨¨¨¨¨¨¨¨¨¨¨¨¨¨¨¨¨¨¨¨¨¨¨¨¨¨¨¨¨¨¨¨¨¨¨¨¨¨¨¨¨¨¨¨¨¨¨¨¨¨¨¨¨¨¨¨¨¨¨¨¨¨¨¨¨
Albfneto,
Ribeirão Preto, S.P., Brasil.
Usuário Linux, Linux Counter: #479903.
Distros Favoritas: Sabayon, Gentoo, openSUSE, Mageia e OpenMandriva.
Isto mesmo.

Eu só não comentei o sinal de & que põe a execução em plano de fundo e ibera o sistema para uma nova chamada.

----------------------------------------------------------------------------------------------------------------
Nem direita, nem esquerda. Quando se trata de corrupção o Brasil é ambidestro.
(anônimo)

Encryption works. Properly implemented strong crypto systems are one of the few things that you can rely on. Unfortunately, endpoint security is so terrifically weak that NSA can frequently find ways around it. — Edward Snowden[/quote]

Responder tópico

Responder tópico

Entre na sua conta para responder.

Fazer login para responder