paulo1205
(usa Ubuntu)
Enviado em 18/03/2014 - 17:07h
A questão é que você está querendo começar do meio (ou do fim). Você deveria aprender outras coisas antes.
A não ser que esteja com defeito, o computador não é uma máquina maluca, que faz coisas espontâneas e imprevisíveis -- e mesmo em caso de defeito, o provável é que não faça nada que tenha sentido. Num computador normal, só se executa código que
alguém mandou que fosse executado, mesmo que esse “alguém” não seja a pessoa sentada da frente do computador.
Você deve pesquisar um pouco para obter detalhes, mas basicamente existem as seguinte categorias de
malware.
--- Vírus ---
A analogia é com o ser vivo sub-celular que só consegue se reproduzir ao parasitar outras células e injetar nelas o seu próprio código genético.
Para que um vírus funcione, ele normalmente se baseia no fato de que os arquivos que contêm os executáveis dos programas possuem uma estrutura conhecida que, entre outras informações, aponta para onde o programa começa, e também espaços vazios. Um vírus simples instala seu código nos espaços vazios e altera a estrutura que aponta para o começo do programa para que passe a apontar para o código do vírus.
Como parte da sua execução, um vírus pode prosseguir com a execução do que seria o programa original, permanecendo, desse modo, mais ou menos oculto. Só que com a parte maliciosa do código que já foi instalada, um vírus normalmente procura por outros arquivos executáveis em que possa aplicar a mesma técnica de ocupação de espaços vazios e alteração de endereço inicial de execução.
Além de código que busca reproduzir-se e infectar outros programas, os vírus podem ter outros efeitos deletérios, dependendo de quão diabolicamente criativa seja a mente do seu autor. Um deles é o de espionar hábitos e tentar coletar informações importantes, como números e senhas de contas bancárias ou de serviços on-line.
Vírus em executáveis eram mais comuns no MS-DOS e em versões do Windows anteriores ao XP. Também as versões do MacOS anteriores ao MacOS X tinham lá seus problemas com vírus. Em sistemas UNIX (incluindo Linux), houve uns poucos vírus feitos como prova de conceito, mas nunca foram um problema real. Contudo, vírus não precisam ser programas executáveis em código nativo do processador: durante muitos anos, e mais ainda nos primeiros anos de popularização da Internet comercial, vírus em macros do Word e do Excel foram a pior praga em empresas e instituições de ensino.
--- Trojan Horse (Cavalo de Troia) ---
Assim como na lenda grega, um programa é chamado de "cavalo de Troia" quando ele é construído com o objetivo explícito de induzir um usuário incauto a executá-lo, como se fosse um presente ou mimo (como um vídeo, um protetor de telas "bonitinho", uma tela bonita com o pensamento de algum autor famoso etc.), mas esconde internamente código malicioso.
Uma vez executado, o cavalo de Troia pode infectar outros programas de modo semelhante a um vírus, ou pode usar técnicas que promovam sua disseminação na forma mesma de cavalo de Troia (por exemplo: varrer uma lista de contatos de e-mail e enviar a esses contatos mensagens contendo o cavalo de Troia como anexo, com um convite para abri-lo).
--- Worm (Verme) ---
Código malicioso que se baseia em uma falha de segurança não-intencional existente em um programa legítimo. Assim como um animal superior pode ser infectado por vermes ou seus ovos ingeridos juntamente com a comida (ou também por meio de que penetração involuntária por outros canais corporais, como narinas, uretra, reto ou mesmo poros da pele e ferimentos), os worms de computador utilizam geralmente canais de comunicação abertos na rede por um programa e submetem dados de entrada que esse programa não consegue tratar, provocando um comportamento anômalo.
O efeito pretendido com worms geralmente é o mesmo de vírus e trojan horses: perpetuar-se e estabelecer-se por meio de injeção de código executável (que, por sua vez, pode conter outras funções, tais como a de roubar informações, provocar parada de funcionamento etc.). Ao contrário, porém, de vírus e trojan horses, no momento de contaminação inicial, um worm não introduz o código executável num arquivo que será executado posteriormente, mas diretamente na memória do programa que está em execução, geralmente se baseando em uma ou mais das seguintes falhas de programação no programa hospedeiro:
buffer overflow,
uncontrolled format string,
entrada fora de faixa ou não verificada.
Procure ler sobre essas vulnerabilidades na Internet. A Wikipedia em Inglês é um bom começo.