INTERNET E SEGURANÇA DOS DADOS Introdução a Computação e Engenharia de Software Profa. Cynthia Pinheiro Internet Quem controla a Internet? A principal razão pela qual a Internet funciona tão bem, deve-se ao fato de que ela não tem dono. A Internet, além de ser descentralizada, tem a vantagem de ser anárquica no que diz respeito às burocracias. Sua organização é feita a partir dos administradores das redes que a compõe e dos próprios utilizadores. 1
Internet O sucesso da Internet Tempo que as novas tecnologias levaram para atingir 50 milhões de utilizadores no mundo: Rádio: 38 anos Computador: 16 anos Televisão: 13 anos TV a cabo: 10 anos Internet: 04 anos Internet Tudo vai para a nuvem! 2
Internet O campo de segurança de redes lida com: Como os vilões podem atacar as redes Como podemos defender as redes contra ataques Como projetar arquiteturas que sejam imunes a ataques Internet A Internet não foi projetada com (muita) segurança: Visão original: um grupo de usuários mutuamente confiáveis conectados a uma rede transparente. Projetistas dos protocolos da Internet estão correndo atrás do prejuízo. Considerações sobre segurança em todas as camadas 3
(códigos maliciosos) São programas especificamente desenvolvidos para executar ações danosas e atividades maliciosas em um computador. Uma vez instalados, os malwares passam a ter acesso aos dados armazenados no computador e podem executar ações em nome dos usuários. A maioria se auto reproduz: a partir de um hospedeiro, cria cópias de si mesmo e busca por outras vítimas através da Internet. Tipos de (códigos maliciosos) Vírus: É um programa, ou parte de um programa, que se propaga inserindo cópias de si mesmo e tornando-se parte de outros programas e arquivos. Para que possa estar ativo e continuar a infecção, depende da execução do programa hospedeiro: para que seu computador seja infectado é preciso que um programa já infectado seja executado. Necessitam de uma interação do usuário (exemplo: abertura de anexo de e-mail). 4
Tipos de (códigos maliciosos) Worms: Programa capaz de se propagar automaticamente pelas redes, enviando cópias de si mesmo de computador para computador. São responsáveis por consumir muitos recursos e, como consequência, podem afetar o desempenho de redes e a utilização de computadores. Usuário pode estar executando uma aplicação em uma rede frágil para a qual o atacante pode enviar um worm que é recebido e executado sem interação com o usuário. Tipos de (códigos maliciosos) Cavalo de Tróia: Programa que, além de executar as funções para as quais foi aparentemente projetado, executa outras funções maliciosas e sem o conhecimento do usuário. Estes programas, geralmente, consistem de um único arquivo e necessitam ser explicitamente executados para que sejam instalados no computador. 5
Tipos de (códigos maliciosos) Spyware: Programa projetado para monitorar as atividades de um sistema e enviar as informações coletadas para terceiros. Keylogger: capaz de capturar e armazenar as teclas digitadas pelo usuário no teclado do computador. Screenlogger: capaz de armazenar a posição do cursor e a tela apresentada no monitor. Adware: projetado especificamente para apresentar propagandas. Tipos de (códigos maliciosos) Bot e Botnet: Bot é um programa com mecanismos de comunicação com o invasor que permitem que ele seja controlado remotamente. É capaz de se propagar automaticamente, explorando vulnerabilidades existentes em programas instalados em computadores. Um computador infectado por um bot costuma ser chamado de zumbi, pois pode ser controlado remotamente, sem o conhecimento do seu dono. 6
Tipos de (códigos maliciosos) Bot e Botnet: Botnet é uma rede formada por centenas ou milhares de computadores zumbis e que permite potencializar as ações danosas executadas pelos bots. O atacante que a controlar, além de usá-la para seus próprios ataques, também pode alugá-la para outras pessoas ou grupos que desejem que uma ação maliciosa específica seja executada. Tipos de (códigos maliciosos) Bot e Botnet: Algumas das ações maliciosas executadas por botnets: ataques de negação de serviço, propagação de códigos maliciosos (inclusive do próprio bot), coleta de informações de um grande número de computadores, envio de spam, camuflagem da identidade do atacante. 7
Tipos de (códigos maliciosos) Backdoor: Após incluído, o Backdoor é usado para assegurar o acesso futuro ao computador comprometido, permitindo que ele seja acessado remotamente. Porém, sem que haja necessidade de recorrer novamente aos métodos utilizados na realização da invasão ou infecção e, na maioria dos casos, sem que seja notado. Tipos de (códigos maliciosos) Rootkit: Conjunto de programas que permite esconder e assegurar a presença de um invasor ou de outro código malicioso em um computador comprometido. Pode ser usado para: remover evidências em arquivos de logs; instalar outros códigos maliciosos, como backdoors; esconder atividades e informações; mapear potenciais vulnerabilidades em outros computadores, por meio de varreduras na rede; capturar informações da rede onde o computador está localizado, pela interceptação de tráfego. 8
Qualquer serviço, computador ou rede que seja acessível via Internet pode ser alvo de um ataque, assim como qualquer computador com acesso à Internet pode participar de um ataque. Motivações: financeiras, ideológicas, comerciais. Tipos de Negação de Serviço (DoS e DDoS): Técnica pela qual um atacante utiliza um computador para tirar de operação um serviço, um computador ou uma rede conectada à Internet. Quando utilizada de forma coordenada e distribuída, usando um conjunto de computadores, recebe o nome de Negação de Serviço Distribuído (DDoS). O objetivo deste ataque é exaurir recursos e causar indisponibilidade ao alvo, fazendo com que todas as pessoas que dependem destes recursos sejam prejudicadas. 9
Tipos de Negação de Serviço (DoS e DDoS): Pode se dar por: envio de grande quantidade de requisições para um serviço, consumindo os recursos necessários ao seu funcionamento e impedindo que as requisições dos demais usuários sejam atendidas, geração de grande tráfego de dados para uma rede, ocupando toda a banda disponível e tornando indisponível o acesso a computadores ou serviços, exploração de vulnerabilidades em programas: podem fazer com que um determinado serviço fique inacessível. Tipos de Negação de Serviço Distribuída (DDoS): 10
Tipos de Interceptação de tráfego (Sniffing): Técnica que consiste em inspecionar os dados trafegados em redes de computadores, por meio do uso de programas específicos chamados sniffers. As informações capturadas são armazenadas na forma como trafegam, inclusive senhas. Tipos de Falsificação de e-mail (E-mail spoofing): Técnica que consiste em alterar campos do cabeçalho de um e-mail, de forma a aparentar que ele foi enviado de uma determinada origem quando, na verdade, foi enviado de outra. Esta técnica é possível devido a características do protocolo SMTP que permitem que campos do cabeçalho, como "From: e "Reply-To" sejam falsificados. 11
Tipos de Falsificação de e-mail (E-mail spoofing): Exemplos de e-mails com campos falsificados são aqueles recebidos como sendo: de alguém conhecido, solicitando que você clique em um link ou execute um arquivo anexo; do seu banco, solicitando que você siga um link fornecido na própria mensagem e informe dados da sua conta bancária; do administrador do serviço de e-mail que você utiliza, solicitando informações pessoais e ameaçando bloquear a sua conta caso você não as envie. Tipos de Varredura em Redes (Scan): Técnica que consiste em efetuar buscas minuciosas em redes, com o objetivo de identificar computadores ativos e coletar informações sobre eles (exemplo: serviços disponibilizados e programas instalados). Com base nas informações coletadas, é possível associar possíveis vulnerabilidades aos serviços disponibilizados e aos programas instalados nos computadores ativos detectados. 12
Tipos de Desfiguração de página (Defacement) Consiste em alterar o conteúdo da página Web de um site: invade-se o servidor onde a aplicação Web está hospedada e altera-se diretamente os arquivos que compõem o site. Isso se dá através da exploração de vulnerabilidades: De erros da aplicação Web; Do servidor de aplicação Web; Da linguagem de programação ou dos pacotes utilizados no desenvolvimento da aplicação Web; das senhas de acesso usadas para administração remota. Os atacantes podem ser: De origem externa: Atacante localizado fora da rede interna e localizado fisicamente fora do ambiente. De origem interna: Atacante localizado na rede interna; Atacante com acesso físico às instalações. 13
Mecanismos de Defesa (ataques de origem externa): Mecanismo de autenticação forte; Sistemas e aplicações atualizados com as mais recentes correções; Utilização de Firewalls; Utilização de ferramentas de monitoramento e auditoria (IDS, Antivírus etc.). Mecanismos de Defesa (ataques de origem interna): Proteção do ambiente contra acesso indevido; Elaboração de uma política de segurança; Utilização de criptografia na comunicação interna; Definição dos direitos de acesso por usuários ou grupos de usuários. 14
Hackers x Crackers São experts em computadores, pessoas que possuem habilidades extraordinárias em lidar com sistemas e programações, e que dedicam muito tempo de suas vidas a fim de estudar tais conteúdos. O que os difere é o uso que fazem destes conhecimentos. Hackers x Crackers Hackers trabalham em colaboração com desenvolvedores de software, em uma ação que visa eliminar possíveis falhas de segurança nestas ferramentas. Enquanto Crackers possuem a intenção de invadir e sabotar sistemas, quase sempre objetivando a captação de dados passíveis de lhes render lucro. 15
Bibliografia Esta aula foi retirada dos seguintes livros/apostilas: Cartilha de Segurança para a Internet. Em https://cartilha.cert.br/seguranca/, acessado em 04/04/2017. 16