1 / 28

Vírus computacionais e Vida Artificial

Vírus computacionais e Vida Artificial. Pedro Eugenio, 30358. 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

Télécharger la présentation

Vírus computacionais e Vida Artificial

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. Vírus computacionais e Vida Artificial Pedro Eugenio, 30358

  2. 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

  3. 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

  4. 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

  5. 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…?

  6. Vírus Computacionais 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)

  7. Vírus Computacionais 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…

  8. Vírus Computacionais 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

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

  10. Vírus Computacionais 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

  11. Vírus Computacionais 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

  12. Vírus Computacionais 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

  13. Vírus Computacionais 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

  14. Vírus Computacionais 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

  15. 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?

  16. Vida Artificial O que é vida? • Espaço temporal: • 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

  17. 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

  18. 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

  19. Vida Artificial Capacidade derepresentaçã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

  20. 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

  21. Vida Artificial Capacidade deinteracçã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

  22. 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

  23. 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

  24. 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

  25. 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

  26. Conclusão

  27. 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

  28. 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

More Related