Just another geek site


stopsoftpat.png

Buumm…

Trechos de código maliciosos que tem por objetivo a negação de um serviço ou até mesmo a obtenção de um recurso privilegiado do sistema, a internet tá cheia. Muitos já vi, mas um deles me chamou a atenção quando me deparei com ele pela primeira vez, foi um simples fork bomb, feito em meia linha, utilizando a bash. Reparem como é "medonho" o danado:

$ :( ){ :| :; };:

Simples, não ? Tirando o fato desta linha poder travar uma máquina em poucos segundos, é uma função como outra qualquer, que em uma primeira olhada, pode parecer um palavrão, mas acreditem, não é. Obfuscated Code é uma boa leitura. Explicando melhor, uma função em script bash, pode ser declarada da seguinte forma:

$ teste() {
> echo "teste";
> }

Ok, tranquilo... Mas esta mesma função pode fazer referência à ela mesmo (Recursividade), bastava que no local de um echo, tivesse a própria função, e caso ela chamasse a si próprio usando um pipe para ela também, ai é que "num tinha pareia não", como diriam os natalenses amigos meus. Observe:

$ teste() {
> teste | teste ;
> }

Substituindo teste por dois pontos (apenas mudamos o nome da função), e logo em seguida chamamos a tal função, tudo junto, em uma linha só, temos a bomba shell:

$ :( ){ :| :; };:

Existem várias maneiras de preparar Neston, e também existem várias maneiras de se proteger de um uso exagerado de recursos, a mais flexível talvez seja utilizando a ferramenta ulimit, que não serve apenas para especificar a quantidade de processos que um usuário pode alocar, man ulimit e seja feliz.

One Comment, Comment or Ping

  1. Esse post é do mau… :)

Reply to “Buumm…”

Diddley BowDiddley BowGuitarra Epiphone CasinoGuitarra Epiphone CasinoGuitarra Epiphone CasinoGuitarra Epiphone CasinoGuitarra Epiphone CasinoCentral ParkShow on Central ParkEmpire State BuildingCamelô na Broadway ? Sim!BuildingSubway musiciansNew York - Roockfeller CenterBrooklyn BridgeBrooklyn BridgeBrooklyn BridgeBrooklyn Bridge