As verdades sobre o Linux: Afinal, por que o sistema não pega vírus?
Hoje abordaremos uma das maiores lendas da informática, “Linux não pega vírus”, e como a maioria das lendas, ela está calcada em algum fato.
Os maiores casos de infecções computacionais são provenientes de computadores que usam o Windows como sistema operacional, mas você já parou para pensar por que isso acontece e por que nunca mudou?
Em primeiro lugar deve-se a estrutura de usuários do sistema, em segundo lugar os muitos pontos vulneráveis que ele apresenta, em terceiro a grande faixa de usuários pouco experientes que usam o sistema e por último, um aparente desinteresse em corrigir algumas falhas de segurança.
O problema da permissividade
O primeiro motivo do Windows ser facilmente infectado é que normalmente o sistema deixa usuário principal como Administrador, também conhecido como Root. Esse usuário consegue fazer alterações profundas no sistema e o máximo que o Windows vai colocar no caminho de um programa para ser instalado é uma tela perguntando se você quer continuar, com duas opções “Sim” ou “Não”.

Esta tela não pede nenhum tipo de autenticação para autorizar um software a ser instalado no sistema, basta que qualquer um clique em Continuar e o programa será executado.
Por conta disso, não somente os vírus são mais facilmente instalados, mas também outros softwares duvidosos, como os clássicos Hao123 e o Baidu.
Ademais, os pontos críticos do Windows, como o seu famoso registro, a pasta System32 (que é onde fica o Kernel sistema e as principais bibliotecas, as DLLs) são facilmente acessadas por qualquer usuário que esteja utilizando o sistema no modo administrador. É possível utilizar o sistema com um usuário restrito, mas a maioria das pessoas não ativa este recurso. Falta de conhecimento? Talvez, mas a Microsoft poderia impor o uso de um usuário de maneira mais segura.
Não podemos negar que a existência ou não de vírus está mais ligado ao usuário que utiliza o sistema, do que ao sistema propriamente dito. Existem muito mais usuários leigos no Windows do que no Linux, uma vez que o Linux instiga o aprendizado.
Uma vez que sistemas baseados em Linux tem o código aberto e todo mundo pode ver como eles funcionam, seria fácil para a Microsoft seguir o exemplo. Não podemos descartar a possibilidade de algo comercial por trás disso. Alguma possível parceria com empresas de softwares antivírus poderia ser uma razão do Windows manter vulnerabilidades antigas, mas isso é apenas uma teoria sem evidências.
No caso do Linux, como ele não uma corporação com fins lucrativos, não existe o interesse em criar um ambiente para a proliferação de vírus. Ainda mais considerando que atualmente, o público mais substancial do ecossistema Linux são os servidores, um ambiente extremamente sensível.
Vírus no Linux: tem ou não tem?
De uma vez por todas, sim, tem! Mas… existem várias características que tornam improvável que um sistema Linux peque alguma dessas pragas facilmente.
Um sistema computacional jamais é invulnerável, mas comparado ao sistema da Microsoft o Linux pode ser visto como um muro enquanto o Windows, uma cerca.
Vamos tomar o Ubuntu como exemplo por ser o sistema desktop baseado em Linux com mais usuários. Logo que você instala o sistema, está utilizando um usuário do tipo padrão, ou seja, ele não tem permissões de Root para fazer alterações nas pastas no sistema. O único lugar onde o usuário pode alterar é a sua própria pasta /home/user/.
Para instalar um programa qualquer é necessário passar por uma tela de confirmação, mas diferente da do Windows que basta clicar em “Sim” ou em “Continuar” no Ubuntu você vai precisar da sua senha de Root. Ela é criada na instalação do sistema, ou seja, se você não é de fato o “administrador”, você não consegue fazer alterações profundas no sistema. Como se não bastasse, ainda existe o “sudo“.

Você que já usou tutoriais para instalar certos programas no Ubuntu, especialmente os que vem via PPA, já deve ter usando o comando “sudo”. Embora possa ser considerado um tanto defasado, o “sudo” é uma maneira de dar permissões de root temporárias para um determinado programa até que ele cumpra a sua tarefa, logo depois disso o usuário normal volta a ser usado.

Desta forma também existe a possibilidade de ser Root em programas específicos. Não é porque você está como root no terminal que conseguirá copiar arquivos como Root com o gerenciador de arquivos. Isso garante mais segurança.
Em termos práticos, além de ter que encontrar um vírus capaz de fazer algum dano, você tem que dar permissões de execução para ele e ainda o executar como Root para que ele tenha capacidade de talvez infectar arquivos relevantes do sistema. Ou seja, você tem que dizer explicitamente: “Vírus me infecte!”
Instalação de programas
Existem vários sites na internet que disponibilizam programas para o Windows, muitos deles são arquivos pirateados que só por isso já podem conter brechas de segurança, quando não são de fato um grande vírus. E ainda existem outros sites que disponibilizam softwares com um instalador onde a última preocupação é baixar o software que o usuário queria.
Não é incomum ao tentar instalar um programa baixado por esses “sites de downloads” e o instalador lhe dar opções que saltam aos olhos para te influenciar a instalar programas de terceiros, muitas vezes sem você saber o que está acontecendo.
Os defensores da prática (se é que existem) vão dizer que na hora da instalação existe a opção de desabilitar a instalação, assim como é possível ver e ler as licenças dos programas que serão instalados.
Isso é verdade, mas seria muito mais honesto deixar a instalação destes softwares desabilitadas como padrão. Caso o usuário realmente quisesse instalar ele marcaria, mas como muitos usuários Windows são adeptos do bom e simples “Next, Next, Finish” muitos acabariam não instalando.
Já no Linux…
Os principais programas estão disponíveis nos repositórios oficiais mantidos pela própria distribuição. Em grandes distros como o Ubuntu, Fedora, Debian e Arch Linux, os softwares são testados antes de entrarem para a “loja de apps” oficial do sistema, garantindo a qualidade e que não tentem empurrar coisas para o usuário sem que ele queira.

Ainda existem os programas instalados via PPA: estes são desenvolvidos e mantidos por terceiros, mas mesmo assim é possível ver cada pacote que está disponível no repositório através da sua página no Launchpad.
Existem também os arquivos .deb e os scripts: ambos podem ter o seu conteúdo verificado antes de se instalar e mesmo assim você precisa colocar a sua senha de Root para rodá-los. Ou seja, caso o usuário tenha algum cuidado, não será infectado. Na dúvida, prefira sempre a loja de aplicativos oficial.
Ou seja, no Linux há a curiosa situação onde quem mais “faz caca” são os usuários experientes que tentam fazer coisas pouco usuais. Um usuário leigo que só usa o PC para acessar redes sociais, jogar e utilizar aplicativos de escritório estará protegido, ao contrário dos usuários do Windows que podem contrair vírus mesmo em páginas aparentemente inocentes que conseguem rodar aplicações maliciosas ao nível de root.
Os executáveis
Outro detalhe são os tipos de arquivos comuns de vírus na internet, eles são normalmente desenvolvidos para Windows, explorando as falhas de segurança específicas do sistema. Eles têm o formato EXE, BAT, ou ainda MSI, ou qualquer outro executável de Windows que não roda no Linux facilmente, muito menos com permissões profundas.
Mesmo rodando um vírus de Windows em alguma camada de compatibilidade como o Wine, ele estará em um ambiente isolado, sem conseguir alcançar arquivos sensíveis, podendo ser apagado em poucos cliques.
O Linux não tem usuários por isso não tem tanto vírus
Essa é uma grande falácia. O Linux pode até não ter muitos usuários em desktop quanto o Windows, mas praticamente todos os servidores da Internet rodam Linux. Até a Microsoft acaba usando Linux em alguns deles como os do Bing terceirizados para a Akamai, ou seja, a maioria dos computadores importantes do mundo usa Linux.
Quem tem a intenção de criar vírus para fazer grandes estragos não teria por que não fazer, ainda mais com o facilitador do código ser aberto para poder explorar todas as vulnerabilidades.
Linux tem atualizações constantes
Pelo código do Linux ser aberto, a velocidade de correção de bugs também é maior. São muitas pessoas independentes debugando o código das principais distros e do kernel a cada lançamento, então os erros são identificados e corrigidos rapidamente através das atualizações do sistema.
Na mesma velocidade que um cracker poderia identificar uma falha no sistema e criar um vírus para ataca-lá, um hacker pode fazer o mesmo e indicar a correção. Para quem não sabe, no cerne dos termos, o cracker é “do mal” e o hacker é no mínimo neutro, quando não, “do bem”. São os dois lados da moeda dos profissionais de segurança da informação.
Java, o possível calcanhar de aquiles
De vez em quando aparece um vírus para Linux que dizem que pode causar mais estrago, como roubar senhas bancárias. Frequentemente são programas feitos em Java, ou seja, o problema vai um pouco além do Linux, ele explora falhas nos navegadores e no próprio Java e não no Linux em si.
Felizmente são poucos os usuários leigos que precisam realmente do Java, talvez apenas se você tiver a prática de utilizar o internet banking do seu banco ou trabalhe numa empresa com algum sistema legado muito específico, mas isso já está se tornando coisa do passado.
Android, o Linux que tem vírus
Talvez já tenha se perguntado, “ué, mas se o Android é Linux, por que tem tantos vírus para ele?” e a resposta é simples, o Android tem uma massa imensa de usuários.
A quantidade de usuários está relacionada diretamente com a quantidade de vírus produzida para o sistema, isso é lógico, mas não quer dizer que o sistema seja mais vulnerável por conta disso.
Se você já pegou vírus no Android, provavelmente foi baixando um APK de fora da loja. Ah, você fez Root no aparelho também? E seu sistema está super desatualizado? Talvez seja mais um problema de usuário do que de software.
O Android te dá a possibilidade de alterar e mexer com o sistema profundamente, assim como qualquer outro Linux. A diferença é que o Android foi muito modificado pelo Google ao ponto de não se assemelhar a qualquer outra distro Linux. Talvez um dos maiores problemas seja que fazer Root no Android, em muitos casos, está ao alcance de pessoas apenas curiosas e que não procuram adquirir conhecimento prévio antes de rootear o Smartphone.
Via de regra se você usar somente o Google Play para baixar os programas você não deverá ter problemas. Ainda assim, com o grande fluxo de aplicativos e atualizações chegando à loja do Google no Android, eventualmente algum vírus acaba passando. Com isso, se você tem aplicativos sensíveis, como o de banco, evite instalar aplicativos muito escusos, ou que envolvam atividades suspeitas.
O usuário faz toda a diferença
Pode parececlichê, masas é a pura verdade, o melhor antivírus ainda é você que usa o computador. Se tomar cuidado mesmo no Windows você terá poucos problemas com vírus. Acontece que no Linux se o seu filho sem querer clicar em algum link num site de jogos, você não vai ganhar uma toolbar ou trojan de presente.
E para responder à pergunta…
Linux pega vírus? Sim, pega. Não é um sistema complemente imune, mas é muito pouco provável você pegar um, e se ainda bater uma paranoia apenas ligue o Firewall.
Agora que você conheceu melhor como as coisas funcionam e são, terá mais embasamento da hora de afirmar que “Linux não pega vírus” e poderá explicar melhor para o seu colega que só sabe instalar programas por sites de download.
Caso queira se aprofundar ainda mais em Linux, considere ser membro Diolinux Play e tenha acesso a cursos exclusivos, como o de terminal, Shell Script e até sobre como criar sua distro do zero!