Os vírus, propriamente dito tem suas características que os definem como vírus. Entre as características 3 são as principais.
- Auto execução sem a intervenção humana.
- Auto replicação de si mesmo sem intervenção humana
- Auto propagação sem intervenção humana.
Por causa dessas 3 características de um verdadeiro vírus, podemos afirmar categoricamente que NÃO EXISTE VÍRUS PARA LINUX. Só que aí você que tem esse pensamento de que existe vírus para todas as plataformas, diz... Tem sim, eu já vi no jornal, na internet, no site A ou B dizendo que tem vírus para
Linux.
1. A imprensa mente.
2. Empresas de antivírus querem vender seus produtos.
3. Microsoft não quer ser a única empresa com vírus no mercado.
Vamos analisar o caso de um vírus atacando o sistema Linux, primeiro que o vírus tem que ser executado sem intervenção humana e no Linux nada é executado se você ou o root não der permissão de execução.
Depois de executado com sucesso o suposto vírus deve executar a função maliciosa, se você não der permissão de root para o script, ele só pode mexer no seus documentos, assim sendo vamos dizer que ele copia um certo documento importante e envia ao seu criador, só para dizer que ele é perigoso.
Até aqui esse programa nada mais é do que um spyware, agora digamos que ele faz cópias de si mesmo e envia para os seus contatos. Para fazer tal coisa você deve estar usando um cliente de e-mail configurado de forma que você pode enviar e-mails para os seus contatos, ou ele pode ser enviado por Bluetooth, ou se espalhar em máquinas conectadas na mesma rede. O que torna-se impraticável porque a maioria desses eventos necessitam de intervenção do usuário e autenticação.
E essa é a palavra chave que todos os anúncios de "vírus" no Linux procuram varrer para debaixo do carpete. Acesso como usuário root. Para colocar de forma mais simples de como descobrir se um anúncio de vírus é especulação ou fato, procure por essa palavra e você vai perceber que de forma bem sutil eles mencionam que para que o suposto vírus possa fazer o estrago ele precisa de acesso administrativo. É claro!!!! root tem poder absoluto no sistema, usar o root como usuário principal é fazer do Linux um Windows. Porém se você não é root, você não apita em nada no sistema, somente os seus arquivos na pasta /home, /tmp e nada mais.
Em termos práticos, além de você ter que encontrar um vírus capaz de fazer algum dano você tem que dar permissões de execução para ele e ainda executá-lo como root para que ele tenha capacidade de talvez infectar arquivos do sistema, ou seja você tem que dizer: "Vírus eu sou masoquista computacional, me infecte!"
Geralmente um anúncio de vírus no Linux usam palavras chaves para te distrair do fato que sem acesso como root o vírus é inofensivo. "Sistema comprometido", "aparelho infectado", "acesso administrativo explorado", "sistema vulnerável" etc. Todas essas palavras chaves significam a mesma coisa... o suposto "vírus" tem que ser executado pelo root ou nada feito.
Veja um exemplo:
Veja que esse vídeo eles alertam para dois casos, um vírus destinados a outros sistemas em servidores Linux e "vírus" executados pelo browser, que de acordo com a matéria dispensa a autenticação do root para ser executado. Lembre-se destes dois casos, porque eu vou mencioná-los mais adiante.
Outro detalhe sobre "vírus" no Linux geralmente os vírus não tem vida longa... Porque hein!!?? Simples, devido aos obstáculos para a propagação e o sistema de autenticação que impede qualquer um de fazer o que quiser, faz com que o vírus morra antes de se propagar. Por exemplo, digamos que eu sou um idiota e resolvi me logar como root e criar um vírus que deve infectar outras máquinas na rede.
Ao criar o vírus ele vai executar tudo que eu quiser porque eu sou o root na máquina, só que ao copiar ele para outra máquina usando SSH, para executar eu tenho que me logar no SSH, usar o sudo para ser root da máquina invadida e executar o tal vírus. Tarefas impossíveis de ser executadas automaticamente. Esse vírus está ativo na minha máquina e dormente (morto) na segunda máquina.
Se o sistema tem o Samba ativo e configurado para compartilhar a pasta do usuário na rede (que diga-se de passagem é uma pratica horrível) e eu copio o "vírus" na pasta de autoexecução do KDE ou GNOME ou eu altero os arquivos repensáveis pela execução de programas ao iniciar o ambiente gráfico seja ele qual for, esse "vírus" só vai se espalhar em máquinas que estejam configuradas no mesmo modo e ainda assim só os usuários comuns podem executar esse "vírus".
As alterações nos arquivos de autoexecução não poderão ser feitos automaticamente a não ser que o ambiente esteja tão mal configurado e que além do Samba apontando para a pasta do usuário o SSH tem que estar desprotegido e a senha de todas as máquinas e usuários tem que ser a mesma para que um login possa ser executado e os arquivos da máquina alvo sejam alterados.
Em resumo, não é possível se espalhar de forma que afete todas as máquinas.
Worms
Como eu já descrevi as características de um worm na página anterior:
Worm - o verme (worm) é outro programa pequeno e auto-replicante, mas geralmente ele não se aloja em outra aplicação, em vez disso ele roda escondido como um serviço do sistema, executando a tarefa pela qual foi criado.
Assim como um vírus ele é auto-replicante, quer dizer, ele faz cópias dele mesmo e espalha através da rede.
O motivo pelo qual um worm não é possível no Linux é o fato de rodar escondido como um serviço do sistema, usuários comuns não podem executar serviços do sistema por si e muito menos esconder esses serviço do comando ps. Assim sendo, mesmo que eu seja idiota suficiente para criar um worm no meu computador como root ele não vai se espalhar e rodar em outros sistemas, porque ao infectar o outro sistema ele precisa ser rodado como root do sistema atacado para alcançar seus objetivos.
Qual a diferença entre um vírus e um worm?
O vírus se aloja em uma aplicação e executa seus objetivos enviando comandos do programa infectado, enquanto o programa infectado está instalado o vírus está ativo.
Já o worm se espalha pela rede e ele não depende de outra aplicação, em inglês chamamos de standalone application, quer dizer uma aplicação que não depende de outra aplicação mas sozinho executa seus objetivos.
Se você instalou uma aplicação e descobriu que seu computador está infectado, foi um vírus... se você não instalou nada e o computador foi infectado é um worm que entrou pela rede... claro que isso só é possível no Windows e não no Linux, nada entra no Linux por acaso.