janeiro 31, 2018

[Segurança] A História dos Vírus de Computador

O Felipe Prado acabou de publicar um artigo bem legal, aonde ele descreve a história e a evolução dos vírus de computador, desde as primeiras discussões teóricas e experimentos nas décadas de 60 e 70, passando pelos primeiros vírus na década de 80 e chegando até perto dos dias atuais, quando depois do início dos anos 2000 o foco principal dos malwares passou para o ganho financeiro, através do roubo de dados, criação de botnets e permitir a extorsão (ransomwares). Hoje, somos perseguidos pelos vírus para celular e os ransomwares, e somos assombrados pelos malwares para disppositivos IoT e contra caixas eletrônicos (ATMs).

A  propósito, a Wikipedia também possui uma excelente "timeline" dos vírus de computador, que lista os principais códigos maliciosos de forma detalhada e que vale a visita.

Os códigos maliciosos foram evoluindo de diversas formas no decorrer do tempo. De uma forma rápida e simplificada, temos os fatores abaixo:
  • Infecção: Os vírus surgiram infectando o boot dos sistemas operacionais ou atuando como vermes (ou seja, se transmitiam automaticamente sem necessidade de um "arquivo hospedeiro"). Em seguida surgiram os vírus que se propagavam através de arquivos executáveis, depois vieram os vírus de macro (que utilizavam recursos de script de automação em aplicações, principalmente o Microsoft Office);
  • Forma de contaminação: até mesmo pela limitação tecnológica da época, os primeiros vírus infectavam quando você bootava um computador com um sistema operacional infectado. Depois a contaminação passou a ser automaticamente pela rede, nos casos dos worms, ou quando a vítima manualmente executava algum programa que estava em um arquivo executável (normalmente o vírus inclui seu código em outro programa, aumentando o tamanho do arquivo original, mas sem desabilitar o funcionamento do programa original) ou um arquivo com macros maliciosas (como no caso dos vírus de macro do Office). Essas são as formas de contaminaçào mais comuns até hoje. Depois surgiram também alguns vírus que exploravam vulneravilidades de aplicativos ou sistema operacional para se executarem automaticamente, mas felizmente esses vírus são mais raros;
  • Vetor de transmissão: No início, antes da proliferação das redes de computadores, os disquetes eram o único vetor de transmissão dos vírus. Você colocava um disquete em um computador infectado e ele sobrescrevia a área de boot do disquete para incluir o código do virus. Seria necessário iniciar um computador com um disquete infectado para contaminá-lo. Depois vieram os vírus que se espalhavam através da rede local, como os worms, e os que se copiavam (ou melhor, copiavam arquivos em que eles estavam embutidos) através de pen-drives e discos compartilhados na rede, e do envio de anexos em e-mails. Há também os vírus que se espalham através do envio de links contaminados em mensagens em redes sociais e via SMS;
  • Motivação: no início era a curiosidade e pesquisa, ou até mesmo a zueira (como o ping-pong e o cascade, que eram inofensivos, apenas importunavam os usuários). Logo passou para a destruição de dados, depois para o roubo de dados. Vieram os spywares e adwares para roubo de dados e divulgação de propaganda não solicitada, e também os roguewares. Depois surgiu a onda de criação de botnets para envio de SPAM ou realização de outros ciber ataques e o ciber crime entrou de cabeça no uso de malwares para ganho financeiro (roubos de credenciais bancárias e fraudes bancárias, ransomwares, etc);
  • Plataforma: Inicialmente os vírus eram restritos aos computadores pessoais, raramente atacavam servidores. Com a popularização dos dispositivos móveis, vieram os vírus para smartphone, para terminais de pontos de venda (PoS) e agora estamos na onda dos códigos maliciosos para dispositivos IoT e terminais bancários;
  • No ciber crime, inicialmente o foco era em vírus que roubavam dados bancários (aqui no Brasil, a propósito, isso já é uma febre desde os primórdios da Internet) tentando identificar qualdo a vítima acessava o site de algum banco ou passava por páginas de login e de pagamento. Conforme os bancos aumentavam a segurança os malwares se sofisticavam (a captura de senhas, por exemplo, inicialmente era feita por keyloggers, mas chegou a incluir captura de tela para identificar quando o usuário digitava a sua senha nos teclados virtuais). Depois vieram os vírus que permitiam o acesso remoto para que o ciber criminoso controlasse o computador da vítima e acessasse uma sessão aberta no Internet Banking, ou que fizesse ataques de "man in the browser" para injetar transações fraudulentas na sessão do usuário. Os frameworks de malware genéricos foram revolucionados pelo o Zeus, que foi praticamente ignorado no Brasil, mas impulsionou o ciber crime globalmente ao oferecer uma plataforma flexível para criação de malwares bancários, com vários recursos técnicos para roubo de dados, acesso aos computadores das vítimas, etc. Aqui no Brasil, os malwares bancários escritos em Visual Basic reinaram por muitos anos. Depois vieram os malwares para celulares, os malwares para roubar dados de cartões em terminais de ponto de venda (PoS) e, nos últimos anos, tem surgido casos de malwares para caixas eletrônicos. O ciber crime também passou a focar em ransomwares (que já acontece há cerca de 5 anos em todo o mundo, mas virou febre no Brasil apenas recentemente) e, agora, está começando a buscar o roubo de criptomoedas.

Seguem mais alguns comentários pessoais sobre os principais "causos" e minhas experiências com esses códigos maliciosos:
  • Brain (1986): Em uma palestra do Mikko Hypponen no TED, ele contou que foi até o endereço que constava no código-fonte do vírus!
  • Ping-pong: o primeiro caso de vírus que eu me lembro, muito popular na época. Como não existiam antivírus, eu e meus amigos do colégio técnico editávamos o setor de boot dos disquetes para identificar que lá havia o vírus e, se houvesse, simplesmente apagávamos sobrescrevendo zeros. foi seguido pelo Cascade, mas ele não ocorria com a mesma frequência;


  • Sexta-feira 13 e Michelângelo: Os melhores exemplos da geraçãod e vírus do tipo time-bomb. Eles disparavam apenas em datas específicas e, por isso, as revistas de informática dos anos 90 publicavam os "calendários de vírus", com as datas em que alguns vírus iriam disparar;
  • I Love You: Virus bem simples, que se espalhou muito rápido pois usava uma engenharia social bem direta: Vinha em um arquivo que parecia ser um bloco de texto inofensivo (pois usava duas extensões: .txt.vbs) com a promessa de ser uma cartinha de amor: o assunto era "I love you" e o e-mail vinha com uma única frase, dizendo que uma carta de amor ("love letter") estava em anexo. Foi um marco na época, pela velocidade que se espalhou pela Internet, inaugurando a fase das mega-infecções globais (uma experiência que revivemos recentemente, com o WannaCry);
  • No início dos anos 2000 tivemos a febre dos ataques globais de worms, que se espalhavam rapidamente e tiravam empresas do ar. Foi a época dos vermes CodeRed (2001), Nimda (2001), SQL Slammer (2003), Blaster (2003) e Sasser (2004);
  • O verme SQL Slammer, que surgiu em 01/02/2003, demorou aproximadamente 10 minutos para se espalhar mundialmente e no pico da sua infestação, aproximadamente 3 minutos após surgir, escaneava 55 milhões de endereços IP por segundo.

Para saber mais:

Nenhum comentário:

Creative Commons License
Disclaimer: The views expressed on this blog are my own and do not necessarily reflect the views of my employee.