Malwares

Transcrição

Malwares
Malwares
As maiores ameaças aos usuários de computadores conectados na Internet são
representadas pelos Malwares. Eles podem seqüestrar o browser, redirecionar as consultas
de buscas, incluir pop-ups, registrar os sites visitados, etc. A programação de Malwares
pode ser simples (veja um exemplo na página 3) e eles podem causar sérios problemas
tornando o computador instável e as comunicações inseguras. Vários Malwares podem
reinstalar-se após serem removidos, ou ocultar-se no Kernel do sistema operacional, sendo
extremamente difíceis de serem localizados. O termo Malware é originado da contração
de “malicious software”, e identifica qualquer programa desenvolvido com o propósito de
causar dano a um computador, sistema ou redes de computadores. O Malware pode ser
classificado de acordo com a maneira como é executado, como se replica e pelo que
faz. A classificação não é perfeita porque estas funções frequentemente se sobrepõem e
as diferenças nem sempre são óbvias.
Classes de Software Malicioso
Os dois tipos mais comuns de Malware são os vírus e os vermes (worms). Ambos têm em
comum a capacidade de se auto-replicarem, ou seja, podem divulgar cópias para outros
computadores ou sistemas. Nem todos os programas que se auto-replicam são maliciosos;
existem aplicações que utilizam este recurso para criar cópias de segurança. Para serem
classificados como vírus ou vermes, pelo menos algumas destas cópias devem estar
habilitadas a replicar-se, criando uma rede de distribuição que propaga o Malware. A
diferença conceitual entre um vírus e um verme é que este último opera independente de
outros arquivos ou programas, enquanto o primeiro depende de um hospedeiro para ser
distribuído.
Uma classificação de software malicioso poderia ser:
Vírus:
Os vírus utilizam vários tipos de hospedeiros. Na sua origem os vírus
residiam em arquivos executáveis e setores de boot de disquetes,
posteriormente contaminaram documentos com macros em scripts e
atualmente estão embutidos em anexos de e-mails, que dependem da
curiosidade do usuário para serem ativados. No caso dos arquivos
executáveis, o vírus é caracterizado por uma porção de código
acrescida ao código original que é executada junto com o aplicativo.
Normalmente o programa hospedeiro mantém o seu funcionamento
depois de infectado, como estratégia para ser propagado, mas
algumas viroses sobrescrevem os códigos de programas, inabilitando a
sua função original. Os vírus se propagam quando o arquivo hospedeiro
(programa ou documento) é transferido de um computador para outro.
Vermes (Worms): Os vermes digitais são semelhantes aos vírus, mas não dependem de
hospedeiros para replicarem-se. Eles modificam a operação do sistema
operacional do computador infectado para serem inicializados como
parte do processo de boot. Para replicarem-se, os vermes exploram
vulnerabilidades do sistema alvo ou usam algum tipo de engenharia
social para convencerem as vítimas a acionar a sua execução.
UBC 722 - Malware.doc
Pag 1
Wabbit:
Um tipo de programa que se caracteriza pela eficiência em autoreplicar-se. Wabbits não usam programas ou arquivos hospedeiros e não
utilizam redes para distribuir suas cópias. O Wabbit se auto-replica
repetitivamente no computador, causando dano pelo consumo de
recursos. Um exemplo de Wabbit é o “fork bomb”, um ataque tipo
“Denial of Service” que assume que o número de programas e processos
simultâneos que podem ser executados em um computador tem um
limite. O Fork Bomb opera criando rapidamente um grande número de
processos para saturar os recursos do sistema, inviabilizando o seu uso.
Cavalos de Tróia: Um Cavalo de Tróia (Trojan) é um programa malicioso que se disfarça
de programa legítimo. Cavalos de Tróia não se replicam
automaticamente e são espalhados anexados a programas úteis.
Cavalos de Tróia podem portar outros malware, como vírus e vermes,
em uma variante que é chamada de “droppers”.
Backdoor:
Um Backdoor é um software que permite o acesso a um computador
evitando os procedimentos normais de autenticação. Existem dois
grupos de Backdoors. Os primeiros são inseridos manualmente no código
de um software hospedeiro e são divulgados na medida em que o
programa é instalado. O segundo tem um comportamento semelhante
aos vermes, integram o processo de inicialização do equipamento e se
espalham transportados pelas pragas virtuais. Em algumas publicações
tem surgido o termo Ratware para descrever um malware tipo backdoor
que transforma o sistema infectado em um Zumbi para o envio de
spams.
Spyware:
São softwares que coletam e enviam informações (padrões de
navegação nos casos mais benignos ou número de cartão de crédito
nos casos mais malignos) sobre os usuários ou, mais precisamente, sobre
a atividade do computador, normalmente sem notificação explícita ao
usuário. A propagação dos Spywares é semelhante a dos Cavalos de
Tróia.
Exploits:
São códigos que visam explorar uma vulnerabilidade conhecida. Exploits
não são necessariamente maliciosos, muitos são projetados por
pesquisadores de segurança para comprovar que a vulnerabilidade
existe, entretanto, eles são um componente comum em programas
maliciosos.
Rootkit:
São programas inseridos depois de um atacante conseguir controlar o
computador. Incluem frequentemente funções para ocultar indícios,
excluindo registros de Log e disfarçando os procedimentos usados no
ataque. Rootkits podem incluir Backdoors, que permitem ao atacante
voltar quando julgar conveniente, ou Exploits, servindo como apoio para
atacar outros sistemas. Rootkits competentes são difíceis de identificar
porque eles atuam no nível de Kernel para ocultar a sua presença. Existe
um consenso na comunidade de segurança de que se um sistema foi
comprometido por um Rootkit, o mais sensato a fazer é reformatar todo
o ambiente e reinstalar o sistema, porque é virtualmente impossível ter
certeza que todos os seus componentes foram removidos.
UBC 722 - Malware.doc
Pag 2
Keylogger:
Software que registra toda a atividade do teclado em um arquivo, que
pode ser enviado para um provável atacante. Alguns Keyloggers são
espertos o suficiente para registrar apenas as informações digitadas
quando o usuário conecta com um site seguro. Por amostrar as teclas
que estão sendo digitadas, o Keylogger pode capturar números de
contas, senhas e outras informações, antes delas serem processadas
(criptografadas) por dispositivos de segurança.
Dialers:
Programas que substituem o número de telefone de uma ligação
discada por um outro, quase sempre uma ligação à longa distância,
para ataques tipo “Man-in-the-Midle”. Dialers podem ser programados
para realizarem chamadas em horários não ortodoxos (04:00 da manhã)
para transferirem informações coletadas no computador durante o dia.
URL Injection:
Modifica o comportamento do browser em relação a alguns/todos
domínios. Substituem a URL enviada pelo servidor por uma outra com o
intuito de realizar lucro com ofertas relacionadas a produtos do site
original. Normalmente esta troca de sites é realizada de modo
transparente ao usuário. O site alterado realiza operações comerciais
em lugar do site originalmente acionado. O Mozilla FireFox BetterSearch
é um exemplo.
Por uma questão de precedência, o termo Vírus é utilizado para caracterizar todos os tipos
de Malware. Os fornecedores de programas antivírus contribuem para este tipo de
confusão na medida em que combatem várias manifestações de Malwares.
Exemplo de código fonte de um Wabbit em linguagem C++
# include <stdio.h>
struct nodof
{
struct nodof *elo;
}
*pri;
main( )
{
while(1) pri = (struct nodof*) malloc (sizeof (struct nodof));
}
//
ByCG
Carlos Alberto Goldani
Unicert Brasil Certificadora
Abril de 2005
UBC 722 - Malware.doc
Pag 3

Documentos relacionados

Análise de Malwares com Software Livre

Análise de Malwares com Software Livre se replicar. Atualmente, os cavalos de Tróia não mais chegam exclusivamente transportados por vírus, agora são instalados quando o usuário baixa um arquivo da internet e o executa. Prática eficaz ...

Leia mais