Vírus computacionais e Vida Artificial

Slides:



Advertisements
Apresentações semelhantes
Electronic Data Interchange
Advertisements

Entrada e Saída Introdução.
Prof. Carlos Roberto das Virgens
Segurança na Internet ou Intranet
Vírus Informáticos Programa especial de computador Auto replicam-se
Espionagem na Internet
SEGURANÇA NA INTERNET PEDRO MARQUES RICARDO MELIÇO.
O Essencial sobre Linguagens de Programação Luís Caires Maio 2005.
Vírus de Computador Bernardo Henz, Diego João Cargnin, Eduardo Speroni, Guilherme Schardong, Lamarck Heinsch, Vinícius Trindade.
INTERAÇÕES Organizações como Sistemas Complexos
Vírus.
ARQUITETURAS RISC E CISC
INTRODUÇÃO A INFORMÁTICA
Mecanismo de Proteção (Prevenção e Detecção)
Refatorações Experiência é aquela coisa maravilhosa que permite que você reconheça um erro tão logo o cometa novamente F.P. Jones.
Recursividade Conceitos e Aplicações.
Fabio Notare Martins Pontifícia Universidade Católica do Rio Grande do Sul Programa de Pós-Graduação em Ciências da Computação.
1 Simulação baseada em multiagentes – aplicação em educação O processo de simulação significa dirigir o modelo de um sistema com entradas satisfatórias.
SIMULAÇÃO EM COMPUTADOR: O PENSAMENTO COMO PROCESSAMENTO DE INFORMÇÕES
Organização da Memória Principal
Linguagens de Programação
Vírus, um grupo a parte. Vírus, um grupo a parte.
TIPOS DE TESTES APLICÁVEIS E NÃO APLICÁVEIS AO PROJETO
MANUTENÇÃO DE SOFTWARE
Sistemas Operacionais I
Software de Rede Willamys Araújo.
PROF. PAULO NAJAR
ES – 2º Apresentação Teórica. Rename Method O nome de um método não revela o seu propósito.Motivação Métodos devem ser chamados de uma forma que comuniquem.
REDUNDÂNCIA POR SOFTWARE
Aula prática 13 Orientação a Objetos – C++ Parte 1
ÁCIDO DESOXIRRIBONUCLEICO
Redundant Array of Independent Drives Raid
Sistemas Operacionais
Carlos Oberdan Rolim Ciência da Computação
Lógica Proposicional Caderno de Exercícios.
Redes Neurais Prof. Alex F. V. Machado.
É um conjunto de registos dispostos numa estrutura regular que possibilita a reorganização dos mesmos e a produção de informação com a menor redundância.
Fábio de Oliveira Borges
ACESSO A BASE DE DADOS.
INTRODUÇÃO ÁS BASES DE DADOS
Sistema Operativo (S.O) em ambiente gráfico
CoWS: Uma Abordagem de Escrita Colaborativa Multi-Síncrona usando Espaços de Tuplas para Ambientes Móveis Berthonio Lucena Flávio Rocha.
Escola Eça de Queiroz S. T. C. Composto por : Bruno Ponces.
Professor: Márcio Amador
Universidade da Beira Interior Fiabilidade de Sistemas Informáticos Nuno Magarreiro n.º
Orientação a Objetos Parte I
Pontes e Switches Como vimos anteriormente, os repetidores são usados para expandir a extensão da rede, mas que replicam todos os quadros que recebem.
UNIDADE 2: Sistema Operativo em Ambiente Gráfico
SISTEMAS OPERACIONAIS I
O Computador e o Sistema de Informação Carlos Dinis Gonçalves 1O Computador e o Sistema de Informação.
SISTEMAS OPERACIONAIS I
ALGORITMOS Intensivo Janeiro e Fevereiro de 2011
SISTEMAS DISTRIBUIDOS Aula 4
Experimentação Algorítmica
Processos.
Componentes básicos de um computador
Modo de medição da capacidade de memória
Introdução a Banco de Dados Aula 04
VÍRUS Profª Adriana Braz Moreira Vírus, um grupo a parte.
8088 Assembly Software Básico Mitsuo Takaki.
Professor Esp. Diego André Sant’Ana Disciplina: Sistemas Operacionais II Sistemas de Arquivos- Tipo de arquivos – Cap
Kaspersky Lab Um dos maiores fabricantes de software de segurança do mundo.
Capítulo 8 Programas Maliciosos.
18/04/2017 MODULO: Sistemas Operacional Aula 09 –Vírus e Antivírus
Vírus.
Sistemas Operativos.
Inteligência artificial (IA)
MEMÓRIAS.
Padrões de Projeto Aula 10 – Padrão Façade.
Organização do Material Genético nos Procariontes e Eucariontes
Transcrição da apresentação:

Vírus computacionais e Vida Artificial Pedro Eugenio, 30358

computacional/biológico Vírus Computacionais computacional/biológico O termo vírus computacional deriva e é de alguma forma análogo ao vírus biológico Infecções virais biológicas são propagadas através do vírus que injecta o seu conteúdo numa célula A célula infectada passa a ser uma fábrica replicadora de vírus

computacional/biológico Vírus Computacionais computacional/biológico Um vírus computacional não é mais que um segmento de código O vírus tem capacidade de se copiar para um ou mais hospedeiros quando activado Quando o hospedeiro infectado é executado o vírus é activado e o hospedeiro passa a ser uma fábrica replicadora de vírus

computacional/biológico Vírus Computacionais computacional/biológico Vírus computacionais são do mais aproximado ao conceito de vida artificial do que qualquer outra coisa criada pelo homem : São capazes de se reproduzirem São capazes de se esconderem dos seus predadores Têm capacidade de sobrevivência fora de cativeiro

Vírus Computacionais Evolução histórica 1949: J.V. Neumann – “Theory and Organization of Complicated Automata” 1950: Bell Labs – “Core Wars” 1970: Brunner’s “Shockwave Rider” and Ryan’s Adolescence of P-1” 1981: O Primeiro Vírus – Apple Computers, Texas A&M 1983: Tese de Cohen’s – Mathematical Virus 1986: Basit e Amjad – “Pakistan Brain” 1988: Jerusalem 1990: Primeiro Anti-Virus: Norton, Symantec 1991: Vírus polimórficos 1992: Aumento de 420% desde 1990!!! 1995: Windows 95 e o vírus “Macro” 1996: Vírus em código Java Hoje: Mais de 50,000 Futuro…?

Vírus Computacionais O verdadeiro vírus tem duas componentes: Estrutura e operação O verdadeiro vírus tem duas componentes: Propagação Manipulação De modo a funcionar; o vírus tem de se adicionar a algum pedaço de código Uma forma de classificar estes vírus é a aproximação que o mesmo toma quando se adiciona a outro pedaço de código (cápsula, add-on ou intrusivo)

Vírus Computacionais Vírus cápsula: Estrutura e operação Vírus cápsula: Forma uma cápsula em volta do código original, torna-se o programa e o programa original torna-se uma sub-rotina do código viral boot virus …etc…

Vírus Computacionais Vírus add-on: Estrutura e operação Vírus add-on: Adicionam o seu código ao código do hospedeiro. A sua única indicação de presença é a de que o tamanho do hospedeiro original aumenta Quase todos os vírus são add-on

Vírus Computacionais Vírus intrusivo: Estrutura e operação Vírus intrusivo: Reescrevem parte, ou todo, do código do hospedeiro original Poucos vírus são deste tipo

Vírus Computacionais A primeira geração (simples) : as cinco gerações A primeira geração (simples) : Estes vírus não faziam nada de extraordinário para além da replicação, alguns vírus de hoje ainda pertencem a esta geração Os estragos não vão para além de bugs ou incompatibilidades no software que antes não existiam Não são difíceis de descobrir, visto que nada fazem para se esconderem, de modo que um simples aumento num ficheiro, por exemplo, denuncia-o imediatamente

Vírus Computacionais A segunda geração (auto-reconhecimento) : as cinco gerações A segunda geração (auto-reconhecimento) : Implementam uma espécie de assinatura que assinala o ficheiro ou sistema como infectado, ou seja, não acontecem infecções duplicadas de hosts, permitindo que o virus seja mais dificil de detectar A assinatura pode ser uma sequência de bytes em disco ou memória Ao mesmo tempo que a assinatura pode impedir a detecção instantânea do vírus, no reverso da medalha a assinatura por si só é uma indicação da presença do vírus, embora não tão aparentemente fácil de descobrir

Vírus Computacionais A terceira geração (furtivo) : as cinco gerações A terceira geração (furtivo) : A maior parte dos vírus pode ser identificada analisando padrões de dados próprios dos mesmos nos sistema de armazenamento secundários De modo a impedir a detecção alguns vírus usam técnicas furtivas de modo a não serem descobertos Como exemplo se numa análise a um disco o vírus detecta que existe uma chamada do sistema para ler uma porção do vírus, este retornaria não o vírus mas os dados que estariam presentes se o sistema estivesse livre de infecção

Vírus Computacionais A quarta geração (armadura) : as cinco gerações A quarta geração (armadura) : À medida que antivírus saem para o mercado, autores de vírus voltaram-se para métodos de ofuscarem o seu código Estas técnicas de ‘armadura’ incluem: Adicionar confusão e código desnecessário de modo a dificultar a análise do código do vírus Defesas que podem tomar a forma de ataques directos a software de antivírus Estes vírus começam a aparecer por volta de 1990 Em 1990 sai para o mercado o primeiro antivírus da Norton

Vírus Computacionais A quinta geração (polimórficos) : as cinco gerações A quinta geração (polimórficos) : A mais recente classe de vírus a aparecer são os polimórficos, capazes de se mutarem Infectam os seus hospedeiros com uma versão modificada ou cifrada deles próprios De modo a se poder detectar estes vírus é necessário um algoritmo mais complexo que seja capaz de reverter o processo de mutação de modo a poder detectar se o vírus está presente ou não

Vírus Computacionais recapitulação Existem métodos semelhantes de propagação entre vírus computacionais e biológicos Existiu uma evolução significativa e adaptativa de vírus computacionais São o mais aproximado de vida artificial Mas serão de facto uma forma de vida artificial? Começa Vida Artificial

Vida Artificial O que é vida? Espaço temporal: Reprodução A vida é um padrão espaço temporal em vez de um objecto material especifico Reprodução Ou a capacidade de auto-reprodução em si mesmo ou em outro organismo Representação Armazenamento de informação de uma auto-representação Metabolismo Um metabolismo que converte matéria/energia Interacção Interacções funcionais com o ambiente Interdependência Interdependência das partes Estabilidade Estabilidade durante alterações de ambiente Evolução A capacidade para evoluir Expansão Ou crescimento Começa Vida Artificial

Propriedade espaço temporal Vida Artificial Propriedade espaço temporal Existe, nos vírus computacionais, alguma semelhança neste ponto. Vírus são representados por via de padrões de instruções computacionais que existem através do tempo em diversos sistemas computacionais É no entanto questionável se existirão no espaço, a não ser que estendêssemos a noção de espaço para ciberespaço Começa Vida Artificial

Capacidade de Reprodução Vida Artificial Capacidade de Reprodução Uma das características chave dos vírus é a capacidade de auto-reprodução Contudo o agente da reprodução não é o código do vírus mas sim o sistema em que se envolve É questionável se isto pode ser considerado suficiente para propósitos de classificação de vida artificial Começa Vida Artificial

Capacidade de representação Vida Artificial Capacidade de representação Esta característica é obviamente igualada pelos vírus computacionais O código que define o vírus é um template usado pelo vírus para se replicar a si mesmo Começa Vida Artificial

Vida Artificial Posse de metabolismo Esta propriedade envolve tomar energia ou matéria do ambiente e usá-la para seu próprio beneficio Vírus computacionais usam a energia de computação do sistema de modo a executar Não convertem matéria, mas fazem uso de energia eléctrica presente no computador de modo a infectar outros programas, neste sentido poderão ter um metabolismo Começa Vida Artificial

Capacidade de interacção Vida Artificial Capacidade de interacção Os vírus computacionais obviamente alteram o ambiente de modo a este suportar a sua existência Efectuam verificações de memória, alteram interrupções, endereços, … A maior parte dos estragos em computadores resulta destas alterações do ambiente por parte dos vírus Começa Vida Artificial

Capacidade de interdependência Vida Artificial Capacidade de interdependência Organismos vivos não podem ser divididos arbitrariamente sem serem destruídos O mesmo acontece com vírus computacionais, se a um vírus se tirar parte do código provavelmente o mesmo iria deixar de funcionar correctamente Contudo é interessante de verificar que um vírus pode ser ‘reagrupado’ posteriormente e voltar a ganhar a sua funcionalidade, organismos vivos já não partilham desta funcionalidade, como tal vírus são mais como máquinas em vez de instâncias de coisas vivas Começa Vida Artificial

Capacidade de estabilidade Vida Artificial Capacidade de estabilidade Curiosamente vírus computacionais detêm uma estabilidade e robustez que a maior parte de aplicações comerciais inveja São capazes de correr numa variedade de máquinas e sistemas operativos Muitos deles são capazes de comprometer (até destruir) mecanismos de antivírus Podem ajustar-se imediatamente a condições de pouco espaço em disco, erros, e outras excepções Alguns são capazes de correr nos mais diversos computadores pessoais, em qualquer sistema operativo, sobre qualquer configuração Começa Vida Artificial

Capacidade de evolução Vida Artificial Capacidade de evolução Aqui vírus computacionais diferem de organismos vivos, outra vez Vírus não são capazes de evolução, embora seja concebível, teoricamente, que um vírus extremamente complexo possa ser programado de modo a poder evoluir, contudo provavelmente seria maior do que o sistema operativo onde iria penetrar Começa Vida Artificial

Capacidade de expansão Vida Artificial Capacidade de expansão Vírus computacionais claramente exibem uma forma de crescimento no sentido de que existem mais num dado ambiente a através do tempo Alguns vírus afectarão todos os ficheiro num sistema apenas após algumas activações Começa Vida Artificial

Conclusão

Conclusão Primeiramente pode parecer que um vírus computacional é uma forma de vida artificial Contudo são encontradas deficiências quando confrontados com características que definem o que é vida Não é possível afirmar que estão “vivos” sem alterarmos a noção do que é a vida

Bibliografia Computer Viruses as Artificial Life Eugene H. Spafford Computer Viruses, Artificial Life and The Origin Of Life Robert C. Newman The Code of Life Laura Janet