Prévia do material em texto
G RU PO SER ED U CACIO N AL PENTESTING E SOFTWARE DE CÓDIGO MALICIOSO PEN TESTIN G E SO FTW AR E D E CÓ D IG O M ALICIO SO Autores: Luciano dos Santos Viana; Edinilson da Silva Vida. Organizadora: Aline Ferreira Barbosa. Autores: Luciano dos Santos Viana; Edinilson da Silva Vida. Organizadora: Aline Ferreira Barbosa. PENTESTING E SOFTWARE DE CÓDIGO MALICIOSO Capa para impressão_2022 1,3Capa para impressão_2022 1,3 26/09/2022 10:18:2526/09/2022 10:18:25 Pentesting e software de código malicioso © by Ser Educacional Todos os direitos reservados. Nenhuma parte desta publicação poderá ser reproduzida ou transmitida de qualquer modo ou por qualquer outro meio, eletrônico ou mecânico, incluindo fotocópia, gravação ou qualquer outro tipo de sistema de armazenamento e transmissão de informação, sem prévia autorização, por escrito, do Grupo Ser Educacional. Imagens e Ícones: ©Shutterstock, ©Freepik, ©Unsplash. Diretor de EAD: Enzo Moreira. Gerente de design instrucional: Paulo Kazuo Kato. Coordenadora de projetos EAD: Jennifer dos Santos Sousa. Equipe de Designers Instrucionais: Gabriela Falcão; José Carlos Mello; Lara Salviano; Leide Rúbia; Márcia Gouveia; Mariana Fernandes; Mônica Oliveira e Talita Bruto. Equipe de Revisores: Camila Taís da Silva; Isis de Paula Oliveira; José Felipe Soares; Nomager Fabiolo Nunes. Equipe de Designers gráficos: Bruna Helena Ferreira; Danielle Almeida; Jonas Fragoso; Lucas Amaral, Sabrina Guimarães, Sérgio Ramos e Rafael Carvalho. Ilustrador: João Henrique Martins. Viana, Luciano dos Santos; Vida, Edinilson da Silva. Organizadora: Barbosa, Aline Ferreira. Pentesting e Software de Código Malicioso: Recife: Grupo Ser Educacional - 2022. 155 p.: pdf ISBN:978-65-81507-91-6 1. segurança 2. pentest 3. malware. Grupo Ser Educacional Rua Treze de Maio, 254 - Santo Amaro CEP: 50100-160, Recife - PE PABX: (81) 3413-4611 E-mail: sereducacional@sereducacional.com Iconografia Estes ícones irão aparecer ao longo de sua leitura: ACESSE Links que complementam o contéudo. OBJETIVO Descrição do conteúdo abordado. IMPORTANTE Informações importantes que merecem atenção. OBSERVAÇÃO Nota sobre uma informação. PALAVRAS DO PROFESSOR/AUTOR Nota pessoal e particular do autor. PODCAST Recomendação de podcasts. REFLITA Convite a reflexão sobre um determinado texto. RESUMINDO Um resumo sobre o que foi visto no conteúdo. SAIBA MAIS Informações extras sobre o conteúdo. SINTETIZANDO Uma síntese sobre o conteúdo estudado. VOCÊ SABIA? Informações complementares. ASSISTA Recomendação de vídeos e videoaulas. ATENÇÃO Informações importantes que merecem maior atenção. CURIOSIDADES Informações interessantes e relevantes. CONTEXTUALIZANDO Contextualização sobre o tema abordado. DEFINIÇÃO Definição sobre o tema abordado. DICA Dicas interessantes sobre o tema abordado. EXEMPLIFICANDO Exemplos e explicações para melhor absorção do tema. EXEMPLO Exemplos sobre o tema abordado. FIQUE DE OLHO Informações que merecem relevância. SUMÁRIO UNIDADE 1 Conceitos básicos sobre segurança da informação � � � � � � � � � � � � � � 13 Dimensões de um sistema de informação � � � � � � � � � � � � � � � � � � � � � � � � � �14 Vulnerabilidade, ameaça e risco à segurança da informação � � � � � � � � �15 Visão geral sobre testes de invasão � � � � � � � � � � � � � � � � � � � � � � � � � � � � � 21 Black Box � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � 23 Gray Box � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � 24 White Box � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � 24 Hacking Ético � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � 25 Conhecimentos de um hacker � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � 26 DDoS � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � 32 Man-in-the-middle � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � 32 Sniffer � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � �33 Phishing � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � 34 Crimes cibernéticos � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � 35 Incidentes de segurança � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � 37 UNIDADE 2 Tipos de pentest � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � �45 Black Box � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � 46 White Box � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � 46 Gray Box � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � 47 Fases do ataque � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � 49 Reconhecimento � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � 49 Enumeração � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � 52 Escaneamento � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � 52 Análise de vulnerabilidade � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � 55 Exploração � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � 57 Pós-exploração � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � 60 Apagando rastros � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � 62 Relatório � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � 62 Softwares utilizados em um teste de invasão � � � � � � � � � � � � � � � � � � � � 63 Nmap � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � 63 Maltego � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � 65 theHarvester � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � 67 Metasploit � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � 68 Burp Suite � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � 69 BeEF � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � �71 Nikto � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � 72 DNS Enum � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � 73 GoLismero � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � 74 Cain e Abel � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � 75 Sparta � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � 76 Wireshark � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � 76 P0f � � � � � � � � � � � � � � � � � � � � � � �� � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � 77 WPScan � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � 79 John the Ripper � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � 79 UNIDADE 3 Ataques de programas maliciosos � � � � � � � � � � � � � � � � � � � � � � � � � � � � � �85 Ataques passivos � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � 87 Ataques ativos � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � 88 Ameaças da internet � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � 89 Firewall e controle de acesso � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � 92 Vírus de computador � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � 94 Vermes de computador (worms) � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � 99 Cavalo de Troia (trojan horse) � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � 104 Bombas lógicas � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � 106 Outros tipos de programas maliciosos � � � � � � � � � � � � � � � � � � � � � � � � �108 Entradas clandestinas (backdoors) � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � 109 Botnets � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � �110 Rootkit � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � 111 Spyware � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � 112 UNIDADE 4 Medidas Preventivas de Segurança Contra Softwares de Código Malicioso � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � 117 Firewall � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � 124 Redes privadas virtuais � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � 128 Proxy � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � 130 AntiSpam � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � 131 Backup e redundância de dados � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � 132 Sigilo � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � 136 Autenticação � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � �137 Navegação privada � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � 140 Ferramentas e técnicas de auditoria de tecnologia de informação � 140 Apresentação Olá, aluno(a)! Sabemos que, diariamente, aparecem novas falhas e vulnerabilida- des em diversos sistemas, serviços ou até mesmo sistemas opera- cionais – nada é completamente seguro. Estamos em um mundo de internet das coisas, em que tudo é interligado, todos os dispositivos conversam entre si, cada um com um firmware ou sistema opera- cional diferente e cada um com sua vulnerabilidade – como disse, e repito mais uma vez, nada é completamente seguro. O Pentesting vem com o intuito de apresentar para as empre- sas tais vulnerabilidades – afinal, normalmente, elas não têm o co- nhecimento da existência dessas falhas em sua infraestrutura. Além disso, diversas formas de ameaças tornam um sistema vulnerável, ou seja, a presença de software de código malicioso influencia nos aspectos de segurança de sistemas. O objetivo deste material é preparar você para entender o que é um teste de invasão e suas etapas, assim como quais possibilidades de códigos maliciosos podem surgir nos sistemas computacionais. Na prática, é um desafio diário, contando cada dia uma novidade ou uma vulnerabilidade diferente, passiva de ser explorada. Sendo as- sim, convidamos você a descobrir um pouco mais sobre esse mundo de desafios e a adquirir ainda mais conhecimento sobre Pentesting e Código de Software Malicioso. Autoria Luciano dos Santos Viana É especialista em Segurança da Informação, Pentester e Forensic In- vestigator. Graduado em Sistemas de Informação pela Faculdade Anhanguera de Belo Horizonte (2012 - 2016). Edinilson da Silva Vida Éespecialista em Planejamento, Implementação e Gestão da Educa- ção à Distância pela Universidade Federal Fluminense – UFF (2019) e em Engenharia de Software pelo Centro Universitário de Patos de Minas – UNIPAM (2013). É graduado em Sistemas de Informação também pelo UNIPAM (2010). Atua na área de TI há mais de 10 anos, com destaque para o suporte a sistemas e infraestrutura de TI, segurança da informação, manu- tenção e desenvolvimento de websites e aplicativos para disposi- tivos móveis, análise e especificação de requisitos, modelagem de dados e de diagramas UML e contagem de pontos de função. Além disso, ele também atua como professor, tutor e conteudista de cursos de graduação e pós-graduação em diversas instituições de ensino superior, nas modalidades presencial e educação a distância. Curriculo Lattes Curriculo Lattes Organizadora Aline Ferreira Barbosa É Doutoranda em Engenharia da Computação pela Universidade de Pernambuco (2019-2023), Mestre em Engenharia da Computação pela Universidade de Pernambuco (2019) e Graduada em Licencia- tura em Computação pela Universidade de Pernambuco (2014). Atuou como Diretora Presidente na empresa TEC Jr (Tecnologia, Educação e Consultoria Júnior) - empresa júnior do curso de Licen- ciatura em Computação vinculada a Universidade de Pernambuco. Tem artigos científicos em eventos brasileiros importantes na sua área de pesquisa, tais como SBGames, WIE, WEI, SQBS, WER. Possui experiência em lecionar diferentes disciplinas na área de computação, tais como: Programação, Segurança em Redes de Computadores, Engenharia de Requisito, Engenharia de Software e Gestão de Projetos de Software. Curriculo Lattes UN ID AD E 1 Pentesting e Software de Código Malicioso Objetivos 1. Apresentar os conceitos básicos de segurança da informação. 2. Introduzir os tipos e processos de teste de invasão. 3. Introduzir conceitos sobre crimes cibernéticos. 12 Introdução Olá, caro(a) aluno(a)! Sabemos que a demanda de informações cresce a cada dia, a exem- plo das empresas que necessitam adotar sistemas de informações, seja para auxiliar a gerência dos negócios, seja para o assessora- mento durante a tomada de decisões. Isso confirma o fato de que a informação armazenada é um dos ativos fundamentais para qual- quer empresa. Por conseguinte, o que gera um fator decisivo para o êxito de qualquer negócio é o desenvolvimento de um conjunto de práticas em relação à proteção e à correta administração dos siste- mas que armazenam essas informações. Nesse sentido, podemos ver que a implementação de um con- junto adequado de estratégias de segurança pode contribuir para evitar maiores impactos e danos às organizações ou até mesmo para a garantia de proteção de dados pessoais. Especificamente, o pro- fissional desta área, o qual deve conhecer os conceitos de segurança digital e os mecanismos técnicos e de gerenciamento para proteção da informação. Um programa de segurança pode ter diversos objetivos, mas os princípios mais importantes em todos eles são a confiabilidade, a integridade e a disponibilidade. Sendo assim, abordaremos, neste material, esses conceitos básicos e seus significados para um sis- tema de informação, como eles são providos por diferentes meca- nismos e como a ausência de estratégias de segurança pode afetar negativamente um ambiente. Porfim, iniciaremos uma explanação sobre as fases a serem consideradas em um teste de invasão. Preparado(a) para iniciar esta jornada de estudos? Vamos lá! 13 Conceitos básicos sobre segurança da informação Com a popularização da internet, o volume dos dados aumentou exponencialmente, necessitando cada vez mais de técnicas de dife- rentes tipos para o cuidado e a proteção dos fluxos e meios de arma- zenamento e acesso à informação. Segundo o autor Armando Kolbe Júnior, no livro Sistemas de segurança da informação na era do conhecimento (2017, p. 46), “as informações, além de darem suporte à tomada de decisões, atuam como um importante fator de motivação das equipes”. Diante dos benefícios que a informação rápida, correta e disponível pode pro- porcionar às organizações, é clara a necessidade de garantir que es- tas estejam protegidas. A computação e a internet foram precursoras deste alto cres- cimento em menos de 40 anos. A arquitetura de aplicativos mudou de um cenário centralizado, com informações locais, para aplica- ções acessadas diretamente pelos navegadores, armazenados em servidores com alto poder de processamento e disponibilidade. O aumento de armazenamento e integração de informações de diferentes fontes tem sido o desafio e o objeto de estudo dos pro- fissionais da área. A proteção da informação para um indivíduo ou uma organização exige estratégia, ferramentas e técnicas de con- trole de forma confiável, consistente e eficaz. Sendo assim, podemos dizer que a informação é o conjunto de dados que agrega valor para um indivíduo ou uma organização, com capacidade de armazenamento ou transferência, podendo ser utilizada pelo usuário para um objetivo específico. Já a segurança da informação trata de medidas que garan- tem a proteção efetiva, as quais devem estar claramente descritas na política global da organização, delineando as responsabilida- des de cada grau da hierarquia e o grau de delegação de autoridade. Segurança da informação, afinal, objetiva proteger os dados, com a finalidade de preservar os valores para uma organização ou um indivíduo. 14 Dimensões de um sistema de informação As dimensões de um sistema de informação estão relacionadas ao desenvolvimento de ações, para garantir confidencialidade, inte- gridade e disponibilidade, no intuito de assegurar a proteção das informações. Vamos detalhar melhor esses conceitos, que são os alicerces da se- gurança da informação, segundo Adriana Beal no livro Segurança da informação: princípios e melhores práticas para a proteção dos ativos de informação nas organizações, de 2008 (p. 17): A confidencialidade garante que somente pessoas autorizadas pos- sam acessar as informações. A integridade baseia-se em garantir que a informação não será al- terada após o seu armazenamento. E a disponibilidade garante que as informações estarão sempre dis- poníveis para as pessoas que possuem autorização de acesso a elas. Os sistemas de informação estão estruturados em três di- mensões: pessoas, tecnologia e organização. Veja no quadro 1, a seguir, a definição desses elementos. Quadro 1 - Dimensões de um sistema de informação Fonte: KOLBE JUNIOR, 2017, p. 46 (adaptado). É notório que a segurança da informação depende bastante da tecnologia para existir, mas devemos lembrar que esse é um pro- DEFINIÇÃO 15 cesso que não envolve somente equipamentos. Afinal, as máquinas precisam ser comandadas por pessoas e, além disso, todas as ações e operações são executadas por indivíduos. Ainda assim, alguns au- tores concordam que as pessoas são o “elo frágil” da segurança da informação, como é o caso de Adriana Beal (2008, p. 71) e Michele da Costa Galvão (2015, p. 99). Será que podemos concordar com esta afirmação? Bom, não é difícil conhecer alguém que, ao instalar algum programa no com- putador, acabou deixando-o infectado com algum vírus, ou que caiu em algum golpe e passou informações pessoais, como senhas, por telefone. Enfim, a verdade é que, quando analisamos falhas de se- gurança em ambientes com alta tecnologia, a falha humana nor- malmente está envolvida. Portanto, podemos afirmar que a segu- rança da informação deve se aplicar a todo ativo da organização. O conceito de ativo, segundo Michele da Costa Galvão (2015), com- preende qualquer parte que compõe a estrutura da organização ou que possui valor para ela, ou seja, qualquer componente, tecnológi- co ou humano, que auxilia em um ou mais procedimentos de negó- cio de uma organização. Assim, um ativo de informação constitui-se pela informação e to- das as coisas e seres que o auxiliam. Vulnerabilidade, ameaça e risco à segurança da informação Existem diversas vulnerabilidades ou pontos fracos de um ativo de informação que podem prejudicar ou dificultar, intencionalmen- te ou não, a disponibilidade, a confidencialidade ou a integridade, como as falhas no projeto, na implementação ou na configuração de determinado software ou do sistema operacional, causando ameaças DEFINIÇÃO 16 à segurança. Para dar continuidade, precisamos definir alguns conceitos mais detalhadamente. As ameaças são um ataque potencial a um ativo da informação, isto é, um agente externo que, aproveitando a vulnerabilidade, poderá quebrar um ou mais aspectos básicos da segurança da informação. O risco, por sua vez, denota as prováveis perdas, que têm possibilidade de decorrer desse contexto. Veja a seguir uma breve explicação sobre estes termos. Quadro 2 - Vulnerabilidade, ameaça e risco VULNERABILIDADE AMEAÇA RISCO Pontos fracos de um sistema, que podem servir de abertura pela qual um elemento externo acessa um ativo. O elemento externo propriamente dito, que explora as oportunidades oferecidas pela vulnerabilidade e, de modo intencional ou não, danifica ou prejudica o ativo. Perdas e danos potenciais, resultantes da interação da ameaça com a vulnerabilidade e, consequentemente, com o ativo. Fonte: o autor (2019). De acordo com Adriana Beal a ameaça pode ser definida como “um acontecimento acidental ou proposital causado por um agen- te, que pode afetar um ambiente, sistema ou ativo de informação” (2008, p. 14). Sendo assim, podemos pensar em ameaças de duas maneiras: • ameaças acidentais – nesse tipo, poderíamos incluir as falhas de hardware, desastres naturais, erros de programação; • ameaças propositais – podem ser entendidas por roubos, in- vasões, fraudes etc. As vulnerabilidades são pontos nos quais o sistema está sus- ceptível a ataques. Nesse contexto, podemos incluir as fragilidades e erros que o sistema possui. Quando nos referimos a sistema, pode 17 ser um erro no procedimento aplicado e até mesmo a configuração incorreta dos aplicativos de segurança, de maneira proposital ou não, gerando como resultado uma informação não confiável. Segundo o autor Maurício Rocha Lyra (2008), essas vulne- rabilidades poderão ser exploradas ou não, sendo possível que um ativo da informação apresente um ponto fraco, que nunca será efe- tivamente explorado. Alguns tipos de vulnerabilidades conhecidas, atualmente, são: físicas (a falta de recursos para lidar com possíveis incêndios no local, por exemplo); relacionadas a hardware ou software (erros durante a instalação); mídias (perda ou danificação de materiais); ou ainda humanas (compartilhamento de informações confiden- ciais, falta de treinamento, erros, roubo, vandalismo etc.). A todo o momento, o sistema de informação está sujeito a ris- cos, já que o tempo todo nos deparamos com novas vulnerabilidades e ameaças. A análise dos riscos é uma importante maneira de reali- zar o levantamento dessas ameaças, vulnerabilidades e impactos a que os ativos de informação estão sujeitos. A melhor forma de minimizar os riscos é cercar o ambiente de informação, elaborando e seguindo políticas de segurança. De- vemos lembrar que conseguir segurança absoluta é praticamente impossível, e que o investimento em segurança de informação tem um alto custo. Hoje, mais do quenunca, o sistema de informação está co- nectado a redes de telecomunicações, o que faz com que os sistemas de informação em diferentes lugares estejam interconectados. Por conseguinte, o risco de acesso não autorizado aumenta, ocorrendo abuso e/ou fraude em qualquer ponto de acesso. O ataque nada mais é do que o acesso ou uso não autorizado de um computador ou programa. É um evento decorrente da explo- ração de uma vulnerabilidade por uma ameaça, segundo Adriana Beal (2008). Há ataques que não interferem no conteúdo do recurso que foi atingido, o que denominamos ataque passivo – por exemplo, quando o ataque foi realizado apenas para a observação e conhe- cimento de informações. Contudo, quando esse ataque prejudica o 18 conteúdo e modifica, elimina ou gera informações falsas, ele é cha- mado de ataque ativo. Vamos tomar como exemplo o assunto das senhas. Quanto mais complicadas forem, mais difícil será a descoberta delas. Entre- tanto, se o responsável cria uma única senha para todos os sistemas, visando a facilitar a memorização, gera também uma vulnerabili- dade, que pode afetar todos os sistemas envolvidos. De tal modo, anotar a senha complexa em um papel faz com que a vulnerabili- dade continue existindo, já que outras pessoas podem ter acesso a esse papel. Durante o ciclo de vida da informação, ela pode passar por al- gumas situações de risco e até mesmo ameaças. O não cumprimento de determinados objetivos de segurança pode levar a sérias conse- quências para a organização. Demonstramos algumas relações en- tre objetivos de segurança e as respectivas consequências. Veja esta relação de causa/efeito no quadro a seguir. Quadro 3 - Objetivos de segurança da informação OBJETIVO DE SEGURANÇA CAUSA E CONSEQUÊNCIA Perda de confiabilidade Causa: divulgação das informa- ções de forma não autorizada. Consequências: comprometi- mento da credibilidade, emba- raço ou ação legal contra a or- ganização. 19 Perda de integridade Causa: modificações não auto- rizadas feitas de forma aciden- tal ou intencional. Além disso, a violação da integridade pode ser o primeiro passo para um ataque com sucesso à disponi- bilidade ou confidencialidade da informação. Consequências: imprecisão das informações; fraude; tomada de decisão errada; reduz a garantia da informação. Perda de disponibilidade Causa: se as informações não estiverem disponíveis para o usuário, a missão da organiza- ção pode ser afetada. Consequências: perda de pro- dutividade por parte dos usuá- rios; impedir que os usuários executem suas atividades nor- malmente. Fonte: STONEBURNER; GOGUEN; FERINGA, 2004, p. 25. (Adaptado). Identificar os riscos é importante para saber quais ameaças e/ou vulnerabilidades podem ser aplicadas nos sistemas de infor- mação envolvidos, e o impacto que as perdas de confidencialidade, integridade e disponibilidade podem causar aos ativos. A resposta à prática da engenharia social nas empresas é o profissionalismo. De acordo com Edison Fontes (2006), quando te- mos consciência do valor da informação, temos o dever de protegê- -la adequadamente e agir conforme os procedimentos de seguran- ça. Por outro lado, também é uma obrigação da empresa preparar, por meio de reuniões, conferências e diferentes capacitações, para que seus funcionários se protejam dessa prática que, cada vez mais, 20 conta com pessoas especializadas. A engenharia social é uma das estratégias mais utilizadas por inva- sores, pois independe de tecnologias ou mecanismos computacio- nais avançados. A engenharia social é um conjunto de procedimen- tos e ações utilizados para adquirir informações de uma organização ou de uma pessoa por meio de contatos falsos sem o uso da força, do arrombamento físico ou de qualquer brutalidade, como afirma Edi- son Fontes no livro Segurança da informação: o usuário faz a diferença, de 2006. Os engenheiros sociais exploram a ingenuidade ou a ignorân- cia de usuários para obter informações confidenciais, como senhas, informações pessoais, tipos de equipamento de segurança utiliza- dos ou outros dados que podem comprometer a segurança da orga- nização. Edison Fontes (2006, p. 120) exemplifica a forma como os engenheiros sociais agem e buscam informações da organização usando as pessoas. Veja a seguir alguns comportamentos identifi- cáveis dos engenheiros sociais. • Falam com conhecimento: nesses casos, o invasor demonstra conhecimento sobre informações da empresa ou de atividades dela para tentar enganar e coletar informações sigilosas. • Adquirem a confiança do interlocutor: em alguns casos, o in- vasor contata a vítima várias vezes, tentando se aproximar e adquirir intimidade para, em seguida, coletar as informações que busca. • Prestam favores: nesses casos, o invasor, quando pretende algo, mostra-se prestativo em situações de dificuldade da ví- tima ou simula alguma dificuldade para oferecer ajuda. Nessa forma de ameaça, é muito comum o uso do telefone e, nessas CURIOSIDADE 21 situações, uma forma de prevenção é confirmar o interlocutor ou evitar repassar informações sem ter a certeza com quem se está falando. Visão geral sobre testes de invasão Sabemos que a tecnologia vem avançando diariamente: carros au- tônomos, IoT, smartphones, dentre outros, e juntamente à evolu- ção da tecnologia vêm as falhas e as vulnerabilidades. Não é segredo nenhum que sistemas são passíveis a falhas. Diariamente vemos zero-days e novas CVEs sobre falhas encontra- das; nada está completamente seguro, mas as organizações não sabem disso ou simplesmente não buscam conhecer o quão falhas suas redes e sistemas estão quanto à segurança da informação. Zero-days são vulnerabilidades recém encontradas por crimi- nosos virtuais e que são exploradas antes mesmo que os antivírus ou fabricantes de softwares possam ter conhecimento e desenvolver alguma correção para a respectiva vulnerabilidade. CVE ou Common Vulnerabilities and Exposures é uma base de dados de vulnerabilidades contendo seu respectivo número de iden- tificação, descrição e referência pública para essas vulnerabilidades de segurança da informação, deixando-as publicamente conheci- das. As entradas CVE são usadas em várias ferramentas e serviços de segurança cibernética de todo o mundo. Recursos mal configurados, usuários com permissões des- necessárias, senhas fracas, falta de atualização de softwares e redes desprotegidas são as principais portas de entrada que permitem que atacantes capturem dados sigilosos e importantes. Além de tudo, ainda existe o fator humano. Todo ser humano é passível a falhas, a confiar demais ou a ser facilmente enganado por criminosos, que conseguem ganhar vantagem em cima de tais falhas, utilizando-se ou não da engenharia social. Para muitas empresas, o simples fato de ter um antivírus ou um firewall é motivo de segurança, mas, às vezes, a segurança de tais corporações é somente um sentimento, enquanto na prática são facilmente reconhecidas como alvo. 22 Diariamente vemos notícias de roubos de dados, ataques e mais ataques de várias formas em endpoints e servidores, onde cri- minosos conseguem roubar tudo, ou então deixar endpoints e ser- vidores ilegíveis a fim de exigir resgate pelos dados (desde arqui- vos pessoais, senhas e informações financeiras até bancos de dados completos). Não importa o quanto a equipe de segurança da infor- mação se empenhe para combater tais incidentes, eles ainda acon- tecem diariamente. Tendo isso como base, trazemos neste material uma visão geral de um teste de invasão, como funciona e o objetivo. O teste de invasão é um serviço legalizado, extremamente necessário para empresas que precisam proteger dados críticos, e se utiliza de uma série de operações automatizadas e manuais, além de, geralmente, ter como alvo servidores, endpoints de rede, redes wireless, dispositivos móveis, webservices, bem como outras áreas de exposição como aplicações e códigos. Michele Galvão (2015, p. 20) conceitua como hacker qualquerpes- soa capaz de acessar, criar ou modificar sistemas, a fim de inserir novas funções ou alterar antigas. Mas, na literatura, o termo denota um programador habilidoso que usa da sua desenvoltura para pro- teger e ampliar as barreiras de proteção da segurança da informação nas organizações. Para tanto, pode-se fazer uma reflexão sobre a pessoa hu- mana capaz de executar e desenvolver os códigos maliciosos, pois a máquina precisa ser comandada. Nessa linha, essa pessoa é cha- mada de cracker, termo usado para designar o indivíduo que pratica a quebra de um sistema de segurança de forma ilegal ou sem ética. Veja no quadro 4 algumas diferenças entre hacker e cracker. DEFINIÇÃO 23 Quadro 4 - Hacker e cracker HACKER CRACKER Especialista em computação que lança mão de seu conhecimento técnico para resolver problemas. Pessoa que, ilegalmente, acessa o computador ou a rede de outra pessoa ou de uma organização. Seu objetivo é violar a segurança do computador. Não prejudica os dados intencionalmente. Prejudica os dados intencionalmente. Fonte: o autor (2019). O teste de invasão é responsável pela detecção minuciosa por meio de técnicas de hackers éticos contratados para realizá-la sem o intuito de prejudicar a empresa ou praticar roubo de informações. O hacker ético é o profissional legalmente responsável pela execução dos testes de invasão. Tem como objetivo analisar minuciosamente a segurança de uma corporação ou determinado sistema, buscando falhas e vulnerabilidades com o intuito de explorá-las e apresentá- -las como forma de relatório aos gestores para que possam corrigi- -las mais rapidamente. As falhas encontradas podem ser desde um sistema opera- cional desatualizado até uma grande falha em um banco de dados. Existem três tipos de teste de invasão, os quais veremos a seguir. Black Box O Black Box é o mais completo e difícil. Nesse teste, o atacante con- tratado não tem informação nenhuma da corporação que vai atacar, seja interna ou externamente. Vemos que, em ataques reais, o hacker não possui todas as informações referentes à infraestrutura do alvo. Por isso, ele vai utilizar uma série de medidas diferentes para encontrar as fraque- zas e vulnerabilidades, explorá-las e conseguir acesso aos dados e informações. Ou seja, nesse tipo de serviço nenhuma informação 24 é passada sobre procedimentos internos, dados de rede, usuários ou senhas e, como resultado, leva mais tempo para ser executado e mais custo, uma vez que exige mais esforço do atacante. O benefício é que a empresa adquire uma visão mais próxima possível de como um verdadeiro criminoso enxerga a empresa e quais falhas ele pode efetivamente se aproveitar e explorar. O Black Box é indicado para empresas que possuem uma segu- rança madura, uma equipe de segurança da informação preparada e capacitada para agir em caso de um incidente desse grau. Isto é, bem consolidada, com processos, equipe e tecnologias em sintonia. Esse tipo de teste auxilia na identificação de fraquezas e vulnerabi- lidades, que ainda existem na rede, complementando a segurança e, de fato, colocando-a à prova para melhoria contínua da gestão e dos processos. Gray Box O teste Gray Box é uma combinação do Black Box com o White Box. Nesse teste, o atacante tem um conhecimento limitado da infraes- trutura interna ou externa do cliente, seja apenas um host, IP ou um serviço que roda ali dentro. Esse tipo de teste pode reduzir o tempo do atacante e até mesmo o custo do processo. O Gray Box pode ser bastante útil quando a corporação deseja ter um conhecimento real de como um atacante visualiza determi- nadas partes da infraestrutura. White Box No teste White Box, o atacante possui todas as informações referentes ao alvo, seja internamente ou externamente. Esse teste é indicado para empresas que estão em processo de conclusão de infraestrutu- ra de segurança da informação, visto que falhas e vulnerabilidades são mais bem identificadas para que as correções possam ser ainda mais rápidas e, ao concluir, a infraestrutura esteja mais segura com suas soluções atualizadas e suas falhas corrigidas. 25 O White Box é um teste mais rápido e de menor agressividade, demanda menos tempo e pode sair mais barato para as corporações. Esse serviço pode ser comparado com a análise de vulnerabilidade, porém de uma forma mais completa. Além dos tipos de testes, existem, ainda, as fases de um teste de invasão, que você conhecerá em outra oportunidade de estudos. Hacking Ético Quando falamos em hacking ético, frisamos no ético. Ser ético é quando algo segue um padrão específico, politicamente correto, ou seja, segue regras rigidamente. Tudo que o hacker ético faz está dentro desse conjunto de regras e, como tudo em nossa vida existe ética, no hacking não é diferente. No entanto, quando mencionamos a palavra “hacker”, ainda não se tem uma boa visão. Existem dois tipos de hackers: os black hat, que são os responsáveis por roubar dados, tirar serviços do ar, levar vantagens em cima de tudo, além de buscar novas falhas para cada vez prejudicar mais pessoas; e os white hat, que são os éticos, responsáveis por fazer uma análise de vulnerabilidade, teste de invasão e cuidar da proteção de uma em- presa. Como forma de observação, deixamos aqui explicado que os termos coloristas black e white, apesar de mundialmente reconhecidos, res- pectivamente, para distinguir uma atitude não ética de uma atitude ética, não devem ser lidos, aqui, como nomenclaturas racistas e/ou separatistas. IMPORTANTE 26 Conhecimentos de um hacker O hacker é um profissional extremamente inteligente, que deve ser capaz de resolver problemas e saber tudo sobre sistemas operacio- nais, tais como Linux e Windows, que são os sistemas mais usados atualmente. Sistemas operacionais são aqueles programas que têm como função fazer uma interface de comunicação amigável entre nós e toda a parte física do computador. Não existe sistema operacional melhor ou pior, existe o que você se adapta melhor. No caso dos hac- kers, o sistema operacional mais usado é o Linux. Existem várias dis- tribuições Linux, mas os hackers procuram sempre as que, de ante- mão, vêm com ferramentas nativas para serem usadas, reduzindo, assim, não só o tempo na instalação de ferramentas, mas também os testes de funcionalidade etc. Um dos mais famosos entre os hac- kers é o Kali Linux, referência em ferramentas para anonimato, pré e pós exploração, elevação de usuário, além de vários exploits. O Kali Linux é chamado de a distro dos hackers por conta do seu público-alvo serem profissionais de segurança da informação ou simpatizantes, que constantemente estão testando sistemas de segurança e redes para aprimorá-los e deixá-los, cada vez mais, se- guros. Basicamente estão hackeando serviços, sistemas operacio- nais ou até mesmo sites, usando ferramentas que, muitas vezes, o Kali disponibiliza por padrão em sua instalação, fazendo com que você gaste menos tempo instalando e configurando ferramentas do que as usando. Assim sendo, facilmente se alcança o ideal de pro- dutividade. Uma distribuição Linux (geralmente abreviada como distro) é um sistema operativo ou sistema operacional criado a partir de uma co- leção de softwares, com o uso do núcleo Linux, um sistema gestor de pacotes, e um repositório de programas. SAIBA MAIS 27 Além de sistemas operacionais, os hackers têm como habili- dade principal a programação, linguagens antigas ou novas como, por exemplo, C, C++, C#, PHP, Python, dentre outras, como lingua- gens que são usadas para fazer scripts ou exploits para explorar falhas e vulnerabilidades. Dentre as mais usadas estão o Python. O Python é uma lingua- gem muito usada no meio dos hackers, pois é possível desenvolver diversas coisas com ele, desde scripts até exploits robustos para ex- plorar vulnerabilidades encontradas. Os hackers também têm um amplo conhecimento em redes de computadores e seus protocolos TCP/IP. Protocolo funciona comose fosse uma linguagem. As máquinas, para se comunicarem em uma rede ou na internet, precisam usar a mesma linguagem. Quando dois ou mais computadores são interligados, seja por meio de cabos ou redes sem fio, só conseguem se comunicar se ambas estiverem usando o mesmo protocolo. O protocolo definido como protocolo padrão é o TCP/IP, que é usado no mundo pelo tráfego de redes in- ternas ou externas (internet). O TCP/IP não é somente um protoco- lo, é uma família, um grupo de protocolos, que foi desenvolvido na década de 60 pela DARPA (Defense Advanced Research Projects Agency) e foi especificado oficialmente em 1973. Os líderes do projeto foram Vinton Gray Cerf e Robert Elliot Kahn. O objetivo da DARPA foi criar uma rede onde computadores pudes- sem se comunicar, mas que fossem totalmente tolerantes a falhas. Caso algum dos seus servidores fosse atacado, a comunicação não poderia ser perdida, ou seja, se a comunicação entre servidores es- tava sendo feita por meio dessa linha, ela poderia ter um caminho alternativo para que a mensagem pudesse ser entregue. Em 1983, surgiu um modelo de comunicação chamado OSI (Open System Interconnection). Foi o modelo criado como referência CURIOSIDADE 28 para ser adotado por todas as empresas que fossem criar dispositi- vos de comunicação em geral. Quando o modelo OSI foi terminado, o modelo TCP/IP já havia ganhado espaço há aproximadamente 15 anos no mercado, sendo utilizado na maioria dos dispositivos. Por esse motivo, e com o grande crescimento do TCP/IP, o modelo OSI foi deixado para estudos. O modelo TCP/IP, por sua vez, passou a ser usado em todos os computadores e dispositivos que se conectam na rede. No exato momento em que clicamos em um link, um conjunto de informações é criado. Essas informações precisam de um veículo próprio para viajarem. O pacote IP, então, é preenchido, nomeado e colocado em seu caminho. As informações que não couberem no pa- cote são deixadas e colocadas em outro, e assim por diante, até que todas as informações saiam da sua origem até seu destino. O paco- te precisa ser etiquetado com as informações mais importantes. Ao serem montados, os pacotes passam da camada de aplicação para a camada de transporte e recebem um cabeçalho com as portas TCP/ UDP de origem e destino. Após receberem os dados da camada de transporte, são enca- minhados para a camada de rede, que receberá um outro cabeçalho. O IP de origem e destino, após neles inseridas essas informações, desce mais uma camada para a camada de enlace e ganha mais um cabeçalho de informações com o MAC Address de origem e destino. O pacote é enviado para a LAN, área local de trabalho. Nesta área estão conectados todos os roteadores e computadores locais para a troca de informações via cabo ou wireless. Entretanto, como em uma estrada, por mais controlada que seja, os acidentes podem aconte- cer. Por esse caminho trafegam os mais diferentes tipos de pacotes e realmente o tráfego é muito intenso. Desse modo, o roteador local identifica os pacotes com suas etiquetas e endereçamentos e faz a rota que ele deve seguir. Quando um pacote deixa o roteador em direção à internet, ele passa pelo roteador direcional que seleciona os pacotes que são en- viados com mais urgência e que, por sua vez, têm mais prioridade. Antes do pacote chegar ao seu destino, ele sai da sua placa de rede sendo entregue ou enviado para o próximo nível, o Proxy. 29 O Proxy é utilizado por algumas empresas para monitorar o que está sendo acessado na internet pelos seus funcionários, uma forma também de segurança. É um intermediário entre o usuário e o servidor, ou seja, ele recebe as informações passadas, mascara e repassa para o servidor e, nesse processo, mascara o seu número IP e cria uma impossibilidade de ser identificado, reduzindo, portan- to, a chance de um criminoso virtual ter acesso ao seu número de IP e, a partir daí, ter acesso à sua rede. Muitos criminosos virtuais usam esse recurso como uma forma de anonimato. Existem outros, como a VPN e o TOR, que têm o mesmo intuito. Eles utilizam servi- dores públicos de proxies para fazer esse mascaramento e dificultar a identificação e, assim, efetuar seus crimes. Lembrando que não é impossível identificar criminosos. Mesmo com Proxy, existem for- mas de fazer a identificação. Ao utilizar um proxy, existem grandes possibilidades de que sua navegação fique mais lenta. Há servidores públicos, como cita- do, que disponibilizam esses recursos gratuitamente, embora não garantam uma boa performance. Existem algumas ferramentas que são voltadas à segurança da informação. Pensando nelas, podemos citar o Web Filter, que determina o que pode ser acessado ou não. Com ele, todo o tráfego será armazenado como log e, depois, o proxy camufla o seu IP na hora que estiver acessando, conferindo maior proteção para a sua rede e para os seus dados. Atualmente, não é mais necessário fazer isso de forma ma- nual, já que existem ferramentas capazes de fazê-lo de forma auto- mática e com capacidade de integrar todas as funções em uma coisa só. Por exemplo, o Firewall Next Generation UTM que, além de ser um firewall de borda, ainda integra IPS, IDS e proxy para trazer a maior proteção para sua rede. O pacote possui vários tamanhos dependendo do seu conteú- do e, como consequência do seu trabalho, o proxy abre o pacote e lê todo o seu conteúdo e, dependendo do que encontra, o envia adian- te. Se existir um proxy com regras de bloqueio, ao abrir o conteúdo do pacote e o proxy identificar que o conteúdo que está ali dentro não foi autorizado pelos seus administradores, ele barra o pacote de ser entregue e o destrói, fazendo com que a rede se torne cada vez mais segura. No próximo passo, o pacote passa pelo firewall. Dentro dele, 30 há um controle de todas as portas de entradas e saídas, tanto da in- tranet quanto da internet. Quando o pacote sai do firewall, ele é colocado novamente na rota por um outro roteador até a entrega final. Esse roteador sele- ciona somente os pacotes que são enviados para um determinado destino e, eventualmente, alguns são ignorados e destruídos. Então, os pacotes principais serão enviados para o mundo da internet, onde roteadores e switches são responsáveis por fazer as interligações en- tre as estações. Não existe nenhuma proteção ou restrição onde tudo trafega sem controle e onde estão milhões de coisas trafegando e aguardando seu destino. Após os pacotes saírem da internet, eles chegam ao seu destino passando por outro firewall que, por sua vez, pode ser um grande aliado ou um grande muro onde suas informa- ções jamais poderão passar. O firewall é uma “parede de fogo” projetada para permitir acesso somente a quem respeita os controles e as especificações do que pode ou não sair de uma rede corporativa ou doméstica. Com o IoT e todas as automações utilizando a internet, vemos por várias vezes residências necessitando de firewall, não só para proteger a sua casa, mas também para proteção de conteúdo para a família. É um nicho de mercado que está muito pequeno, mas com grandes possibilidades de crescimento. É basicamente um controlador que vai especificar as possibi- lidades de entrada e saída de todas as requisições que sua rede, a sua empresa ou sua residência podem fazer e, com essa solução, você consegue controlar e definir o que pode ser feito e o que não pode. Um exemplo de aplicação do firewall: imagine um condomínio. Normalmente, em um condomínio, o porteiro fica responsável por quem pode ou não entrar e exigir suas identificações. No firewall não é diferente; os pacotes, ao chegarem dentro dele, são analisados e, se forem autorizados, podem entrar na rede. EXEMPLO 31 Existem alguns tipos de firewall, mas iremos citar dois, os principais e os mais comuns dentro das empresas ou das residên- cias. O primeiro é a filtragem de pacotes, que é responsável por fa- zer um controle básico das suas regras sobre o que se pode e o que não se podeacessar. Uma informação será apresentada, por meio de uma tabela básica, tanto ao endereço de entrada quanto ao endereço de saída. Algumas delas são estáticas, então você precisaria mudar essa configuração para que a tabela fique dinâmica ou, então, você precisaria de algo um pouco mais dinâmico e capaz de adaptar al- gumas situações. Por exemplo, liberar ou não um certo horário de acesso à internet ou algum tipo de conteúdo. Atualmente, os firewalls Next Generation UTM são mais dinâ- micos e capazes de fazer esse tipo de controle de uma forma mais inteligente. Como esse que estamos falando é um firewall mais sim- ples, pode ser facilmente encontrado no Windows ou em roteado- res com ele predefinido, mas lembrando: você não terá um controle muito fácil ou amplo na sua mão, pois você terá um serviço mais básico sem relatórios ou logs, que ajudam a fazer o monitoramento mais fácil e ter uma correção mais assertiva. Um segundo tipo é o firewall de aplicação que às vezes está dentro ou é o próprio firewall de rede. Além de ser o responsável por fazer um controle mais aprofundado de todos os recursos que você vai precisar, ele também fará uma análise mais minuciosa dentro de sua rede e de todos os controles que você precisaria fazer para den- tro de uma rede interna, como a rede de uma empresa. Um exemplo é a análise de logs de acesso ou conexão. Esse tipo de firewall dá essa possibilidade. Não é simplesmente um firewall que você fala o que pode entrar ou o que pode sair, é um firewall mais completo com muito mais recursos. Nesse caso, você precisa de uma máquina ex- clusiva, mais potente e que será a responsável por fazer essa pro- teção. Não pode ser um simples roteador, levando em consideração que você vai precisar de muito mais recursos para que seja feito todo um gerenciamento de informações passadas por essa rede, pois tudo o que os seus usuários fazem, e que fazem parte dessa rede, vai precisar passar por esse firewall de controle. Dentro de um firewall, os pacotes passam de um a um sen- do minunciosamente checados e os pacotes não autorizados para a 32 entrada são destruídos como, por exemplo, o pacote ICMP ou Ping. Os firewalls contam com uma proteção para bloquear o ICMP. Quan- do o pacote chega ao firewall de destino e não tem essa permissão, ele é automaticamente destruído. Já os pacotes que têm autorização são encaminhados para a rede de destino sendo recebidos, um a um, abertos, descompactados e entregues para o cliente. Sabemos, portanto, que diariamente ocorrem ataques por criminosos virtuais e que esses ataques são os responsáveis por em- presas perderem diariamente muito dinheiro. Muitas vezes, empre- sas que passaram por algum tipo de ataque hacker demoram muito tempo para se recuperar e, quando se recuperam, muitas outras empresas simplesmente fecham as portas após um ataque concluí- do. Mas, afinal, que tipo de ataques são esses? Citaremos a seguir alguns tipos de ataques mais comuns que os cibercriminosos utili- zam em busca de conseguir algum arquivo importante ou usuários e senhas. DDoS O ataque DDoS tem como objetivo sobrecarregar toda a infraestru- tura de rede, recursos de memória ou processamento de um ser- vidor ou serviço com o intuito de deixá-lo indisponível a ponto de ninguém conseguir acesso. Nesse sentido, o principal foco desse ataque não é roubar informações ou sequestrar dados, e sim deixar servidores inteiros offline e causar grandes problemas para a equipe de TI. O modo de ação de cibercriminosos consiste em um compu- tador chamado “computador mestre”, que dispara um “gatilho” para milhões de computadores zumbis e esses zumbis, por sua vez, são responsáveis por enviar uma tentativa de conexão para um host específico até que ele simplesmente saia do ar. Man-in-the-middle O ataque MITM consiste em adquirir dados. Todos sabem que o que os criminosos virtuais mais procuram são dados e, com o ataque 33 MITM, não é difícil consegui-los. Todos estamos conectados a um roteador com nossos smartphones ou até mesmo notebooks, trafe- gando milhões de pacotes em uma rede wi-fi. Assim, o ataque MITM é utilizado junto a esses roteadores. O atacante fica analisando tráfego a tráfego dentro de um determinado roteador que consegue acesso e, consequentemente, tudo que passa por lá ele consegue ver: quando passam informa- ções importantes, ele captura. Você acha que conversa de WhatsApp é segura e criptografada? Pois bem, se o atacante capturar a chave de criptografia de ambas as pontas, a conversa pode ser facilmente lida. Portanto, cuidado ao utilizar uma conexão em redes públicas, você poderá se surpreender. Sniffer O sniffer é o responsável por capturar pacotes dentro de uma rede, seja cabeada ou não. Pode ser comparado com o MITM, mas existem duas formas de utilizá-lo: • a forma ética – consiste em capturar os pacotes de uma rede com o intuito de ver o que se passa e identificar algum paco- te malicioso (existem dois programas muito usados que são o Wireshark e o TCPdump, muito usados para analisar o tráfego de rede; • a forma não ética – criminosos virtuais instalam um malware em um servidor e começam a capturar todos os pacotes saídos dele e a partir dessa ação, eles juntam informações sigilosas com o intuito de prejudicar uma empresa ou uma pessoa. 34 Figura 2 - Tela de sniffer TCPDump em execução Fonte: a autora (2022). Phishing Como na engenharia social os hackers usam a persuasão para conse- guir as informações que querem, com o phishing não é diferente. O phishing é normalmente usado como uma ferramenta de captura de dados e pode ser facilmente utilizado em parceria com a engenharia social. O atacante monta um site de um banco idêntico, disponibiliza na internet e sai enviando para vários e-mails contando que uma pessoa despreparada acesse e passe as informações que eles soli- citam. É muito fácil comprar uma televisão de 50 polegadas 4k por R$ 600,00, só que essa televisão nunca chegará e terão diversas compras no cartão de crédito que a vítima usou para fazer a compra. O phishing é mais comum do que as pessoas imaginam e diariamente várias pessoas são vítimas dele. Mas como posso me proteger desses ataques no meio corpo- rativo? Existe uma solução para isso? A resposta é sim! Existem di- versas ferramentas e soluções com o intuito de promover proteção para uma rede corporativa, desde um simples firewall até uma solu- ção extremamente robusta de honeypot. 35 Crimes cibernéticos Com frequência, vemos notícias de crimes pela internet, como, por exemplo, o vazamento de informações secretas. No Brasil, um caso que repercutiu ao longo da década de 2010, foi o que envolveu a ex-presidente Dilma Rousseff e a Agência Nacional de Seguran- ça (NSA, na sigla em inglês) dos Estados Unidos. Na ocasião, a NSA grampeou diversos números de telefones, entre eles o telefone via satélite Inmarsat, instalado no avião presidencial, com o qual a pre- sidente se comunicava com pessoas do mundo inteiro quando es- tava a bordo da aeronave. Esse foi um dos 29 números grampeados pela agência. Em relação aos crimes cibernéticos, há uma grande varieda- de. Veja a seguir alguns deles. • Falsidade ideológica: é um crime que vem se tornando cada vez mais frequente com o avanço da internet. As pessoas criam e-mails e redes sociais com fotos e nomes fictícios ou até mesmo nomes e fotos reais de outra pessoa, pois fica mais fácil cometer crimes sem ser identificado. • Acesso e uso ilegal de dados: consiste na permissão indevi- da de outros aos dados pessoais ou de uma instituição. Na in- tenção de dificultar o acesso de criminosos às organizações, é importante que os respectivos dados sejam liberados somente ao setor que necessita fazer seu uso. Por exemplo, a área de produção de uma organização deve ter acesso a itens de esto- que, como quantidade, composição, peso etc., mas não deve ter acesso aos preços de compra e aos nomes dos fornecedo- res. Dessas informações, somente o setorde compras poderá ter conhecimento. • Alteração e destruição de dados: consiste na manipulação de saldos em contas bancárias, resultados de provas, concursos, transferências indevidas de quantias de uma conta para outra etc. Um vírus pode também causar a destruição dos dados, in- viabilizando o funcionamento de alguns sistemas, ou, às ve- zes, o funcionamento dos próprios computadores. Um modo 36 de nos precavermos é realizar o que chamamos de backup, ou seja, uma cópia desses dados em outra mídia, como um CD/ DVD ou HD externo e guardá-los em um local seguro, pois, se houver a destruição do arquivo original, a organização poderá recuperá-los nessas outras fontes. • Conteúdo criminoso: com a expansão da internet, a criação de sites com conteúdo criminoso se transformou em um dos cri- mes cibernéticos mais cometidos. Os sites dedicados ao crime podem ser aqueles que vendem produtos e conteúdos ilegais, como drogas, pornografia infantil e armas, e os que oferecem programas ilegais, como o vírus, que pode destruir ou roubar dados, como vimos anteriormente. Nesse caso, comete crime tanto quem compra quanto quem repassa ou cria o programa. • Cópia ilegal de software: a pirataria ou cópia ilegal de software no mundo tecnológico consiste em copiar músicas, progra- mas e imagens sem o pagamento dos direitos autorais ao seu criador. O processo de pirataria funciona da seguinte forma – o “pirata” invade o servidor no qual o alvo a ser copiado se encontra, faz a cópia e negocia com terceiros. Essas cópias po- dem ser de músicas, software, vídeos, livros etc. Esse material é repassado para o mundo todo pela internet, e os comprado- res finais podem fazer o download. • Crime internacional: atualmente, com o avanço da tecnolo- gia e da internet, a distância entre países ficou bem menor. As fronteiras nessas áreas praticamente não existem. Em re- lação a isso, alguns países são mais tolerantes que outros em alguns aspectos, o que ajuda na ação criminosa, pois eles se aproveitam dessa diferença e distribuem suas atividades ile- gais de forma a confundir as autoridades nos processos legais, ocasionando, assim, um crime internacional. Os governos estão se ajudando para combater a pedofilia, criando leis em comum e em combate ao ciberterrorismo, isto é, o terrorismo pelo computador. Assim, os governantes trabalham para im- pedir que sites e e-mails disseminem conteúdos maliciosos e ameaças de sequestro e morte. 37 Diante desses acontecimentos, algumas estratégias devem ser tomadas para assegurar e proteger de ameaças à segurança da informação no ambiente interno e externo, seja em uma organiza- ção ou em casa. No ambiente interno, devem ser observados aspectos re- lacionados às vulnerabilidades; já no ambiente externo devem ser observados os diferentes fatores que geram incidentes de seguran- ça. A ameaça e a vulnerabilidade devem ser medidas e quantifica- das para uma prática de prevenção. Existe um conjunto de medidas preventivas que precisam ser adotadas, que incluem manter as ver- sões mais recentes dos programas, aplicando todas as atualizações disponíveis, e usar mecanismos de segurança, como o antimalware e o firewall pessoal. Há também cuidados a serem tomados na utili- zação dos computadores, por exemplo, atenção na hora de executar arquivos. Incidentes de segurança Os incidentes de segurança são eventos que podem causar uma in- terrupção no processo de negócio, em consequência da violação de algum dos aspectos de um sistema de informação. Eles podem, também, estar relacionados a outro fator, como os acidentes na- turais, greve ou outro fator. Um incidente de segurança, portanto, pode ser definido como qualquer evento adverso, confirmado ou sob suspeita, relacionado à segurança de sistemas de computação ou de redes de computadores. No Gráfico 1 são apresentadas as porcentagens relacionadas à quantidade de incidentes, por tipo de ataque, de janeiro a dezembro de 2018, reportados ao CERT – Centro de Estudos, Resposta e Trata- mento de Incidentes de Segurança no Brasil (CERT.br) e publicados em seu portal oficial em 2019. 38 Gráfico 1 - Incidentes reportados por tipo de ataque Fonte: CERT.br, 2019 (Adaptado). Junto ao gráfico 1, o CERT.br detalha algumas informações para melhorar a compreensão e a análise dos dados apresentados em relação à classificação dos tipos de ataque, das quais vale a pena destacar: • Worm – atividades maliciosas relacionadas ao processo auto- matizado de propagação de códigos maliciosos na rede; • dos (DoS – Denial of Service) – ataques em que o indivíduo ataca o sistema por um computador ou um conjunto de com- putadores para prejudicar a operação de um serviço, compu- tador ou rede; • invasão – um ataque que resulta no acesso não autorizado a um computador ou rede; • Web – visa ao comprometimento de servidores ou à desfigu- ração de páginas na internet; • scan – varreduras em redes de computadores com o intuito de identificar quais estão ativos e os serviços disponibilizados, podendo identificar potenciais alvos e explorar as possíveis 39 vulnerabilidades; • fraude – engloba as tentativas de fraudes, ou seja, incidentes em que ocorre uma tentativa de se obter vantagem; • outros – incidentes gerais que não se enquadram em nenhu- ma dessas categorias. Não devemos confundir scan com scam. Scams (com “m”) são quaisquer esquemas para enganar um usuário, geralmente com fi- nalidade de obter vantagens financeiras. Ataques deste tipo são en- quadrados na categoria fraude. Já no Gráfico 2 são apresentadas as porcentagens relaciona- das à quantidade de incidentes reportados ao CERT.br por tentativas de fraude, de janeiro a dezembro de 2018, e publicadas em seu portal em março de 2019. Gráfico 2 - Incidentes reportados por tentativas de fraudes Fonte: CERT.br, 2019 (Adaptado). O gráfico 3 apresenta o total mensal de incidentes reportados ao CERT.br, de janeiro a dezembro de 2018, e foram publicados em seu portal em março de 2019. 40 Gráfico 3 - Total mensal de incidentes reportados Fonte: CERT.br, 2019 (Adaptado). No quadro 5 é apresentado um resumo comparativo das prin- cipais características que diferenciam códigos maliciosos, como forma de obtenção e de instalação, meios usados para propagação e ações maliciosas executadas nos equipamentos infectados. Res- salta-se, ainda, que esta classificação tem sofrido alterações devido ao aparecimento de novas variantes, as quais acabam incorporando características de outros códigos maliciosos. Quadro 5 - Resumo comparativo entre os códigos maliciosos 41 Fonte: CERT.br, 2012, p. 31. (Adaptado). Caro(a) aluno(a), Neste material, falamos sobre a segurança da informação, seu con- ceito e sua importância para proteger informações em organiza- ções, já que, como aprendemos, a informação é um ativo de grande valia para as organizações do mundo globalizado. Em seguida, abordamos o teste de invasão, a qual consiste em testar a segurança de uma determinada empresa ou sistema, passando por três tipos, sendo o Black Box o que consiste em uma análise completa e com uma proximidade maior de um ataque real, onde o atacante não tem informação nenhuma do ambiente; já o Gray Box consis- SINTETIZANDO 42 te em um ataque com alguma informação sobre o ambiente; e, por fim, o White Box, que consiste em um teste de invasão com todas as informações do ambiente. Além disso, vimos exemplos de crimes cibernéticos, como falsidade ideológica, acesso e uso ilegal de dados, alteração e destruição de dados, conteúdo criminoso, criação de programas e sites dedicados ao crime, pirataria de software, crime internacional e vírus de com- putador. Por fim, apresentamos alguns dados estatísticos relacionados aos incidentes de segurança, conforme exemplos disponibilizados pelo CERT – Centro de Estudos, Resposta e Tratamento de Incidentes de Segurança no Brasil (CERT.br). UN ID AD E 2 Pentest: tipos, fases e ferramentas usadas Objetivos ◼ Abordaros tipos de pentest mais utilizados por pentesters. ◼ Apresentar de forma detalhada as fases de um pentest. ◼ Apresentar algumas ferramentas famosas no meio hacking normalmente usadas para o pentest. 44 Introdução Caro(a) aluno(a), Neste material, vamos abordar os conceitos fundamentais e deta- lhados sobre os diferentes tipos de pentest e suas respectivas fases. Inicialmente estudaremos sobre o tipo Black Box, também conhe- cido como “teste cego”, em que os pentesters não terão nenhuma informação sobre a estrutura de rede do contratante, atacando “às cegas”, como faria um criminoso sem nenhum conhecimento ou acesso prévio ao seu alvo. Em seguida, falaremos sobre o White Box, em que o pentester responsável tem pleno conhecimento da infraes- trutura interna do cliente, o que permite desenhar as estratégias de ataque com antecedência. Conheceremos, também, o Gray Box, que mescla os dois métodos acima, isto é, a empresa contratada para testar tem acesso apenas parcial às informações da infraestrutura interna do contratante, antes do ataque. Após decidir o tipo de pentest a ser aplicado, seja White Box, Gray Box ou Black Box, devemos entender e definir fases dos ataques. As fases de um pentest são: reconhecimento, enumeração, escanea- mento, análise de vulnerabilidade, exploração e pós-exploração. Vamos ver cada uma dessas fases em detalhes, além de conhecer um conjunto de ferramentas possíveis para executá-las. Pronto(a) para continuar evoluindo seus conhecimentos nesta área fascinante? 45 Tipos de pentest Um pentest, coloquialmente conhecido como “teste de caneta”, é um ataque simulado, autorizado em sistemas ou redes de compu- tadores, realizado para avaliar a segurança do ambiente. O teste é realizado para identificar os pontos mais fracos, conhecidos como vulnerabilidades ou falhas, incluindo o potencial de pessoas não au- torizadas obterem acesso a recursos, dados ou informações de de- terminado sistema ou servidor. O processo normalmente identifica os sistemas de destino e um alvo específico, depois analisa as informações disponíveis e rea- liza vários testes para atingir esse objetivo. Um pentest pode ajudar a determinar se um sistema é vulnerável a ataques e se suas defesas são suficientes. Os problemas de segurança da informação que forem desco- bertos pelo pentest devem ser relatados ao proprietário do sistema ou do servidor. Os relatórios de testes de invasão também podem avaliar possíveis impactos para a organização e sugerir contrame- didas para reduzir ou mitigar o risco. O pentest é reconhecido como um método para obter segu- rança em um sistema ou serviço dentro da infraestrutura de TI, tentando violar parte ou toda a segurança desse sistema e usando as mesmas ferramentas e técnicas que um criminoso virtual utiliza para roubar informações. Assim, as metas de um pentest podem variar de acordo com as vulnerabilidades ou falhas exploradas por um criminoso virtual e informadas ao cliente. Os pentests são um componente de uma auditoria de seguran- ça da informação de forma mais completa. Por exemplo, o Padrão de Segurança de Dados do Setor de Cartões de Pagamento necessita de um pentest em uma programação regular após alterações no sistema para verificar possíveis vulnerabilidades existentes ou alguma falha no desenvolvimento dessa modificação. Existem várias formas de colocar em prática um teste de in- vasão. A essa altura, você já sabe um pouco sobre esses testes, mas 46 vamos vê-los aqui de forma mais aprofundada, a seguir: Black Box É quando o atacante não tem conhecimento nenhum sobre o alvo que vai fazer o ataque. Esse tipo de teste é mais próximo de um ata- que real. Não são fornecidos com nenhum diagrama de arquitetura ou código-fonte que não esteja disponível publicamente. Um teste Black Box determina as vulnerabilidades em um sistema que são ex- ploráveis de fora da rede. Ou seja, significa que o pentest Black Box se baseia em uma análise dinâmica de programas e sistemas atualmente em execução na rede de destino. Um pentester que utiliza esse tipo de pentest deve estar familiarizado com ferramentas e metodologias de verificação automatizadas para testes de invasão manual. Os pentesters também precisam ser capazes de criar seu próprio mapa da rede de destino com base em suas observações, já que nenhum diagrama desse tipo é fornecido a eles. Esse tipo de teste é usado normalmente quando o cliente quer ter uma visão completa sobre se está seguro ou não, tendo essa vi- são de fora. O pentest Black Box avalia se a equipe de segurança está aplicando métodos de proteção para a rede e para as soluções da empresa. Na maioria das vezes, o pentest Black Box tem um nível de su- cesso muito grande, uma vez que simula ataques e técnicas de cri- minosos virtuais. White Box O próximo tipo é o pentest White Box, nomeado também como “teste de caixa clara”, caixa aberta, auxiliares e testes lógicos, é o contrá- rio do Black Box. Ele é utilizado quando o atacante tem conhecimen- to total do ambiente, hosts, range de IP, código-fonte, credenciais ou outras informações que podem ser úteis para que o atacante dê andamento em um pentest que, normalmente, ocorre de forma in- 47 terna. O principal desafio com o White Box é peneirar a enorme quantidade de dados disponíveis para identificar possíveis pontos de fraqueza, tornando-o o tipo de pentest mais demorado, depen- dendo do tamanho da rede ou sistema testado. Ao contrário dos pentesters Black Box ou Gray Box, os pentes- ters White Box são capazes de executar análise de código estático, familiarizando-se com analisadores de código-fonte, depuradores e ferramentas semelhantes, importantes para esse tipo de teste. No entanto, as ferramentas e técnicas de análise dinâmica também são importantes para esse teste, uma vez que a análise estática pode ig- norar as vulnerabilidades introduzidas pela configuração incorreta dos sistemas ou rede de destino. Esse tipo de pentest fornece uma avaliação abrangente de vul- nerabilidades internas e externas, tornando-se a melhor opção para o teste de cálculo. A relação próxima entre os pentesters White Box e os desenvolvedores fornece um alto nível de conhecimento do sis- tema, mas pode afetar os comportamentos do testador, já que eles operam com base em conhecimento não disponível para hackers. Existem várias maneiras de fazer White Box. Por exemplo, em uma empresa com locais específicos, com ou sem credenciais, ou com credenciais simples, pode-se testar até onde é possível ir. Um exemplo é com um usuário com perfil básico. O atacante, no pentest White Box, pode tentar analisar acessos e permissões, entre outros testes, para mitigar qualquer ataque interno, seja de hackers ou dos próprios funcionários com um pouco de conhecimento e que que- rem prejudicar a empresa. Gray Box É um teste em que o atacante tem um conhecimento parcial; ele não terá um conhecimento igual, como no White Box, ou nenhum conhe- cimento, como se fosse um Black Box. Um pentester que utiliza o tipo de pentest Gray Box terá os ní- veis de acesso e conhecimento de um usuário, potencialmente com 48 privilégios elevados em um sistema. Os pentesters Gray Box geral- mente têm algum conhecimento dos recursos internos de uma rede, potencialmente incluindo a documentação de design e arquitetura e uma conta interna à rede. Nesse tipo de pentest é fornecida uma avaliação mais focada e eficiente da segurança de uma rede, se comparada ao que o Black Box proporciona. Sendo assim, usando a documentação de design de uma rede, os pentesters podem concentrar seus esforços de avalia- ção nos sistemas com maior risco e valor desde o início, em vez de gastar tempo determinando essas informações por conta própria. Uma conta interna no sistema também permite testar a segurança dentro do perímetro endurecido e simula um invasor com acesso de longo prazo à rede. Nesse teste, o atacante tem como objetivo ganhar acesso ad- ministrativo e comprometeroutros ambientes dessa rede utilizando esse médio conhecimento a respeito da infraestrutura da empresa. Dos testes citados acima, ainda existem outros testes, como o teste externo e interno, que veremos a seguir Teste externo O teste externo é quando o atacante não necessita ficar den- tro da empresa; ele pode usar a internet para fazer esse teste e pode fazer de qualquer lugar em que estiver. Esse teste é muito importante quando é feito com o modelo Black Box, pois, a partir daí, ele tem exatamente a mesma visão que criminosos virtuais têm. Teste interno O teste interno é quando o atacante está alocado dentro do cliente, com todo acesso físico à rede do cliente. Nesse tipo de teste pode ocorrer White Box, Gray Box ou até mesmo Black Box. Um exem- plo do Black Box interno é quando a empresa fecha com o atacante um pentest interno e o atacante não tem nenhuma informação in- terna do cliente, então, é passado ao atacante um cabo de rede ou acesso Wi-Fi para que tente invadir utilizando as técnicas que co- nhece, sem que a empresa ceda nenhuma informação. 49 Fases do ataque O pentest, ou teste de invasão, é dividido em algumas fases que faci- litam e completam todo o processo para que, quando o atacante for fazer a documentação, seja mais fácil repassar ao cliente. As fases de um pentest são reconhecimento, enumeração, escaneamento, análise de vulnerabilidade, exploração e pós-ex- ploração. Antes de iniciar um pentest, é necessário que o cliente esteja ciente de todo o processo que será executado, para que não haja nenhuma falha de comunicação entre as partes. É necessário conhecer os objetivos do negócio do cliente no que diz respeito ao teste de invasão, além de saber se esse é o primeiro teste de invasão, o que o levou a procurar esse serviço, quais as exposições que ele mais teme, se existe algum dispositivo frágil com o qual deveremos ter cuidado ao efetuar os testes, dentre outras coisas que são impor- tantes para o bom andamento de um pentest. Vamos conhecer, a seguir, quais são as fases do pentest. Reconhecimento A primeira fase com a qual o atacante vai se deparar ao iniciar um pentest é de reconhecimento, ou seja, o atacante assumiu um pentest do tipo Black Box e ele só tem uma URL ou um IP e, com isso, o ata- cante precisa iniciar o processo de reconhecimento, que nada mais é do que identificar possíveis pontos de entrada dentro desse am- biente. Então, uma vez que temos somente a URL ou o IP, o atacante irá analisar algumas informações e descobrir alguma forma de en- trar. Vamos dar um exemplo: o atacante entra no navegador, procu- ra um buscador de sua preferência e nele digita o nome da empresa. Nesse buscador irá aparecer alguns resultados referentes à procura e, normalmente, o site ou alguma URL que possa ser útil. Após conseguir achar alguma informação, o atacante busca algo importante nas páginas de internet, ou na análise de algum input dentro dessas páginas que, por ventura, possibilitem a inser- ção de dados, e-mails etc. 50 Outro ponto é o atacante analisar o código-fonte em caso de um ataque web. Você pode estar se perguntando: o que pode ter em um código-fonte HTML? No código-fonte o atacante, muitas ve- zes, consegue identificar outros diretórios, como determinado site é arquitetado, ou ainda comentários que podem dar alguma base/ informação mínima que pode ser muito útil para a execução desse pentest. Cada informação é de suma importância para o desenvolvi- mento de um pentest; cada informação, por menor que seja, pode ser muito útil no futuro. O Google se torna uma ferramenta de grande importância nessa fase do teste de invasão. O Google Hacking consiste em formas e técnicas diferentes de efetuar uma busca. O Google tem um recurso muito interessante chamado Google Hac- king ou Google Dorks, que são strings que o atacante consegue inserir na lista de buscados do Google e obter informações filtradas, como arquivos de bancos de dados, planilhas com senhas ou dados diver- sos. Caso você não tenha ideia de como fazer esse tipo de ação, existe um site com diversas dorks prontas, que é o Google Hacking Database, Basta acessar e utilizar. Nele, você pode fazer um filtro de acordo com suas necessidades, além de utilizar os dorks já prontos. SAIBA MAIS 51 Figura 1 - Dorks do Google Hacking Database Fonte: print do autor (2019). Outra forma de busca ou levantamento de informações tam- bém muito usada atualmente é o Whois, que é um comando do Linux que também faz o mesmo papel de trazer todas as informações ca- dastradas de um determinado site. Com o Whois, muitas vezes o atacante consegue descobrir, por exemplo, um bloco de IP de determinada rede, ou seja, se a rede tem um bloco de IP fixo exclusivamente para eles. Isso normalmente ocorre dentro de grandes empresas, pois estas, normalmente, pos- suidoras de uma infraestrutura madura, possuem um bloco de IP. Então, rodando o Whois no domínio, o atacante consegue descobrir esse bloco de rede e, talvez, fixar seu ataque naquele bloco em es- pecífico. Caso o invasor, com um domínio ou um IP, não consiga des- cobrir nada com o Google Hacking ou Whois, ele ainda precisa de um ponto de entrada para que consiga efetuar seu pentest; então as EXEMPLO 52 possibilidades são fazer o teste de DNS ou tentar descobrir subdo- mínios ou algum outro servidor atrelado a esse domínio alvo. Para isso, pode-se utilizar algumas ferramentas que já vêm no Kali Linux como: DNSenum, DNSrecon, DNSmap, entre outras diversas. Enumeração Após concluído o processo de varredura, o atacante possui a infor- mação de quantos dispositivos existem na rede e quantas portas estão abertas nesses dispositivos. O que o atacante ainda não sabe exatamente é qual serviço está rodando nesses dispositivos por trás dessas portas. Por exemplo, o atacante encontrou a porta 21 aberta, ou seja, um servidor FTP. Existem vários tipos de softwares que po- dem utilizar esse serviço de FTP, ou web. Nessa fase, o atacante irá fazer o levantamento e a identificação desses servidores, com suas respectivas versões. Nesse processo, o atacante consegue enumerar quantos usuários ou informações existem nesses sistemas ou servidores, ou seja, por meio da enumeração de recursos ou fingerprint, que se referem à identificação de serviços que estão rodando por trás. Até mesmo a identificação de vulnerabilidades, pois caso o atacante consiga identificar o serviço, ele deve encontrar as falhas existen- tes para aquele serviço, tanto de forma manual quanto usando fer- ramentas automatizadas com bancos de dados próprios e diversas informações cadastradas. Existem diversas ferramentas que podem ser usadas para esse fim, tanto ferramentas genéricas que buscam falhas em todos os tipos de serviços como ferramentas específicas que focam, por exemplo, em ambiente web, SSH, Telnet, SQLi, dentre outras, que fazem uma varredura mais detalhada e objetiva das falhas que que- rem buscar. Escaneamento Uma vez que já identificamos os hosts ou possíveis sistemas que o atacante vai atacar, a próxima fase é a do escaneamento, na qual o 53 atacante irá identificar as portas abertas ou serviços ativos dentro dos sistemas e dar prosseguimento ao pentest. Muitas vezes, quando um atacante vai fazer um escanea- mento de portas para descobrir os serviços e as portas ativas, ele se depara com algum controle ou bloqueio. Se o atacante tentar esca- near ou fazer uma varredura de portas em alguns servidores, pode ter certeza de que possivelmente irá ficar bloqueado se este servidor estiver com uma segurança bem projetada. Após identificar o alvo que será escaneado, o atacante irá se- lecionar algum scanner de portas para fazer essa varredura. Uma boa opção de scanner é o NMAP, que é um port scan com mais de 20 anos, lançado em 1997. Apesar de antigo, vem evoluindo com o passar do tempo. Para o Nmap, sempre são disponibilizadas diversas atualizações. Esse software ganhou diversos recursos, além da sua documentaçãoser muito boa. Nmap é o port scan mais usado entre os pentesters e todos os que trabalham em segurança de redes, enfim, é uma das ferramentas que o pentester usa geralmente nessa fase para fazer essa varredura. O port scan nem sempre sai como o esperado. Às vezes, quan- do o atacante está fazendo um port scan em determinado servidor, se esse servidor tiver um firewall na borda com proteção anti-port scan, ele vai dropar o scan e, além de dropar, ainda coloca o IP em Black List, ou seja, não vai conseguir informação alguma a respeito do alvo. Isso acontece em ambientes reais, mas existem formas de burlar isso, como na fase de reconhecimento, quando foram locali- zados os hosts ou endereços de IPs atrelados ao host principal. Se a vítima tem um controle de segurança, ela deseja barrar qualquer tipo de acesso e só vai liberar o que de fato é permitido, SAIBA MAIS 54 ou seja, quando se trata de um ambiente em que a empresa preci- sa fornecer disponibilidade de uma aplicação, geralmente as portas padrões que serão liberadas são as portas 80 ou 443, que são portas web, HTTP e HTTPS, pois, se a empresa for fornecedora de solu- ções de site ou sistemas, precisa entregar esse serviço para o cliente, logo, essa porta tem que, por padrão, está aberta e não pode estar sendo filtrada pelo firewall, pois os clientes precisam acessar aquele recurso. Então, o que fazer quando ocorrerem casos assim? Geral- mente, em caso de confrontar o firewall, o atacante terá que, de al- guma forma, focar nas portas padrões, ou seja, 80 ou 443, a fim de tentar descobrir aplicações que não estariam sendo barradas pelo firewall e, dessa forma, usar essas aplicações como vetor de entrada para atacar a rede. Uma vez que o atacante acessa a rede, fica mais fácil fazer um escaneamento para outros ambientes, já que está em um ambiente confiável, ou seja, dentro da rede interna. A parte difícil é chegar na rede interna quando se tem um bom controle de segurança. A pergunta que você deve estar fazendo é: como o firewall faz esse bloqueio? Como funciona? Na verdade, é uma espécie de honeypot, ou “pote de mel”, quando um sistema é armado simulando um ambiente real completamente vulnerável, mas com o intuito de atrair ataques para esse sistema ou servidor e, dessa forma, desviar a atenção de outros sistemas críticos. O honeypot tem a função de abrir algumas portas, ou seja, ele man- tém algumas portas, as quais ele sabe que ferramentas de esca- neamento vão testar e, quando chega um pacote, ele identifica que está sofrendo um ataque, pois essa porta não é verdadeira, não tem um serviço rodando lá. Sendo assim, o honeypot automaticamente manda para o firewall, que é o responsável por dropar esse pacote e que, por sua vez, não é um acesso real. DEFINIÇÃO 55 Análise de vulnerabilidade Após passar pelas outras fases, chegamos à fase de análise de vul- nerabilidade. Nela levantamos tudo que é vulnerável dentro de um servidor ou serviço. A análise de vulnerabilidade usa de ferramen- tas automatizadas capazes de detectar vulnerabilidades e gerar um relatório completo sobre essas falhas, ou seja, essas ferramentas apresentam um banco de dados com muitas informações sobre fa- lhas conhecidas. É, também, uma forma automatizada em que o atacante informa somente alguns dados (como endereço de IP ou domínio) e se inicia o escaneamento. De acordo com as configurações do sistema de automatização de scanner, o teste iniciará buscando todas as vulnerabilidades que o sistema reconhecer e, caso encontre alguma, começará a contar essas falhas. Existem alguns pontos muito importantes que pode- mos destacar em análise de vulnerabilidade. Essas ferramentas são capazes de detectar várias vulnerabilidades de uma forma rápida e automática. Desse modo, o atacante abre a ferramenta, coloca as in- formações e a ferramenta faz todo o trabalho para ele. As ferramentas geram um relatório mostrando os testes que foram feitos e os resultados dos testes. O relatório, por sua vez, traz as vulnerabilidades classificando-as por risco. Em seguida, mos- tra detalhes sobre as falhas, dá uma explicação completa, além de, muitas vezes, apresentar soluções para as falhas encontradas. Uma coisa que vale a pena citar é que a análise de vulnerabilidade é diferente de pentest, apesar de fazer parte como uma de suas fases. A varredura de vulnerabilidades é uma fase crucial de um teste de in- vasão e ter um scanner de vulnerabilidades atualizado em seu kit de ferramentas de segurança pode, muitas vezes, fazer toda diferença. IMPORTANTE 56 A análise de vulnerabilidade pode ser feita individualmen- te apenas para apresentar falhas e vulnerabilidades em sistemas e programas. Como uma fase do pentest, a análise de vulnerabilidade é responsável por apresentar as falhas e o atacante por buscar ex- ploits, explorando essas falhas. Existem algumas ferramentas que são muito utilizadas na análise de vulnerabilidade, por exemplo: OpenVAS, Nessus ou Nmap. OpenVAS - é um scanner de vulnerabilidade completo. Seus recursos incluem testes não autenticados, testes autenticados, vá- rios protocolos industriais e de internet de alto nível e baixo nível, ajuste de desempenho para varreduras em grande escala e uma poderosa linguagem de programação interna para implementar qualquer tipo de teste de vulnerabilidade. O scanner é acompanhado por um feed de testes de vulnerabilidade com um longo histórico e atualizações diárias. Esse feed da comunidade Greenbone inclui mais de 50.000 testes de vulnerabilidade. O scanner é desenvolvido e mantido pela Greenbone Networks desde 2009. Os trabalhos são distribuídos como open source. A Greenbone desenvolve o OpenVAS como parte de sua família comercial de produtos de gerenciamento de vulnerabilidades. O OpenVAS é um elemento em uma arquitetura maior e em combinação com módulos adicionais de código aberto. Forma, também, a solução Greenbone Vulnerability Management. Nessus - é a solução padrão de avaliação de vulnerabilidade da indústria para profissionais de segurança. O Nessus ajuda os pro- fissionais de segurança nas linhas de frente a identificar e corrigir rapidamente vulnerabilidades, incluindo: falhas de software, corre- ções ausentes, malwares e configurações incorretas em aplicativos, dispositivos e sistemas operacionais. Nmap - é um utilitário de código aberto para descoberta de rede e auditoria de segurança. Muitos sistemas e administradores de rede também o acham útil para tarefas como inventário de rede, gerenciamento de agendas de atualização de serviços e monitora- mento do tempo de atividade do host ou serviço. O Nmap usa paco- tes IP brutos de novas maneiras para determinar quais hosts estão disponíveis na rede e quais serviços, por exemplo, nome e versão do aplicativo. Além disso, aponta quais sistemas operacionais (e ver- sões do sistema operacional) estão executando, que tipo de filtros/ 57 firewalls de pacotes estão em uso etc. Ele foi projetado para varrer rapidamente grandes redes, mas funciona bem em hosts únicos. O Nmap roda em todos os principais sistemas operacionais e pacotes binários oficiais. Está disponível para Linux, Windows e Mac OS X. Além do clássico executável Nmap, o pacote Nmap inclui também: • uma GUI avançada; • um visualizador de resultados chamado Zenmap; • uma ferramenta flexível de transferência de dados; • um redirecionador e depurador chamado Ncat; • um utilitário para comparar resultados de varredura chamado Ndiff; • uma ferramenta de geração de pacotes e análise de respostas chamado Nping. Exploração Após o levantamento de todas as informações, identificação de vul- nerabilidades e descoberta dos tipos de vulnerabilidades, é hora de explorá-las. Algumas pessoas acreditam que o pentest serve apenas para invadir sistemas ou servidores, pulando todos os passos que foram apresentados até agora. Mas, na verdade, vai além. Uma vez que possíveis vulnerabilidades foram encontradas no alvo, podemos analisarinformação por informação para que o atacante consiga encontrar algum exploit que possa ser usado para efetivar o ataque. É muito importante, ao localizar algum exploit pronto para explorar uma vulnerabilidade, que esse exploit seja analisado, pesquisado, que traga informações sobre a falha, e que seja observado caso cite alguma CVE. Existem alguns exploits que apresentam uma URL para download da solução ou serviço vulnerável, a fim de que se revele onde ele vai atingir e se citará partes do código até então vulnerável. 58 Podemos citar o WordPress, por exemplo, com um tema vulnerá- vel. No exploit-db, o atacante pode encontrar o link do plugin para baixar e estudar sua estrutura a fim de conhecê-la e de reduzir pro- blemas com a exploração. No caso do WordPress, podemos utilizar o ataque de SQL Injection, que é um ataque muito comum quan- do falamos de pentest em servidores web. O SQL Injection trabalha diretamente buscando informações de bancos de dados através das vulnerabilidades das aplicações. Quando se trata do SQL Injection, é muito importante o atacante conhecer o banco de dados para que possa conduzir um bom ataque. O banco de dados é onde ficam armazenadas todas as infor- mações de um site dinâmico. Quando falamos em ambiente web, ou seja, quando uma pessoa se cadastra no Facebook, por exemplo, ela tem o nome de usuário, senha, nome completo, fotos, postagens etc. Tudo isso fica armazenado em um banco de dados; indepen- dentemente da pessoa ou conta que foi cadastrada, todas as infor- mações estão contidas em um único local. Esse local é chamado de site ou aplicação web; trata-se de aplicações ou sites que utilizam o banco de dados para armazenar informações e apresentá-las na tela. Existem sites estáticos que simplesmente são páginas com fo- tos etc.; mas o Facebook, como exemplo de site dinâmico, faz com que o usuário cadastre cada vez mais informações (o usuário faz postagens, adiciona fotos, marca pessoas, curte e comenta as fotos das pessoas etc.). São utilizados nesses bancos de dados alguns sistemas de gestão de bancos de dados, os famosos SGBD como o MySQL, SQL Server, entre outros. Todos esses sistemas utilizam uma linguagem única chamada SQL. É por meio dessa linguagem que o atacante montará as consultas para o usuário requisitar as informações no banco de dados ou incluir novas informações. Quando um desen- volvedor tem um formulário ou passagem por endereço, como, por EXEMPLO 59 exemplo, o GET, o usuário passa alguma variável para o site e, en- tão, o desenvolvedor faz uma consulta no banco de dados de acordo com a variável que foi informada. Outro exemplo: em uma consulta SQL, o sistema passa o banco de dados do comando para selecionar todos os dados da tabela de usuários, na qual um usuário é igual ao usuário que é informado por quem está utilizando. É muito comum vermos esse tipo de informação em usuários de lo- gins de sites ou redes sociais. Feita essa solicitação, o usuário in- forma o seu usuário e senha para o sistema ou site, que irá enviar uma notificação para o banco de dados sobre a existência ou não de algum usuário com a respectiva senha informada. Caso exista, o sistema retornará à liberação para acessar o site; caso não exista, o sistema retornará para a tela de login informando que o usuário e/ ou a senha estão errados. O uso do SQL Injection consiste justamente nessa comuni- cação entre o sistema e o banco de dados. Se, ao invés de solicitar usuário e senha, o sistema, por meio de alguma intervenção exter- na, solicitar de forma maliciosa ao banco de dados alguma outra informação, ela simplesmente irá aparecer, uma vez que o sistema pode ser facilmente enganado pelo atacante. IMPORTANTE 60 Como exemplo, vamos visualizar uma Query de SQL, na qual o sis- tema envia para o banco de dados a solicitação com login. SELECT * FROM usuário WHERE usuário = variávelusuario AND senha = variávelsenha; Nesse caso, se trocarmos para SELECT * FROM usuário WHERE usuário = “” OR 1 = 1; o sistema, por meio da resposta obtida pelo bando de dados, vai autorizar o acesso, pois 1 é sempre igual a 1, e o sistema, visualizando o retorno de verdadeiro, vai liberar o acesso completo ao usuário. Normalmente, esses ataques por criminosos virtuais ocorrem com uma frequência muito grande em sites, em que o único intuito é prejudicar a imagem da empresa ou roubar algumas informações que podem ser úteis. Defacement, ou Deface (como é popularmente conhecido no meio de hacking), é um termo de origem inglesa que se refere ao ato de alterar ou danificar a superfície ou aparência de algum site ou sistema disponível na web, locais onde esse ataque normalmente ocorre. Na segurança da informação, é usado para categorizar os ataques realizados por defacers para modificar a pá- gina de um site na internet. Além do SQL Injection, existem várias formas de explorar vulnerabilidades, em web ou não, com diversos tipos de programas disponíveis no Kali Linux. Pós-exploração Após passar todas as fases do pentest, chegamos à fase mais inte- ressante, que é a pós-exploração. Nessa fase, o objetivo do atacante é se aprofundar no sistema ou servidor, uma vez que já conseguiu um primeiro ponto de acesso dentro desse sistema. É uma fase que separa, geralmente, o profissional que entrega o serviço mediano do profissional que entrega algo realmente bom e que agrega algum EXEMPLO 61 valor para o cliente. Mas como assim? Muitas pessoas acreditam que o pentest se finaliza na exploração, e não é bem assim. Nos passos anteriores, apresentamos alguns acessos e, normalmente, alguns profissionais finalizam o pentest naquele ambiente. Há um certo im- pacto, é evidente, mas não agrega valor nenhum para o seu cliente, uma vez que, já na rede ou sistema, o atacante não consegue escalar privilégios ou melhorar o seu acesso. Então, como conseguir acesso a outros servidores ou serviços? Sim, isso faz parte de um pentest. Nessa fase do pentest, normalmente quando ele é feito pelo tipo Black Box, o atacante encontra a aplicação e, a partir da apli- cação, vai ganhando acesso até encontrar as falhas dos servidores. Ciente dessas falhas, vai ganhando acesso à rede de internet e quan- do já está na rede interna, normalmente, encontra um controlador de domínio e vai ganhando acessos em outros departamentos desta empresa. Ao final, o atacante entrega para o cliente um comprome- timento total do ambiente, ou seja, o atacante mostra o impacto que um criminoso virtual, ao ter contato com esse caminho, po- deria fazer em uma invasão real. O objetivo do pós-exploração é melhorar o acesso e ganhar mais acesso ao servidor ou serviço. Normalmente, esse tipo de aces- so melhorado é feito a partir de um backdoor, ou seja, uma porta aberta oculta onde você tem acesso para poder voltar quando quiser. Backdoor é um tipo de programa que se instala de maneira quase invisível, mas não se engane: ser quase invisível não quer di- zer que é impossível de ser descoberto. Ele permite que um atacante assuma controle total sobre o sistema ou serviço por meio de uma rede local ou da internet, vamos supor: o atacante está local, dentro da empresa que está atacando, ou está em casa fazendo o ataque remoto, conseguindo, em ambos os casos, manter seu acesso. Em um backdoor, ou porta dos fundos, o atacante entra, como dissemos anteriormente, de maneira quase indetectável, seja por uma falha, ou por algum local que o administrador do sistema ou da rede não consegue identificar. É como se o atacante mantivesse a porta de entrada principal e uma porta auxiliar para, caso essa porta de en- trada seja fechada, ele consiga entrar por outra e, dessa forma, não perder acesso ao sistema ou à rede. 62 Um outro exemplo é em caso de infecção por Cavalo de Tróia ou Trojan. Um criminoso virtual cria um Trojan e envia para uma de- terminada pessoa, a pessoa executa esse Trojan e automaticamente instala um backdoor nessa vítima. A partir desse backdoor instalado,o criminoso passa a ter acesso, muitas vezes, ao computador da ví- tima sem que ela saiba e, por meio dessa porta, passa a ter domínio total sobre o computador dessa vítima, podendo fazer o que quiser. O atacante ético, por sua vez, pode utilizar essas ferramentas para manter seu acesso em caso de teste de invasão. O pós-exploração, dessa forma, consiste basicamente em: manter os acessos aos ser- viços ou servidores e, partir deles, conseguir conquistar cada vez mais acessos até ter acesso à rede inteira. Apagando rastros Após um ataque, a primeira tarefa que um pentester deverá ter é apagar os LOGs. Existem várias formas de exclusão, principalmen- te se o sistema operacional for Linux ou Unix, pois processos não impedirão a exclusão de arquivos, como no Windows. Nesta fase, o atacante limpa todo o seu rastro armazenado em LOG para que, caso os administradores de TI percebam que estão sob ataque não con- sigam saber de onde partiu e o que ocorreu, deixando, assim, todos totalmente de mãos atadas. Relatório Até aqui, vimos toda a parte técnica envolvida para a execução de um bom pentest, mas, agora, chegamos ao ponto mais importante de um teste de invasão: o que entregamos para o cliente. Quando um cliente compra um serviço de pentest, ele com- pra o relatório. Apresentaremos a forma mais prática de montar esse relatório. O relatório pode conter capa personalizada, controle de ver- sões que o atacante pode apresentar, as versões do relatório – se existirem –, apresentação da empresa, introdução e objetivo que contém toda a descrição de como a empresa foi contratada para 63 prestar esse tipo de serviço. O relatório também pode conter o esco- po, responsabilidades e metodologias usadas para aplicar o pentest. O atacante, ao montar o relatório, também pode utilizar, inclusive, a apresentação de gráficos, imagens, prints e, após todas essas infor- mações, abordar a análise técnica (tudo o que foi feito no pentest vai ser relacionado nessa parte) com o passo a passo de tudo o que foi feito, como foi feito, o que foi usado, quais comandos foram utiliza- dos, as respostas e os prints de todas as informações etc. Tudo o que foi obtido é relacionado e explicado detalhadamente no relatório. É de extrema importância saber que, para o bom desenvolvimento desse relatório, o tempo será demandado e esse tempo deve constar, respectivamente, nas horas totais de um teste de invasão combi- nado com o cliente. O relatório deve sempre ser o mais detalhado possível para que o técnico ou a gestão responsável pela empresa- -cliente tenha facilidade e ciência de todo o resultado obtido. Softwares utilizados em um teste de invasão Os softwares são muito importantes para o desenvolvimento de um bom pentest, normalmente eles automatizam muitos processos que seriam quase impossíveis de serem rodados na mão e carre- gam muitas informações difíceis de serem adquiridas. Dessa forma, apresentaremos alguns softwares utilizados em um teste de invasão. Nmap Como já falamos anteriormente, o Nmap, ou Mapeador de Rede, é um software de código aberto, ou seja, é um software gratuito para descoberta de rede e auditoria de segurança da informação. Muitos sistemas e administradores de rede também o acham útil para tare- fas como inventário de rede, gerenciamento de agendas de atuali- zação de serviços e monitoramento do tempo de atividade do host ou serviço. O Nmap usa pacotes IP brutos para determinar quais hosts estão disponíveis na rede e quais serviços juntamente com seu nome e suas versões. Esses hosts apresentam quais sistemas operacionais e versões estão sendo executadas, que tipo de filtros ou firewalls de 64 pacotes estão em uso, além de milhares de outras características que são muito úteis para quem utiliza o Nmap. O Nmap foi projetado para varrer de forma rápida e objetiva grandes redes, mas funciona bem em hosts únicos. O Nmap roda em todos os principais sistemas operacionais e pacotes binários oficiais que estão disponíveis para Linux, Windows e Mac OS X. O Nmap foi nomeado Produto de Segurança do Ano pelo Linux Journal, Info World, LinuxQuestions.Org e Codetalker Digest. Ele também foi apresentado em 12 filmes, incluindo The Matrix Reloaded, Die Hard 4, Girl With The Dragon Tattoo e The Bourne Ultimatum, além da série Mr. Robot. O Nmap tem como ponto forte a flexibilidade, pois suporta dezenas de técnicas avançadas para o mapeamento de redes cheias de filtros IP, firewalls, roteadores e outros obstáculos. Isso inclui muitos mecanismos de varredura de portas TCP e UDP, detecção de sistema operacional, identificação de versão, varreduras de pings e muito mais. Ele é considerado muito poderoso, pois o Nmap foi usa- do para escanear enormes redes de literalmente centenas de milha- res de máquinas, e é portátil, uma vez que a maioria dos sistemas operacionais é suportada, incluindo Linux, Microsoft Windows, FreeBSD, OpenBSD, Solaris, IRIX, Mac OS X, HP-UX, NetBSD, Sun OS, Amiga e muito mais. O nível de dificuldade classifica o Nmap como fácil, pois, embora ele ofereça um rico conjunto de recursos avançados para usuários avançados, você pode começar a utilizá-lo com poucos comandos. Ambas as versões de linha de comando tradicional e gráfica estão disponíveis para atender às preferências dos usuários. Os binários estão disponíveis para aqueles que não desejam compilar o Nmap a partir da fonte. Como já foi dito, é um software livre, ou seja, um software grátis, uma vez que os principais objetivos do projeto Nmap é ajudar a tornar a internet um pouco mais segura e fornecer aos administradores, auditores de segurança da informação ou pen- SAIBA MAIS 65 testers uma ferramenta avançada para explorar suas redes. O Nmap está disponível para download gratuito e vem com o código-fonte completo que você pode modificar e redistribuir sob os termos da licença. Figura 2 - Nmap Fonte: print do autor (2019). Maltego Maltego é uma excelente ferramenta de mineração de dados inte- rativa que apresenta diversos tipos de gráficos direcionados para análise de links e hosts. A ferramenta é usada em investigações on- -line para encontrar relações entre informações de várias fontes lo- calizadas na internet de forma clara e completa, utilizando diversos plugins que ajudam na captura dessas informações. O Maltego usa a ideia de transformações para automatizar o processo de consulta de diferentes fontes de dados. Essa informação é exibida em um gráfico baseado em nó, adequado para executar a análise de link. A Pater- va, que é a fabricante do Maltego, disponibiliza diversas versões do Maltego, mas a que é encontrada no Kali Linux é a CE. Maltego CE é a versão da comunidade de Maltego, disponível gratuitamente após um rápido registro on-line. Maltego CE inclui a maioria das funcio- nalidades da versão paga. O software livre, no entanto, apresenta algumas limitações. A principal delas é que ele não pode ser usado para fins comerciais. Há, também, a limitação no número máximo 66 de entidades que podem ser retornadas de uma única transforma- ção. O foco principal do Maltego é analisar as relações do mun- do real com as informações que são acessíveis publicamente na in- ternet. Isso inclui a implantação de infraestrutura da internet e a coleta de informações sobre as pessoas e a organização que a pos- sui. O Maltego pode ser usado para determinar os relacionamentos entre pessoas, nomes, endereço de e-mail, aliases, redes sociais, empresas, organizações, sites, infraestrutura, ou da internet, como os domínios, DNS, endereços de IP, entre outros. As conexões entre essas informações são encontradas usando técnicas de inteligência de fonte aberta, consultando fontes como registros DNS, registros Whois, mecanismos de pesquisa, redes sociais, várias APIs on-line e extraindo metadados. Figura 3 - Maltego Fonte: print do autor (2019). 67 O Maltego fornece resultados em uma ampla diversidade de gráficos que permitem o agrupamento de informações,o que torna as relações de visualização instantâneas e precisas, isso possibilita a visualização de conexões ocultas, mesmo que estejam separadas por três ou quatro graus. theHarvester O theHarvester é uma das melhores ferramentas de coleta de in- formações de um determinado host ou IP. Com essa ferramenta, é possível obter uma relação com grandes quantidades de e-mails, subdomínios, hosts, nomes de funcionários, portas abertas, banners de diferentes fontes públicas, chaves PGP e informações mapeadas pelo site Shodan. Essa ferramenta destina-se a ajudar os pentesters nos está- gios de busca de informação de um teste de invasão, a fim de com- preender o perfil do cliente que sofrerá o ataque, normalmente do tipo Black Box. Também é útil para qualquer pessoa que queira saber o que um invasor pode ver sobre sua organização. Figura 4 - theHarvester Fonte: print do autor (2019). 68 Metasploit O Metasploit é uma poderosa ferramenta para desenvolvimento e lançamento de exploits, muito utilizada em auditorias de seguran- ça da informação e pentest. O framework consiste em uma série de ferramentas, exploits e códigos que podem ser utilizados através de diferentes interfaces e formas. O Metasploit foi criado em 2003 por HD Moore e é uma fer- ramenta que permite testar a segurança de dispositivos existentes numa determinada rede, permitindo atacar as falhas de seguran- ça da informação existentes nos mais diversos softwares e nos mais diversos serviços. Esse é o melhor conjunto de ferramentas sendo atualizadas diariamente com as mais recentes falhas de segurança identificadas por profissionais no ramo. Distribuído como softwa- re livre ou open source, em constante transformação, é programado em Ruby e está organizado em vários módulos diferentes. São es- ses módulos que contêm os programas preparados especificamente para analisarem profundamente as vulnerabilidades encontradas nos softwares e sistemas operacionais, permitindo, assim, a execu- ção de código malicioso e, consequentemente, a invasão da máqui- na ou do software por meio do atacante. Além de muito poderoso e usado no meio do pentest, os cri- minosos virtuais também o utilizam para buscar essas informações e adquirirem acessos aos sistemas ou softwares com intuito de pre- judicar ou roubar dados. Esses códigos recebem o nome de exploits e o código malicioso re- cebe o nome de payload. Sendo assim, os exploits são aqueles que atacam as falhas nos softwares e executam o payload, para, ao fim do processo, disponibilizar uma sessão remota de Telnet ou SSH e permitir o controle remoto do computador atacado. VOCÊ SABIA? 69 Esse importante software tem como missão criar um ambien- te de pesquisa e desenvolvimento de exploração de vulnerabilida- des, permitindo descobrir erros de programação que levam a uma brecha na segurança da informação. Quando falamos de ambientes de desenvolvimento, nos referimos à forma preventiva, colocando a vulnerabilidade em estudo e determinando – ou tentando determi- nar – de que forma pode ser explorada. Depois de enquadrado todo o cenário possível usando a vul- nerabilidade, o atacante parte para o desenvolvimento do próprio exploit, onde são aplicadas várias técnicas de engenharia reversa, programação, etc. Por fim, é executado o exploit testando-o em vá- rios cenários diferentes, tantos quantos possíveis e identificados na fase de exploração da vulnerabilidade. Figura 5 - Metasploit Fonte: print do autor (2019). Burp Suite Burp, ou Burp Suite, é uma solução gráfica para efetuar testes de segurança da informação em aplicativos da web. A solução que esta- mos falando é escrita em Java e desenvolvida pelo PortSwigger Web Security. O Burp Suite se tornou um conjunto de ferramentas padrão do setor usado por profissionais de segurança da informação e aju- 70 da o atacante a identificar vulnerabilidades e vetores de ataque que afetam aplicativos da web. Em sua forma mais simples, distribuída pela comunidade gratuitamente, o Burp Suite pode ser classificado como um proxy de interceptação, pois, quando o usuário está num aplicativo de destino, um testador de invasão pode configurar seu navegador da internet para rotear o tráfego por meio do servidor proxy Burp Suite. Geralmente, é usado em ataques de SLQ Injection, em que o atacante captura as conexões da aplicação com o banco, por meio de INPUT ou GET, e consegue enviar várias querys para o banco com o intuito de capturar informações. O Burp Suite atua como um tipo de Man-In-The-Middle, capturando e analisando cada solicitação para o aplicativo da web de destino a fim de que sejam analisados. Os testadores de invasão podem pausar, manipular e reproduzir so- licitações HTTP individuais para analisar possíveis parâmetros ou pontos de injeção. Os pontos de injeção podem ser especificados para ataques manuais e automatizados de fuzzing para descobrir comportamentos potencialmente indesejados, falhas e mensagens de erro. O Burp tem três edições, sendo uma Community Edition que pode ser baixada gratuitamente, uma edição Professional e uma edição Enterprise que podem ser adquiridas após um período de avaliação. A edição da comunidade reduziu significativamente a funcionalidade, mas, ainda assim, é muito útil e utilizada em diver- sos pentests. Foi desenvolvida para fornecer uma solução abrangen- te para verificações de segurança de aplicativos da web. Além das funcionalidades básicas, como servidor proxy, scanner e intruso, a ferramenta também contém opções mais avançadas, como um spi- der, um repetidor, um decodificador, um comparador, um extensor e um sequenciador. A empresa por trás do Burp Suite também desenvolveu um aplicativo móvel contendo ferramentas semelhantes e compatíveis com o iOS 8 e superior. O PortSwigger, fundado em 2004 por Dafydd Stuttard, é um dos maiores especialistas em segurança na web. 71 Figura 6 - Burp Suite Fonte: print do autor (2019). BeEF BeEF é a abreviatura de The Browser Exploitation Framework. Tra- ta-se de uma das mais conhecidas soluções de teste de invasão fo- cada no navegador da web. Com o constante crescimento das preo- cupações sobre ataques pela web contra clientes, incluindo clientes móveis, o BeEF possibilita que o pentester analise e avalie a postura real de segurança da informação de um ambiente de destino usan- do, para isso, vetores de ataque do lado do cliente. Ao contrário de outras estruturas de segurança, o BeEF analisa o perímetro da rede e o sistema-cliente, e examina a capacidade de exploração dentro do contexto de uma porta aberta, ou seja, o navegador da web. O BeEF conectará um ou mais navegadores da web e os usará como cabeçotes de navegação para o lançamento de módulos de comando direcionados a outros ataques contra o sistema a partir do contexto do navegador. (BeEF, [s.d.]. Tradução livre). 72 Figura 7 - BeEF Fonte: print do autor (2019). Nikto O Nikto é um scanner de servidor da web open source, ou seja, dis- tribuído gratuitamente e encontrado no Kali Linux. É uma solução que executa testes completos contra servidores da web para vários itens, incluindo mais de 6.700 arquivos ou programas potencial- mente perigosos, verificações de versões desatualizadas de mais de 1.250 servidores e problemas específicos da versão em mais de 270 servidores. O Nikto usa as informações de diversos sistemas ou soluções de segurança da informação e, juntamente aos seus dados, é repas- sado para o pentester um pacote completo com tais informações, sem a necessidade de que o pentester vá de uma a uma para gerá-las. Ele é um sistema de busca de informações; é usado na fase de reco- nhecimento de ambiente ou escaneamento, na qual captura tais in- formações para serem usadas na exploração. Ele também verifica a existência de itens de configuração do servidor, como a presença de vários arquivos de índice, opções do servidor HTTP, e tentará iden- tificar servidores e software da web instalados. Itens de verificação e plugins sãoatualizados com frequência e podem ser atualizados 73 automaticamente. O Nikto não é projetado como uma ferramenta furtiva. Ele testará um servidor da web no menor tempo possível e ficará óbvio em arquivos de LOG ou em um IPS/IDS. No entanto, há suporte para os métodos anti-IDS do LibWhisker. Nem toda verificação é um problema de segurança, embora a maioria seja. Esses itens, geralmente, são marcados adequadamen- te nas informações impressas. Há também algumas verificações de itens desconhecidos que foram verificados nos arquivos de LOG. Figura 8 - Nikto Fonte: print do autor (2019). DNS Enum O DNS Enum é muito conhecido no meio da segurança da infor- mação ou pentest, pois é usado para coletar informações sobre o alvo. Bastante semelhante ao groper de informações de domínio. Cada um dos registros DNS pode fornecer informações sobre o alvo. Quanto mais informações o atacante conseguir no início de um pen- test, melhor será, pois o atacante estará preparado para o ataque. A segurança do DNS não deve ser deixada sem supervisão, embora, às vezes, seja ignorada por muitos administradores de rede e gestores de segurança da informação. 74 O DNS Enum é normalmente para iniciar a ferramenta. Acesse o Li- nux e digite DNS Enum. Se o DNS Enum mostrar erro ou aviso du- rante a execução de qualquer consulta, isso significa que você preci- sa atualizar alguns pacotes para Perl, necessários para o DNS Enum. Figura 9 - DNS Enum Fonte: print do autor (2019). GoLismero O GoLismero é uma solução distribuída gratuitamente, ou open source, para ser utilizada em pentest e, atualmente, é voltado para segurança na web, mas pode ser facilmente expandido para outros tipos de varreduras. O GoLismero é uma solução completa e desen- volvida em Python. Em sua nova versão, o GoLismero adicionou pesquisas bem interessantes que podem ser ainda mais úteis quan- do forem utilizadas. Ele pode executar seus próprios testes de segu- rança e gerenciar muitas ferramentas de segurança bem conhecidas como OpenVAS, Wfuzz, SQLMap, DNS Recon, analisador de robôs, SAIBA MAIS 75 entre outras ferramentas. Ao final, o GoLismero também coleta e unifica os resultados de ferramentas bem conhecidas: sqlmap, xsser, openvas, dnsrecon, theharvester. Figura 10 - GoLismero Fonte: print do autor (2019). Cain e Abel Cain e Abel, muitas vezes conhecido somente por Cain, é uma solu- ção de distribuição gratuita, ou open source, de recuperação de senha para o Microsoft Windows. Ele pode recuperar vários tipos de senhas usando métodos como sniffing de pacotes de rede, quebrando vários hashes de senha por meio de métodos como ataques de dicionário, força bruta e ataques de criptoanálise. Criptoanálise são ataques feitos por meio de tabelas de arco- -íris que podem ser geradas com o programa winrtgen.exe fornecido com Cain e Abel. Ele normalmente usa listas de dicionário como base para quebrar senhas, ataques de força bruta experimentando senhas diferentes, muitas vezes a cada segundo, e informações de decodifi- cação armazenadas nos discos rígidos. O pacote tenta determinar a senha correta. O software também remove as senhas ocultas, mos- trando senhas em determinados pacotes de software. Apreende cha- ves de rede sem fio para informações de login de Wi-Fi esquecidas. O software também oferece alguns benefícios de segurança, apontando onde as senhas são inseguras em um sistema ativo. 76 Sparta O Sparta é uma solução de interface gráfica desenvolvida em Python que tem como objetivo principal reduzir o tempo na aplicação de um pentest. Sua utilização é bem amigável: basta inserir o escopo de rede e um conjunto de ferramentas realiza a varredura, poupando, assim, o trabalho do pentester. Como descrevem os desenvolvedo- res, o foco é analisar os relatórios ao invés de digitar vários coman- dos. Sparta é apenas um recurso adicional. Figura 11 - Sparta Fonte: print do autor (2019). Wireshark O Wireshark é uma solução distribuída gratuitamente, ou open source, que tem como principal objetivo ser o analisador de protoco- lo de rede mais utilizado no mundo. É um sniffer de rede que permite que o atacante veja o que está acontecendo em sua rede minuciosa- mente, ou seja, pacote por pacote trafegado e de fácil acesso. É o pa- drão, de fato, em muitas empresas comerciais e sem fins lucrativos, agências governamentais e instituições educacionais. O desenvol- vimento do Wireshark cresce graças às contribuições voluntárias de 77 especialistas em redes ao redor do mundo e é a continuação de um projeto iniciado por Gerald Combs, em 1998. O Wireshark era conhecido, antigamente, como Ethereal, e tem suas funcionalidades muito parecidas com o tcpdump, mas com uma interface gráfica muito fácil de ser utilizada e entendida, com mais informação e com a possibilidade da utilização de filtros. Através dessa aplicação, é possível controlar o tráfego de uma rede e monitorar a entrada e saída de dados do computador em diferentes protocolos, ou da rede à qual o computador está ligado. Também é possível controlar o tráfego de um determinado dispositivo de rede numa máquina que pode ter um ou mais desses dispositivos. Se o atacante estiver na rede local, com computadores conectados por meio de um hub ou switch, outro usuário pode usar o Wireshark para capturar todas as suas transmissões. Figura 12 - Wireshark Fonte: print do autor (2019). P0f P0f é uma solução gratuita, ou seja, open source, que utiliza uma matriz de mecanismos de impressão digital de tráfego puramente passivos e sofisticados para identificar os participantes por trás de qualquer comunicação TCP/IP acidental em um ambiente atacado por criminosos virtuais, ou por pentester. A versão 3 do P0f é uma reescrita completa da base de código original, incorporando uma 78 grande quantidade de melhorias à impressão digital em nível de rede, e introduzindo a capacidade de raciocinar sobre cargas úteis no nível do aplicativo, como o protocolo HTTP. O P0f possui diver- sos recursos extremamente úteis e interessantes e, entre eles, po- demos destacar a identificação altamente escalável e extremamente rápida do sistema operacional e do software em ambas as pontas de uma conexão TCP ruim, especialmente em configurações onde os pacotes do Nmap são bloqueados, muito lentos, não confiáveis ou simplesmente acionam alarmes. Podemos citar, também, a detec- ção automatizada de configurações de compartilhamento de cone- xão NAT, balanceamento de carga e proxy. A solução pode ser operada em primeiro plano, ou como um daemon, e oferece uma API simples em tempo real para componen- tes de terceiros que desejam obter quaisquer informações adicionais sobre os atores com quem estão conversando. Usos comuns para P0f incluem reconhecimento durante testes de invasão, monitoramen- to de rede de rotina, detecção de interconexões de rede não autori- zadas em ambientes corporativos, fornecimento de sinais para fer- ramentas de prevenção de abuso e miscelânea forense. Figura 13 - P0f Fonte: print do autor (2019). 79 WPScan O WPScan é uma solução de distribuição gratuita, ou open source, que faz a verificação de vulnerabilidades em sites desenvolvidos em WordPress. Ele é capaz de apontar a vulnerabilidade e informar qual exploit pode ser usado para explorá-la. Um dos tipos de ataque em ambiente web é o ataque ao Wor- dPress. Por não ser atualizado, normalmente as vulnerabilidades não são corrigidas e, com esse programa, o atacante consegue fa- cilmente ter acesso a essas vulnerabilidades e atacá-las buscando fazer uma Deface, ou roubar informações contidas nos sites. Figura 14 - WPScan Fonte: print do autor (2019). John the Ripper John the Ripper é uma solução de distribuição gratuita, ou open source, projetada para conter uma grande gama de recursos e ser rápida. Ela combina vários modos de cracking em um programa e é totalmente configurável para suas necessidades específicas. O ata- cante pode até mesmo definir um modo de crackingpersonalizado usando o compilador interno que suporta um subconjunto de C. Além disso, John está disponível para várias plataformas diferen- tes, o que permite que o atacante use o mesmo cracker em todos os 80 lugares. O atacante pode, do mesmo modo, continuar uma sessão de cracking que ele iniciou em outra plataforma. Fora da caixa, John suporta e ainda faz uma autodetecção dos seguintes tipos de hash crypt (Unix): baseado em DES tradicio- nal, bigcrypt, BSDI baseado em DES estendido, baseado em FreeBSD MD5 também usado no Linux e no Cisco IOS e OpenBSD baseado em Blowfish e, agora, também usado em algumas distribuições Linux e suportado por versões recentes do Solaris. Também são suportados, fora da caixa, os hashes Kerberos/AFS e Windows LM (baseado em DES), bem como os códigos de viagem baseados em DES. Quando rodando em distribuições Linux com o glibc 2.7+, o John 1.7.6+ suporta adicionalmente e auto detecta os hashes SHA- -crypt que são realmente usados por versões recentes do Fedora e Ubuntu. Com paralelismo, o OpenMP opcional requer GCC 4.2+, necessidades para ser explicitamente habilitado em tempo de com- pilação, removendo o comentário da linha OMPFLAGS, alocada per- to do início do Makefile. Da mesma forma, quando executado em versões recentes do Solaris, o John 1.7.6+ suporta e auto detecta os hashes SHA-crypt e SunMD5, também com a paralelização OpenMP opcional (requer o GCC 4.2 ou recente Sun Studio) e precisa ser cla- ramente habilitado em tempo de compilação, por remoção do co- mentário da linha OMPFLAGS, alocada perto do início do Makefile e, em tempo de execução, definindo a variável de ambiente OMP_ NUM_THREADS para o número desejado de threads. Figura 15 - John the Ripper Fonte: print do autor (2019). 81 Caro(a) aluno(a), Aqui, vimos que o teste de invasão é uma das análises mais com- pletas no meio da segurança da informação. É uma auditoria quase perfeita e, neste material, apresentamos de forma detalhada quais os tipos utilizados quando um pentester é contratado para fazer esse tipo de auditoria. Vimos, também, o passo a passo que o pentester segue para que tenha sucesso em seu pentest. Demos algumas dicas a respeito de montagem de relatórios e execução do processo de um pentest e apresentamos, também, de forma detalhada, algumas ferramentas mais usadas em um teste de invasão. Até a próxima! SINTETIZANDO 82 UN ID AD E 3 Pentesting e Software de Código Malicioso Objetivos ◼ Apresentar as principais diferenças entre ataques passivos e ativos. ◼ Abordar os ataques maliciosos, bem como seus tipos, sua fi- nalidade e suas categorias. ◼ Compreender o funcionamento básico dos softwares malicio- sos: vírus de computador, vermes de computador, cavalo de Troia e bombas lógicas. 84 Introdução Olá, aluno(a)! A partir de agora, abordaremos o que são os malwares (tam- bém conhecidos como código malicioso), os seus tipos e suas ca- racterísticas. Veremos que o objetivo desses códigos é a invasão no sistema computacional do alvo, além da coleta de informações con- fidenciais. O vírus de computador é um dos exemplos mais conhe- cidos. Esses ataques são classificados de diferentes formas, mas neste material vamos focar em dois tipos de ataques: passivo e ati- vo. Ataque passivo é quando tenta-se obter acesso ou utilizar as in- formações do sistema, mas sem afetar os recursos deste. O ataque passivo, por si só, não é prejudicial, mas a informação recolhida du- rante a sessão pode ser extremamente danosa. O ataque ativo, por sua vez, é quando o cibercriminoso tenta alterar um sistema ou afe- tar sua operação. Falaremos, ainda, sobre como um ataque ativo pode ser com- binado com um ataque passivo, isto é, fazer o uso de informações obtidas durante um ataque passivo, tais como IDs de usuário e se- nhas, ataques de negação de serviço, phishing, worms e outros ata- ques de malware. Vamos juntos desvendar os detalhes dos diferentes tipos de malwares e como eles são úteis nos ataques. Preparado(a)? 85 Ataques de programas maliciosos Existem ameaças aos sistemas de informação que podem ter ori- gem natural, como decorrentes de inundações ou terremotos, ou iniciadas por humanos, bem como por computadores programados por humanos. Um indivíduo que explora uma vulnerabilidade de um sistema de informação perpetra um ataque a ele. Ataques também podem ser iniciados por outros sistemas, como quando computadores enviam uma quantidade enorme de mensagens para um servidor, sobrecarregando-o com mais dados do que ele pode manipular, o que tende a derrubar um ou mais ser- viços. A essa altura, você já sabe que existem diversas formas de mi- nimizar os riscos à segurança da informação, não é? Podemos trazer como exemplos a criação de políticas de segurança e o uso de fire- walls, antivírus e antimalwares, dentre outras possibilidades. Mas claro, vale lembrar que apenas possuir ou fazer o uso dessas ações não é garantia de segurança absoluta nos sistemas. Inclusive, em caso de uma má configuração, as brechas poderão continuar dispo- níveis para uma possível invasão ou permissão para algum malware acessar o seu sistema computacional. Programas que agem de forma maliciosa, divulgando, alte- rando ou destruindo informações que não lhes pertencem, são de- nominados malwares, também conhecidos como softwares malicio- sos. Malware é uma combinação das palavras em inglês malicious e soft- ware, que pode ser traduzido por “programa malicioso” ou “código malicioso”. DEFINIÇÃO 86 Um malware busca executar ações que prejudicarão as ativi- dades de um computador, o que se dá por meio de diversas formas de ataque, como: exploração de vulnerabilidades, autoexecução de mídias ou execução de arquivos previamente infectados. Os códigos maliciosos também envolvem vermes de compu- tador, vírus e programas do tipo cavalo de Troia. Os objetivos des- ses códigos são a invasão e a coleta de informações confidenciais. Existem casos de códigos que são programados para ativarem em um momento específico, ou seja, após serem secretamente instala- dos, eles ficam “adormecidos”, com data e hora pré-determinadas para agir e são conhecidos como bombas lógicas. Outra característi- ca dos códigos maliciosos é a capacidade de multiplicação, da mes- ma forma que infecções biológicas e contaminação automática de outras máquinas na rede. Já sabemos que hoje os sistemas de informação estão co- nectados a redes. Isso possibilita o acesso às informações nos mais diversos lugares, aumentando, dessa forma, o risco de acesso não autorizado, podendo ocorrer abuso e/ou fraude em qualquer ponto de acesso. No caso de sistemas de informações, um dos maiores alvos dos criminosos digitais são os dados. Segundo os autores Kenneth e Jane Laudon no livro Sistemas de informação gerenciais, de 2010, [...] quando grandes quantidades de dados são armazenadas sob formato eletrônico, ficam vulneráveis a muito mais tipos de ameaças do que quando estão em formato manual. Siste- mas de informação em diferentes localidades podem ser interconectados por meio de redes de telecomunicação. Logo, o potencial para acesso não autorizado, uso indevido ou fraude não fica limitado a um único lugar, mas pode ocorrer em qualquer lugar de acesso à rede (LAUDON; LAUDON, 2010, p. 215). Mesmo utilizando firewalls, criando políticas de segurança e separando as redes internas e externas, os sistemas de informação continuam sendo objetos constantes de riscos, vulnerabilidades, 87 ameaças e ataques, que podem comprometer a segurança da infor- mação. O ataque é um tipo de acesso ou uso não autorizado de um equipamento ou sistema. Um computador pode ser o autor de um ataque, um agente usado para conduzi-lo ou o alvo. Da mesma forma, computador pode ser atacante e alvo de um ataque, isto é, quando ele for comprometido por um ataque, poderá ser usado para atacar outros sistemas. Há ataques que não interferem no conteúdo do recurso que foi atingido, chamado deataque passivo, por exemplo, quando foi realizado apenas para a observação e conhecimento de informações. Contudo, quando esse ataque prejudica o conteúdo do que foi ata- cado e modifica, elimina ou gera informações falsas, é chamado de ataque ativo. Vamos entender melhor esses ataques a seguir. Ataques passivos O autor William Stallings, em seu livro Criptografia e segurança de redes: princípios e práticas, de 2015, afirma que ataques passivos são difíceis de se detectar, o que se deve à ausência de alteração de da- dos. Isso faz com que nem emissor nem receptor de mensagens per- cebam que um terceiro as leu ou observou o padrão de tráfego. Ainda assim, há meios que podem impedir tal ação, como a encriptação. A ênfase do combate aos ataques passivos, portanto, não estaria na detecção, mas na prevenção. Durante um ataque passivo, são realizadas capturas de infor- mações transmitidas pela rede. Existem duas situações em que isso ocorre. A primeira delas é chamada de vazamento de conteúdo de uma mensagem e a segunda é conhecida como análise de tráfego. Vamos conhecer e identificar em que situação cada uma delas ocor- rem? • Vazamento de conteúdo de uma mensagem: pode ocorrer durante a execução de algumas destas situações – utilização do correio eletrônico para envio de mensagens, realização de uma chamada telefônica, transferência de arquivos etc. Em qualquer uma delas, há informações sensíveis ou confiden- 88 ciais sendo transmitidas e, por questões de segurança, dese- jamos impedir que sejam acessadas por um invasor, mas, in- felizmente, nem sempre isso ocorre, segundo Stallings (2015). • Análise de tráfego, também segundo Stallings (2015), é con- siderada um tipo de ataque mais leve. Em algumas situações, existe a possibilidade de mascarar a informação que está sendo transmitida na rede, assim, os invasores, mesmo que conseguissem ter acesso a este tipo de conteúdo, não conse- guiriam interpretá-lo. Geralmente, são utilizadas técnicas de encriptação que, mesmo assim, permitem que sejam identi- ficadas outras informações presentes nestas mensagens. Por exemplo, identidade e frequência de comunicação entre os envolvidos, tamanho das mensagens, localização de envio e recebimento etc. Ataques ativos William Stallings (2015) afirma que os ataques ativos envolvem modificação ou criação de outro fluxo, que pode ser modificado ou falsificado. Dividem-se em quatro tipos: disfarce, repasse, mo- dificação de mensagens e negação de serviço. Vejamos as definições de cada um. Disfarce: ocorre quando se tenta passar por outro usuário ou entidade. Também envolve outras formas de ataque ativo, como se- quências de autenticação, em que as informações são capturadas e reproduzidas por outra entidade, para obter benefícios extras. Repasse: envolve a captura passiva de uma unidade de dados e sua subsequente retransmissão, para produzir um efeito não au- torizado. Modificação de mensagens: significa que alguma parte de uma mensagem legítima é alterada, ou que as mensagens são adia- das ou reordenadas para produzir um efeito não autorizado. Por exemplo, uma mensagem significando “Permitir que Carlos Rober- to leia o arquivo confidencial contas” é modificada para “Permitir que João Flávio leia o arquivo confidencial contas”. 89 Negação de serviço: do inglês Denial of Service – DoS, tem o objetivo de desestabilizar o sistema alvo, de forma que os recursos sejam esgotados, impedindo ou degradando a sua utilização ou o acesso a ele. É uma tentativa de sobrecarga em um servidor ou com- putador, para que os serviços fiquem inoperantes. De modo geral, se dá quando um host ou algum nó da rede envia um número sem descrição de requisições ao host por meio de programas maliciosos. Como resultado, o host é sobrecarregado ao máximo, e o acesso a um sistema ou a serviços é impedido por indisponibilidade. Vejamos, a seguir, alguns sinais que podem ser identificados. Quadro 1 - Negação de serviço Fonte: elaborado pelo autor (2019). Ameaças da internet A partir de agora, vamos falar sobre alguns ataques comuns na In- ternet ou tentativas que, em geral, causam bastante dor de cabeça para a vítima. No quadro a seguir, veremos alguns ataques ocorridos em tarefas executadas na internet: furto de identidade, fraude de antecipação de recursos, phishing e pharming. Performance Disponibilidade de uma página da Web Acesso a páginas da Web Spam Performance prejudicada, manifestada, por exemplo, pelas dificuldades para se abrir arquivos. Pode ser que um site específico fique indisponível. Inaptidão para acessar páginas da Web de forma geral. Volume bem mais alto de spams recebidos. 90 AMEAÇAS CARACTERÍSTICAS Furto de identidade Atribuição de uma falsa identidade, objetivando obter vantagens indevidas. Fraude de antecipação de recursos O golpista solicita algum tipo de pagamento ou dados pessoais. Phishing Utiliza a engenharia social em busca de informações. Pharming Direciona a sites falsos para coleta de dados Fonte: elaborado pelo autor (2019). Talvez você já tenha visto ou ouvido falar sobre uma pessoa se passando por outra. É aí que entra o furto de identidade, que se concretiza quando, de maneira ilegal, há a captura de dados e o uso de informações sob essa falsa identidade, para obter vantagens in- devidas. Em geral, esses dados podem ser coletados a partir de sites falsos de internet, ou por meio de perfis falsos em redes sociais. Em alguns casos, ocorre o envio de um e-mail solicitando algumas informações ou exigindo a mudança de senha bancária. Ressalta-se que, quando isso ocorre, as informações serão enviadas para um banco de dados, para serem utilizadas por uma rede de um cracker. Por isso, é indicado não inserir muitas informações em re- des sociais e manter suas senhas sempre atualizadas, além de não enviar mensagens com informações pessoais. Além disso, deve-se manter o antivírus ativo, para não correr o risco de um vírus infectar seu dispositivo. Quadro 2 - Ameaças da internet 91 Todo antivírus tem seu próprio banco de dados, onde são arma- zenados dados sobre as ameaças encontradas em ambientes vir- tuais. Construindo uma espécie de catálogo, os antivírus comparam o comportamento de novos arquivos com o conteúdo do banco de dados. A quarentena funciona como uma espécie de prisão para as ameaças encontradas, mas que ainda não foram identificadas pelo antivírus. A análise heurística consiste em monitorar atividades suspeitas e emitir alertas, caso algum programa ou arquivo mali- cioso tente alterar algo. A fraude de antecipação de recursos ocorre quando o gol- pista solicita algum tipo de pagamento ou dados pessoais. Um bom exemplo são lojas virtuais “fantasmas”, que solicitam um depósito para liberar um tipo de compra. Isso ocorre com muita frequência e deve ser denunciado às autoridades. Uma boa maneira de identificar esse tipo de golpe é prestando atenção em alguns detalhes: quando forem oferecidos valores em dinheiro, deve-se observar se o valor é em moeda internacional; quando solicitado que o depósito seja feito sigilosamente; caso apareça no campo “título da mensagem” pala- vras de impacto, como “urgente”, “atraso”, entre outras. Muitos criminosos utilizam a engenharia social para promo- ver o phishing. Em geral, enviam mensagem eletrônica solicitando algum tipo de informação por meio de um órgão oficial, como ban- cos, órgãos públicos, entre outros. Quase em sua totalidade, essas ameaças são enviadas através de páginas falsas de internet e redes sociais e, em geral, solicitam que seja inserido dado para recadas- tramento. Já o pharming é uma ameaça semelhante ao phishing, mas com um diferencial: o usuário é direcionado para sites falsos por meio de configuração de serviços de DNS (Domain Name System). Dessa maneira, o utilizador, ao acessar o site de interesse de forma automática e rápida, é direcionado a um site falso. SAIBA MAIS 92 Acessar sites de faculdades, de buscaou de compras é simples; você só precisa digitar o nome deste site. No entanto, as máquinas não gerenciam os nomes, afinal, elas só reconhecem números. Esses números são denominados de IP (Internet Protocol), e é necessário que o DNS (Domain Name System) faça a interseção entre os nomes e os números. Um IP é único para cada máquina na internet, possuin- do um formato numérico, por exemplo: 125.115.26.10. Quando você digita um endereço, como www.exemplo.edu.br, para acessar o site da sua faculdade, é responsabilidade do servidor DNS identificar o IP correspondente a esse site. Falsos sites de comércio eletrônico são um tipo de recurso utilizado pelos crackers, em que o cliente faz a compra, efetua o pa- gamento, acompanha o pedido pelo próprio site, mas a entrega não ocorre conforme o combinado. Firewall e controle de acesso No livro Segurança da informação: o usuário faz a diferença, Edison Fontes afirma que “a informação possui uma forte característica: se for destruída e não houver uma cópia, nunca mais seria recuperada” (FONTES, 2006, p. 44). Essa afirmação demonstra o grau de impor- tância do princípio da integridade da informação. Tal princípio não se restringe apenas ao ambiente tecnológico, visto que as informa- ções podem ser armazenadas tanto em meios físicos como digitais. Dessa forma, independentemente do meio em que a informação es- teja armazenada, é preciso garantir sua integridade e a certeza de recuperá-la em qualquer circunstância. Uma das metodologias para resguardar a integridade das in- formações é a construção de um plano de continuidade, que deve ser definido para todas as vulnerabilidades das informações (físi- cas e digitais) existentes na organização. Este plano deve englobar EXEMPLO 93 cópias de segurança e soluções de redundância, e envolve a análise das ameaças, riscos e o nível de perigo ao qual a organização está exposta, para auxiliar no processo de tomada de decisão de investi- mento em segurança. Os ataques às redes são possíveis porque existem algumas fa- lhas nas conexões ou sistemas, isto é, a vulnerabilidade. Segundo o autor do livro Redes sem fio: instalação, configuração e segurança: fun- damentos, de 2014, Alexandre Fernandes de Moraes, vulnerabilidade é uma falha de software que provoca a condição de insegurança no sistema, gerando um possível travamento de uma aplicação e oca- sionando sua indisponibilidade. De forma geral, umas das ferramentas mais eficazes para prevenir uma invasão em computadores pessoais ou redes em- presariais são os firewalls. É também importante entender um dos conceitos mais relevantes quando tratamos de segurança em re- des: a auditoria. A ideia fundamental da auditoria é proporcionar um método que localize os usuários não autorizados e verificar o que e quais ações não permitidas estão sendo realizadas. Os logs são essenciais para identificarmos as tentativas de burlar a política de segurança das informações. Um firewall é uma ferramenta que auxilia na proteção da rede de ataques e invasões. A tradução literal do termo indica uma “parede de fogo”, que objetiva separar uma rede protegida, em geral, a rede interna da externa. Assim, ele protege o limite da rede em que está instalado. A maneira como o firewall realiza a proteção é por meio do controle de acesso, implementando as ACLs (Access Control Lists). ACLs são tabelas que identificam da origem até o destino de cada pacote, controlando a permissão, o monitoramento ou o bloqueio da rede. De forma geral, a operação de firewall é simples e pode ser DEFINIÇÃO 94 comparada ao funcionamento de um roteador, mas também com- plexa, como um gateway, com suas funções e filtros. Como pudemos identificar, os malwares constituem uma va- riação dos vírus e se propagaram com o advento da internet, devido ao poder global de disseminação. São programas que possuem um propósito útil para o usuário, porém, contêm um programa adicio- nal, oculto e com um propósito de invasão (roubo de senhas, disse- minação de vírus, danificação de arquivos, sistemas etc.). Vírus de computador A propagação de vírus de computador pela rede é um incômodo nos dias de hoje, juntamente com cavalos de Troia, worms, hijackers, spy- wares, ransomwares e tudo aquilo que compõe o conjunto de progra- mas maliciosos que as pessoas pensam se tratar de uma única coisa: vírus. No entanto, como já vimos, o termo mais adequado para se referir genericamente a esses programas é malware. Um vírus de computador ou de dispositivos computacionais é basi- camente um programa ou um código de programação que objetiva danificar os dispositivos em que estão alojados, possibilitando a da- nificação de arquivos, captura de senhas, fotos e dados pessoais dos usuários. Ele pode até mesmo passar o controle do dispositivo a um cracker. Os vírus, ao serem executados, agem como os vírus do corpo humano, replicando sua ação para atingir o máximo de equipamen- tos possíveis. Essa propriedade de replicação, na maioria das ve- zes, ocorre pela ação do usuário que, por falta de conhecimento ou descuido, executa um código malicioso e abre brechas para que ele possa se espalhar e contaminar vários dispositivos (computadores, arquivos, bancos de dados, sites etc.). Esses vírus propagam-se de DEFINIÇÃO 95 forma muito rápida por links, e-mails e arquivos infectados e ne- cessitam da ação do usuário para estar em funcionamento em um computador, podendo estar relacionado a outros programas para funcionar. Existem uma grande variedade de vírus e formas de dissemi- nação. Veremos, a seguir, alguns tipos de vírus, classificados pela forma de infecção e os tipos de arquivos que atacam. Quadro 3 - Tipos de vírus e forma de infecção TIPO DE VÍRUS FORMA DE INFECÇÃO Vírus de programa Infecta um programa pela modificação do arquivo que contém seu código-objeto. Vírus de macro É ativado quando um documento é aberto, possibilitando que o vírus procure outros documentos para infectar. Vírus de setor de carga Tipo especial de vírus de programa, que infecta o código no setor de carga de uma unidade de armazenamento, executado sempre que o computador é ligado ou reiniciado. Fonte: adaptado de Goodrich; Tamassia (2013, p. 196). O vírus de programa, geralmente, se infiltra em um progra- ma muito utilizado para atingir o seu objetivo: disseminação. Quan- do estes programas são atingidos, as chances do vírus se manter e replicar são maiores, devido à ampla utilização no mercado. Dessa forma, estes programas são um dos principais alvos. O diagrama 1 demonstra como um vírus se infiltra em um ar- quivo. Em geral, a infecção ocorre com a modificação do código do programa e, quando está instalado, inicia sua ação de dissemina- ção. Existem os tipos de vírus que injetam o seu código de forma 96 particionada, com o objetivo de burlar a sua detecção por antivírus e, quando se encontram instalados, iniciam o processo de dissemi- nação. Diagrama 1 - Tipos de infecção Fonte: adaptado de Goodrich; Tamassia (2013, p. 179). Os tipos de vírus de macro atacam arquivos que possuem al- gum tipo de automação. No caso do editor de texto Microsoft Word, por se tratar de uma ferramenta com grande adesão no mercado, os atacantes utilizam a característica de automatização do programa (macro) para potencializar seu poder de disseminação. Dessa for- ma, duas características são muito utilizadas para invasões: amplo uso do programa e estrutura de execução interna. A disseminação destes tipos de vírus ocorre quando os documentos são comparti- lhados. O vírus de setor de carga (boot sector) é um tipo que apresenta certa dificuldade de remoção, visto que seu alvo são os programas de inicialização do computador, sendo necessário uma ação mais 97 especializada para removê-lo. Softwares antivírus possuem meca- nismos de monitoramento de arquivos de setor de carga para pre- venção destes tipos de vírus. Veremos, a seguir, alguns exemplos de vírus mais conhecidos e suas formas deação. Quadro 4 - Tipos de vírus e forma de ação NOME TIPO AÇÃO Jerusalém Vírus de setor de carga Quando se torna ativo, este vírus se direciona para a memória principal e infecta outros arquivos em execução. Melissa Vírus de macro Envia documentos infectados por e-mail para os primeiros 40 ou 50 endereços da lista de contatos da vítima e pode infectar documentos do Microsoft Word e Microsoft Excel. Elk Cloner Vírus de setor de carga Vírus que atacou o sistema operacional Apple II e escrevia um mesmo poema a cada quinquagésima vez que o computador era inicializado. Sality Vírus de programa Desabilita programas antivírus e infecta outros arquivos executáveis. Fonte: adaptado de Goodrich; Tamassia (2013, p. 181). Para se tornar ativo no processo de infecção, o vírus de com- putador depende da execução do arquivo hospedeiro, ou seja, para o computador ser infectado é necessário que um software já infectado seja executado. Michael T. Goodrich e Roberto Tamassia, autores do 98 livro Introdução à segurança de computadores (2013, p. 178), apontam que um vírus segue um ciclo de infecção, dividido em quatro fases: dormência, propagação, ativação e ação, organizados conforme apresentado no diagrama a seguir. Diagrama 2 - Ciclo de infecção de um vírus de computador Fonte: adaptado de Goodrich; Tamassia (2013, p. 178). Durante o ciclo de infecção de um vírus de computador, na fase de dormência, o vírus fica hospedado, aguardando um mo- mento para execução sem ser detectado. Em seguida, na fase de propagação, contamina outros arquivos/equipamentos. A fase de ativação é o momento em que o vírus se instala e se prepara para iniciar a fase de ação, responsável por executar instruções malicio- sas para as quais ele foi criado, por exemplo, eliminar arquivos es- senciais do disco rígido. Um vírus pode ficar dormente até encontrar o tipo certo de célula não infectada. Quando a encontra, ataca suas defesas e se in- filtra nela. Depois, usa os processos reprodutivos da própria célula para fazer as cópias de si mesmo, que são, por fim, liberadas das células em grandes números, segundo descrevem Michael Goodrich e Roberto Tamassia (2010, p. 195). Assim como as formas de atuação dos vírus são semelhantes às dos biológicos, as medidas de prevenção e remoção também são similares, visto que, quando o computador está infectado, apresen- ta mudanças em seu funcionamento, permitindo aplicar medidas de detecção e remoção por meio de programas antivírus (vacinas). 99 As empresas de programas antivírus atuam como laborató- rios, e trabalham analisando códigos suspeitos e suas ações para, em seguida, produzirem vacinas para combater e prevenir outras infecções. As chamadas assinaturas de vírus são definidas por Goodrich e Tamassia (2021, p. 198) como uma string de caracteres que identi- fica um vírus, sendo um equivalente a uma “impressão digital”. Os programas de detecção de vírus trabalham com uma lista com todas as assinaturas de todos os vírus conhecidos. Um vírus se replica e se executa, geralmente causando danos ao computador. Um meio de multiplicação de vírus, por exemplo, é o envio de e-mails e as mídias removíveis. Deve-se avaliar cui- dadosamente downloads de sites de compartilhamento de arquivos peer-to-peer, ou ponto-a-ponto, bem como e-mails de remetentes desconhecidos. Atualmente, a maioria dos navegadores tem confi- gurações de segurança que podem ser ativadas para uma ótima de- fesa contra ameaças on-line, mas só isso não é o suficiente. Hoje, os ataques a sistemas operacionais são cada vez mais frequentes, e o número de códigos maliciosos cresce diariamente. Vermes de computador (worms) Um worm, ou verme de computador, é um software que se propaga automaticamente nas redes de computadores, enviando cópias de si mesmo de um computador para outro e afetando diretamente a rede e a utilização dos computadores. A seguir, segundo consta na Cartilha de segurança para internet, de 2012, elaborada pelo CERT. br (Centro de Estudos, Resposta e Tratamento de Incidentes de Se- gurança no Brasil), observe como pode acontecer uma infecção dos Worms. • Identificação de computadores: nesta etapa, para que um worm realize a propagação da infecção pela rede, é necessário que os computadores vulneráveis sejam identificados, assim, estarão aptos a receber cópias da ameaça. • Envio de cópias de worms: nesta etapa, após a identificação 100 dos computadores vulneráveis ao ataque, serão enviadas có- pias do worm, utilizando brechas em programas instalados ou pastas compartilhadas em rede, conectadas aos computado- res alvos do ataque etc. • Ativação das cópias de worms: nesta etapa, as cópias são exe- cutadas, para que o processo de infecção inicie, o que pode ser imediatamente após o recebimento da ameaça, ao longo da execução de outros programas que contenham vulnerabilida- des ou pelo usuário, de forma acidental, em mensagens rece- bidas etc. • Reinício do processo: após a infecção, o processo é reinicia- do, sendo que o computador-alvo agora passa a ser o emissor de pragas para outros computadores que contenham alguma vulnerabilidade. Em 2010, o worm de computador Stuxnet se infiltrou na rede de controle do sistema nuclear iraniano e o desativou parcialmen- te. Esse vírus continha um trecho de código malicioso, inédito, executado com maestria, que atacou em três etapas. Inicialmente, dirigiu-se para computadores e redes Microsoft Windows, repeti- damente, executando sua autorreplicação. Logo após, pesquisou o software Siemens Step7, que também roda em uma plataforma Win- dows e é usado para controlar sistemas de controle industrial, como centrífugas. Finalmente, os controladores lógicos programáveis foram comprometidos pelo vírus. Depois de um ataque bem-suce- dido, houve sugestões de que o vírus foi desenvolvido em conjunto pelas agências de inteligência israelenses e dos Estados Unidos para combater o programa nuclear iraniano. Podemos perceber que os worms são vírus dotados de maior capacidade de propagação, pois podem se espalhar de forma au- tomática e rápida para outros computadores, pela internet ou por meio de uma rede local, ao contrário do vírus, que necessita que al- guém copie o arquivo infectado. Uma vez instalado, um worm pode deletar ou alterar o conteúdo de arquivos ou enviar documentos por e-mail. 101 A figura 1, a seguir, apresenta um cenário em que há um processo de infecção de worms. Assim, podemos observar que a propagação se inicia de um computador específico e que, posteriormente, ocor- rem tentativas sequenciais de proliferação do código malicioso nos demais computadores conectados. Se uma máquina estiver vulne- rável, certamente será infectada e, consequentemente, irá tentar infectar as demais. Figura 1 - Processo de propagação de worms Fonte: adaptado de Goodrich; Tamassia (2013, p. 188). Caso a máquina esteja devidamente protegida, sofrerá outros inúmeros ataques, até que haja algum descuido por parte do usuário ou do sistema de proteção. Pode acontecer também um processo de reinfecção, em que máquinas que já foram infectadas se infectem novamente com o worm inicial. Por isso, podemos ver, na figura 1, conforme representado por Michael Goodrich e Roberto Tamassia EXEMPLIFICANDO 102 (2013), que há linhas sólidas, que indicam tentativas bem sucedidas de infecção; linhas tracejadas, ilustrando tentativas de reinfecção; e, por fim, linhas acinzentadas, representando ataques sem sucesso. Um verme de computador difere de um vírus devido a sua atuação. Essa modalidade de ataque não infecta outros programas, mas age por meio de autorreplicação para eliminar arquivos ou abrir acesso ao computador infectado, para coleta e disseminação de in- formações. Este tipo de programa explora vulnerabilidades de progra- mas (sistemas desatualizados e/ou com brechas de segurança), para se espalharem rapidamente por meio da internet. Vejamos a seguir os tipos de vermes e sua forma deatuação. Quadro 5 - Tipos de verme TIPO DE VERME FORMA DE ATUAÇÃO Verme Morris Disseminava-se pela internet. Sua forma de atuação é conhecida como ataques de negação de serviço, visto que se multiplicavam executando vários programas simultaneamente, até bloquear vários serviços. ILOVEYOU Programa disfarçado como uma carta de amor chamada LOVE- LETTER-FOR-YOU.TXT.vbs. É um programa desenvolvido na linguagem Visual Basic que, quando executado, enviava várias cópias desse arquivo para todos os contatos do livro de endereços do usuário e depois substituía documentos e figuras no disco rígido do usuário por cópias de si mesmo. 103 Code Red Sua carga foi concebida para disparar ataques de negação de serviço em sites Web, selecionados a partir de computadores infectados. Blaster Ele se disseminava enviando cópias de si mesmo para computadores aleatórios na internet, ao encontrar outras máquinas com vulnerabilidades para contaminação. Sua carga foi concebida para lançar um ataque de negação de serviço contra o site de atualização da Microsoft. Mydoom Projetado para estabelecer uma rede de computadores, a partir da qual enviava mensagens spam e lançava ataques de negação de serviço. E se disseminavam quando usuários clicavam em um anexo de e-mail. Sasser Ataque de negação de serviço. Ao ser lançado, fez a Delta Airlines cancelar vários voos, porque seus computadores críticos ficaram sobrecarregados. Conficker Projetado para permitir que o computador infectado fosse controlado por uma terceira pessoa, para lançar ataques de negação de serviço, instalar software espião ou enviar mensagens de spam. Fonte: adaptado de Goodrich; Tamassia (2013, p. 204). 104 A detecção de vermes pode ser realizada com técnicas de var- redura de arquivos baseadas em assinaturas, similares às descritas para vírus. Além disso, a varredura e a filtragem, a nível de rede, consistem em analisar o conteúdo de pacotes de rede antes de serem enviados para uma máquina, permitindo detectar e bloquear ver- mes em tempo real. Cavalo de Troia (trojan horse) O trojan horse (cavalo de Troia) é um programa ou fragmento de programa geralmente disfarçado de outros programas ou arquivos. Tem o intuito de permitir a um cracker invadir o computador, cap- turar e divulgar senhas ou informações, destruir arquivos etc. Ele é responsável por executar as funções para as quais foi desenvolvido e executa outras, geralmente maliciosas, sem o consentimento do usuário. Este tipo de malware buscou inspiração na narrativa do ca- valo de Troia que, ao ser dado como presente à cidade de Troia, estava “recheado” de guerreiros gregos, que aproveitaram esta oportunidade para entrar na cidade e atacar seus adversários em um momento oportuno de distração. Tal história inspirou atacan- tes virtuais na construção de programas que, aparentemente, têm utilidade para os usuários, mas possuem, em seu interior, ações de invasão ou destruição, conforme ilustrado na figura 2. Figura 2 - Cavalo de Troia Fonte: adaptado de Goodrich; Tamassia (2013, p. 185). 105 Esse tipo de malware abre caminho para outros programas maliciosos após a infecção, os quais também são usados para cap- turar dados do usuário, como senhas, e transmiti-los para uma má- quina remota. Normalmente, os trojans não se replicam. Eles infec- tam o hospedeiro através do download de um programa ou arquivo. A seguir, observaremos alguns casos reais de cavalos de Troia e sua ação. Quadro 6 - Tipos de trojan TIPO DE TROJAN AÇÃO Troiano AIDS Sua forma de ataque consistia em fornecer informações sobre a AIDS. Foi enviado pelo correio em discos flexíveis, em 1989. Ao ser executado, instalava um “cavalo de Troia”, que permanecia quieto até terem ocorrido diversas inicializações da máquina, para então encriptar o disco rígido do usuário. Após isso, oferecia ao usuário uma senha para descriptografar o disco rígido, somente após o pagamento de uma taxa. Falsa atualização do Internet Explorer Era enviado via e-mail como um arquivo executável, e apresentava-se como uma atualização do Internet Explorer. O programa fazia diversas modificações no sistema do usuário. 106 Falso software antivírus Esses “cavalos de Troia” modificavam o sistema operacional para bloquear a execução de programas antivírus verdadeiros e tentavam roubar as senhas do usuário. Back Orifice O programa de instalação era distribuído por e-mail como um anexo executável com um nome atraente e, quando o usuário abria o anexo, fazia a instalação de um programa que fornecia acesso a um computador remoto, por meio de uma conexão de rede encriptada, para execução de comandos, transferência de arquivos e registrar toques do teclado. Mocmex Programas que foram distribuídos em porta-retratos digitais feitos na China. Quando o porta-retrato infectado era conectado a uma máquina do Microsoft Windows, o programa malicioso era copiado para o computador e coletava e transmitia senhas. Fonte: adaptado de Goodrich; Tamassia (2013, p. 203). Bombas lógicas A bomba lógica é um tipo de cavalo de Troia executado em condições específicas. Os disparadores para essa bomba podem ser, por exem- plo, uma mudança em um arquivo por uma sequência de batidas no 107 teclado em um momento ou data específicos. Observe que, para que um software seja classificado como uma bomba lógica, é necessário que haja uma intenção maliciosa por um ou mais programadores durante o desenvolvimento deste software, segundo Goodrich e Ta- massia (2013). Este tipo de código malicioso ficará inativo até que uma parte específica da lógica do programa ou evento específico o ative. Exis- tem alguns ativadores comuns, como, por exemplo, a chegada de uma data ou hora específicas, certas mensagens enviadas pelo pro- gramador, criação ou exclusão de algumas informações específicas etc. De modo geral, a bomba lógica não pode se replicar. Esta é uma característica que faz com que uma bomba lógica apenas in- fecte as vítimas pretendidas. Ela pode ser usada em muitas áreas, mas seu uso clássico está relacionado ao pagamento de softwares ou à permissão para avaliação de determinado software livre por um determinado período. Isso significa que, se o pagamento não for efetuado em uma data específica, ou caso o período determinado extrapole, a bomba lógica poderá ser ativada e executar os procedi- mentos pré-programados. Em alguns casos, o software testado é automaticamente apa- gado ou a bomba lógica apaga determinadas informações no siste- ma do usuário. Vírus, worms e até cavalos de Troia podem conter bombas lógicas, que executam comandos específicos quando algu- ma condição é atendida. Goodrich e Tamassia (2013) chamam atenção para um caso interes- sante, conhecido por nós como Bug Y2K, que não é considerado uma bomba lógica. As datas, no século XIX, eram codificadas pelos programadores com dois dígitos (xy), como 19xy. Com a chegada do ano 2000, apare- ceram diversos problemas nos sistemas, especificamente naqueles CURIOSIDADE 108 que envolviam cálculos com datas. Nesta situação, não havia malícia por parte dos desenvolvedores, uma vez que, devido às limitações de memória dos computadores da época, eles codificavam desta forma para economizar bits de ar- mazenamento. Vejamos alguns exemplos clássicos de bomba lógica apresen- tados por Goodrich e Tamassia (2013). Durante a programação de um sistema de folha de pagamento, o desenvolvedor pode inserir, propositalmente, trechos de códigos, o que faz com que o sistema desenvolvido falhe, caso seja realizado o processamento de várias folhas de pagamento consecutivas e a contratante ainda não tenha realizado o pagamento do serviço ao desenvolvedor. Em alguns casos, podem acontecer situações em que há ten- tativa de extorsão, combinando uma bomba lógica com uma entra- da clandestina (backdoor). Em um determinado sistema, por exem- plo, o desenvolvedor pode inserir um trecho decódigo que fará com que o sistema falhe em uma data específica. Nesse caso, a bomba lógica será desativada pelo programador por meio de uma entrada clandestina. Entretanto, ele somente fará a desativação caso receba algum pagamento. Outros tipos de programas maliciosos Na sequência, iremos conhecer outros tipos de códigos malicio- sos, desenvolvidos com o intuito de executar danos ao computador como: backdoors, botnets, rootkits e spywares. Esses códigos também podem infectar seu computador e rede por meio de vulnerabilidades de: • programas instalados; • execução de mídias (CD e DVD) ou pen drives; • acessos a páginas web; • execução de arquivos previamente infectados obtidos por 109 mensagens de e-mail etc. Entradas clandestinas (backdoors) O backdoor, também conhecido como entrada clandestina, é um có- digo malicioso que tem a capacidade de realizar acessos remotos aos sistemas ou equipamentos infectados a partir de falhas existentes em programas instalados. Geralmente, a utilização de um backdoor permite que o mecanismo de segurança do sistema seja ignorado, logo, esta ameaça se torna indetectável durante o acesso ao compu- tador ou aos dados. Os backdoors podem ser entendidos como um conjunto de có- digos maliciosos ou programas que têm a finalidade de se aprovei- tar de falhas no sistema computacional. Um dos objetivos é deixar acessos disponíveis para futuras invasões a uma rede de computa- dores e, assim, subtrair informações importantes e confidenciais de uma empresa, organização, órgão governamental etc. Fazendo uma analogia com esse cenário de segurança nas redes, podemos pensar em desbravar uma localidade que foi víti- ma de uma guerra, e nela ainda se encontram centenas de minas terrestres, prontas para serem detonadas ao menor toque. A missão é descobrir onde elas estão, de forma muito cuidadosa, explorando passo a passo para desarmá-las e não ferir nenhum civil. Estas entradas clandestinas são implantadas propositalmen- te por desenvolvedores de softwares. Em alguns casos, há também a alteração de privilégios de segurança, possibilitando, assim, aces- sos alternativos e secretos ao sistema-alvo do ataque. As ameaças de backdoor aumentam quando sistemas ope- racionais multiusuário e rede são usados por muitas organizações. Em um sistema de autenticação, um backdoor usado para acessar o sistema pode estar na forma de um nome de usuário e senha codi- ficados. Um administrador de rede pode intencionalmente criar ou instalar um programa backdoor para solução de problemas ou ou- tro uso oficial. Os crackers usam backdoors para instalar arquivos ou 110 programas de software malicioso, modificar código ou detectar ar- quivos e obter acesso ao sistema ou dados. Até os backdoors instala- dos pelos administradores de rede apresentam riscos à segurança, pois fornecem um mecanismo pelo qual o sistema pode ser explo- rado se descoberto. Como vimos, o backdoor é uma forma não documentada de ganhar acesso a um sistema, criado no sistema por quem o projetou. Pode ser também um programa alterado ou incluído no sistema, para permitir acesso privilegiado a alguém. Botnets Os botnets são softwares que contam com mecanismos de comuni- cação distribuídos com o invasor, que permitem que ele seja con- trolado remotamente. Propaga-se automaticamente, descobrindo vulnerabilidades existentes em software de computadores. A troca de informação entre o invasor e o computador infec- tado ocorre por diversos meios de comunicação, por exemplo, ser- vidores web e redes do tipo peer-to-peer (P2P). As instruções para que ações maliciosas possam ser executadas como, por exemplo, aquelas responsáveis por realizar ataques, captura de dados ou en- vio de spam, são enviadas durante a comunicação entre os envolvi- dos. Segundo a já mencionada cartilha do CERT.br, de 2012: [...] um computador infectado por um bot cos- tuma ser chamado de zumbi (zombie compu- ter), pois pode ser controlado remotamente, sem o conhecimento do seu dono. Também pode ser chamado de spam zombie quando o bot instalado o transforma em um servidor de e-mails e o utiliza para o envio de spam (CERT. br, 2012, p. 26). De modo geral, um bot trata-se de um software que controla o dispositivo invadido de forma remota, além de propagar as infec- ções em busca de pontos vulneráveis na rede ou no computador. Já uma botnet, formada pela junção das palavras em inglês robot (robô) e network (rede), é uma rede de agentes de software que executam 111 atividade autônoma, formada por milhares de computadores. Se- gundo a cartilha do CERT.br (2012), quanto mais zumbis participa- rem da botnet, mais potente ela será. Um dos mais notórios ataques recentes foi o Mirai, uma bot- net que se infiltrou no provedor de domínio Dyn e derrubou muitos sites por um longo período, em um dos maiores ataques distribuídos de negação de serviço (DoS) já vistos. Os hackers obtiveram acesso à rede explorando dispositivos mal protegidos. Tais ataques podem ocorrer quando o hacker encontra alguma vulnerabilidade nos dis- positivos que estão conectados. A partir do momento em que ele in- vade o dispositivo, começa a manipular os dados até inutilizá-los. Por isso, ressalta-se a importância de atualização dos dispositivos pelos fabricantes, para impedir tais vulnerabilidades. Rootkit É um software que permite o acesso em um computador e, ao mesmo tempo, esconde sua presença ao se integrar ao sistema operacio- nal, para que o disco rígido não consiga fazer sua leitura. Segundo a cartilha do CERT.br, de 2012, eles eram usados para manter acesso privilegiado a outros computadores, sem precisar recorrer aos mé- todos utilizados para efetuar a invasão propriamente dita. O rootkit é um dos tipos de malwares mais perigosos, pois pode ser usado para perpetrar diversas maldades, como capturar dados do usuário. O grande problema está na sua capacidade de difi- cultar a sua detecção pelos softwares antivírus ou outros programas de segurança, pois eles conseguem se “esconder”. Além disso, estes programas são de difícil remoção. Os rootkits ignoram facilmente a proteção padrão do computador. É necessário usar programas espe- ciais, voltados especificamente para encontrar rootkits, com vários métodos de análise. Alguns antivírus contêm módulos adicionais para remoção dessas ameaças. Na maioria das vezes, os rootkits são usados para capturar o computador do usuário. Esse malware não apenas se esconde dos antivírus, mas também oculta outros softwares mal-intencionados. Em algumas situações, um rootkit possui uma função backdoor, que 112 permite que um criminoso se conecte remotamente a ele. Spyware Outro software malicioso é o spyware (espião), um programa seme- lhante ao vírus, criado para realizar um monitoramento das ativi- dades de um sistema e enviar as informações adquiridas para ter- ceiros. Os spywares são baixados pelo navegador de internet e, nor- malmente, são utilizados para roubo de informações pessoais. Esta ameaça possui duas formas de utilização, a legítima e a maliciosa. Ambas se diferem em relação ao processo de instalação, às diversas ações realizadas para coleta de informações, aos tipos de informa- ções que são monitoradas, e ao objetivo de utilização do que foi co- letado. A forma legítima acontece quando este sistema é utilizado por alguém que autorizou sua instalação para verificar como o com- putador está sendo utilizado. Nesse caso, esta análise busca identi- ficar se o equipamento está sendo utilizado de forma inadequada ou sem autorização. Já a forma maliciosa ocorre quando diversas ações são executadas com o objetivo de violar a segurança e a privacidade do usuário. Conforme a cartilha do CERT.br, em 2012, alguns tipos de spywares são: • Adware: instala vários pequenos programas de propagandas (anúncios) no navegador de internet. Também pode instalar ícones indesejados na área de trabalho do computador. • Keylogger: captura e armazena teclas digitadas pelo usuário.Geralmente, sua ativação é realizada por uma ação prévia do usuário durante o acesso a sites de comércio eletrônico ou si- tes bancários que possuem Internet Banking. • Screenlogger: captura e armazena a posição do cursor e da tela apresentada no monitor do computador. Seu funcionamento é muito parecido ao do keylogger. Também é utilizado com o 113 objetivo de capturar informações digitadas, utilizando tecla- dos virtuais em sites bancários ou Internet Banking. Em determinadas situações, os spywares permitem que ocor- ram o monitoramento e a captura de informações relacionadas à navegação do usuário ou até mesmo durante o preenchimento de formulários. Caro(a) aluno(a), Neste material, identificamos que os ataques possuem duas moda- lidades: passivo e ativo. É notório que os ataques passivos possuem recursos que dificultam sua identificação, mas existem meios que podem ser aplicados para impedir sua execução. Verificamos tam- bém que o ideal é que os ataques do tipo ativo sejam rastreados e identificados, contribuindo, assim, com sua prevenção. Além disso, vimos que, por mais que utilizemos as ferramentas de segurança em sistema de informação, as ameaças estão em cons- tante inovação, tornando esse sistema vulnerável. Sendo assim, compreendemos como ocorrem os ataques maliciosos, bem como seus tipos, sua finalidade e suas categorias. Como complemento, apresentamos o funcionamento básico de alguns softwares malicio- sos. Abordamos o vírus de computador, isto é, um software malicioso que se multiplica, ampliando cópias de si e se tornando parte de outros softwares e arquivos. É responsável por infectar o seu hospedeiro e tende a se multiplicar ou a destruir o hospedeiro. Pudemos verificar que vermes infestam a rede e acabam sobrecar- regando recursos, liberando acessos e realizando ações remotas sem que o usuário desconfie. Os worms são tipicamente programas independentes, programados para se autorreplicarem nos sistemas infectados e procurar outros nas redes que estejam acessíveis. O worm cria cópias de si próprio e infecta outros computadores atra- SINTETIZANDO 114 vés da internet, redes locais, trocas de e-mails, de arquivos etc. Vimos que o Cavalo de Troia, por sua vez, é um programa que en- fraquece as defesas do hospedeiro e se passa por outro programa inofensivo ou gera informações falsas. Pode se instalar como um serviço do sistema operacional ou um certificado, por exemplo. Exploramos o funcionamento das bombas lógicas, um programa ou seção de um programa projetado com objetivo malicioso, sendo ati- vado por alguma condição lógica. Finalizamos comentando sobre spywares, softwares espiões que pas- sam informações do computador infectado, e keyloggers, responsá- veis por capturar e enviar ao atacante informações que são digitadas pelo alvo, e vimos que os alvos principais são as senhas. Bons estudos e até a próxima! UN ID AD E 4 Objetivos ◼ Identificar as ferramentas, técnicas e quais são as melhores medidas preventivas para garantir segurança contra softwares de códigos maliciosos. ◼ Compreender o que é auditoria de sistemas de informação e qual a sua finalidade. ◼ Apresentar procedimentos para elaboração de relatórios de auditoria em segurança da informação. Pentesting e Software de Código Malicioso 116 Introdução Olá, aluno(a)! Neste material, apresentaremos as melhores ferramentas, técnicas e medidas de segurança para se prevenir contra softwares de códigos maliciosos. Alguns exemplos que veremos com mais detalhes são os antivírus, o firewall e o proxy, entre outros métodos de proteção. Além disso, falaremos sobre como deve ser feita uma auditoria de sistemas de informação e veremos como deve ser elaborado o re- latório dessa auditoria, para que você possa aplicar esses conheci- mentos em seu trabalho. Pronto(a) para aprender mais? Vamos lá! 117 Medidas Preventivas de Segurança Contra Softwares de Código Malicioso Existem três fatores determinantes para as falhas nos softwares de- senvolvidos ao longo dos tempos. O primeiro é a complexidade dos códigos necessários para a construção de um software. De acordo com a empresa de consultoria Wired, o Google tem em torno de 2 bilhões de linhas de códigos. Em comparação, o Facebook contém aproximadamente 20 milhões, e a Microsoft chega a ter 40 milhões (MCCLURE, 2014). As inúmeras funcionalidades de software re- sultam em uma grande quantidade de códigos, desde cadastro de funcionário, gerar planilhas, tirar fotos, acesso ao GPS etc. Inde- pendentemente da plataforma (Windows, Android, Linux), a quan- tidade de códigos é sempre um fator a ser levado em consideração pelos programadores. Você sabia que existem casos em que empre- sas oferecem recompensas aos usuários por falhas encontradas em seus sistemas? Para você ter uma ideia, a quantidade de bugs encontrados em softwares de tecnologia moderna pode chegar a 50 para cada mil linhas de código (KLOC – kilo of lines of code), o que é uma ótima notícia para os crackers de plantão. O segundo fator está concentrado na extensibilidade dos sis- temas atuais, devido a eles trabalharem junto a máquinas virtuais, cuja tecnologia de segurança está arquitetada pelas verificações de acesso em tempo de execução. Devemos lembrar que vírus e worms (malwares de propagação rápida e autor replicante) são basicamen- te construídos a partir de códigos móveis, o que aumenta muito o risco de invasão. O terceiro fator está ligado diretamente ao aumento expres- sivo no número de conexões entre computadores, o que aumentou também o número de vetores de ataque. Com o grande avanço tec- nológico, temos o desenvolvimento de novos processos de entrega da informação pela rede, gerando uma quantidade maior de códigos e, como vimos anteriormente, aumentando o número de possibili- dades de bugs. As redes que possuem alta densidade de dados trans- mitidos tornam-se mais vulneráveis a ações de worms de rede. 118 O que se observou desde o ano 2000 é que a velocidade de mudança dos softwares é maior do que o avanço da tecnologia em termos de segurança e, para alguns especialistas da área, a tendên- cia é piorar ainda mais esse cenário. Em complemento, existem duas vertentes quando se fala so- bre segurança em tecnologia: a segurança física, como portas, co- fres e câmeras; e a segurança virtual, como antivírus e firewall. O firewall e o antivírus possuem funções diferentes. O firewall filtra informações que trafegam pela rede com o objetivo de impedir ata- ques externos. Já o antivírus é instalado diretamente no computa- dor e realiza uma varredura na máquina em busca de vírus. Ou seja, o firewall analisa informações que trafegam pela rede e o antivírus analisa informações na máquina. Uma das formas de assegurar um elemento da tecnologia, tanto física quanto virtual, é utilizando uma barreira de segurança, que pode ser qualquer coisa colocada entre dois elementos para im- pedir um ataque. Existem alguns tipos de barreiras. A autora Adria- na Beal menciona alguns exemplos, confira. Exemplos de barreiras que podem ajudar a for- mar um perímetro de segurança incluem sa- las-cofre, roletas de controle de acesso físico e uso de token ou dispositivo biométrico para autenticação de pessoas antes da liberação da passagem. Medidas detectivas de invasão de um perímetro de segurança podem incluir circuitos internos de TV, alarmes e sirenes e detectores de incêndio; entre outras medidas preventivas ou redutoras do impacto disponí- veis estão os climatizadores de ambiente, de- tectores de fumaça e acionadores de água para combate a incêndio (BEAL, 2008, p. 81). CURIOSIDADE 119 A ISO/IEC 17799:2000, agora conhecida como ABNT NBR ISO/IEC 27002:2013, define perímetro de segurança como “quaisquer ele- mentos que estabeleçam uma barreira ao acesso indevido”. A se- gurança de informações protege as informações contra uma ampla gama de ameaças para assegurar a continuidade dos negócios, mi- nimizar prejuízos e maximizaro retorno de investimentos e opor- tunidades comerciais (MOLINARO, 2010). Os sistemas de informação não trazem somente benefícios, mas também uma série de desafios para as organizações. Entre os maiores desafios das organizações, está o de manter a segurança dos dados e informações. As maiores ameaças relacionadas à TI que uma organização enfrenta são o roubo de equipamentos, a ação de crackers, a invasão de privacidade (mala direta, históricos de crédi- to), a propagação de vírus pela rede e a ameaça à privacidade. Não existe um método que garanta total segurança de um sistema informatizado, entretanto, a combinação de diversas ações pode reduzir drasticamente a possibilidade de que algum incidente ocorra. Você pode agora se perguntar: quais serão os próximos passos em termos de tecnologia para combater essas atividades maliciosas e que comprometem a segurança mundial? Vejamos algumas ações recomendadas: • Fazer download de um software/aplicativo antivírus que pos- sa detectar e neutralizar malwares e bloquear conexões com DEFINIÇÃO IMPORTANTE 120 sites maliciosos de phishing, seja no Windows, Android, Mac, iPhone ou em uma rede corporativa. • Fazer o download de softwares e aplicativos de locais seguros e que fazem verificação de segurança, como o Google Play e o App Store. Nenhum banco ou sistema de pagamento on-line solicitará credenciais de log in, número de CPF ou números de cartão de crédito por e-mail. • Atualizar o sistema operacional e os softwares utilizados nas máquinas, para impedir que crackers acessem o seu compu- tador por meio de vulnerabilidades em programas desatua- lizados. • Evitar visitar sites desprotegidos. • Nunca baixar anexos não verificados nem clicar em links em e-mails desconhecidos. • Usar senhas longas e complicadas, além de evitar usar as mesmas contas e senhas para diversos serviços. Afinal, os cri- minosos estão sempre procurando vulnerabilidades em siste- mas e, se um cracker descobrir uma das senhas utilizadas por vários serviços de uma empresa, ele terá acesso a múltiplos sistemas. Avaliar o valor da informação, a vulnerabilidade dos siste- mas, os perigos aos quais tais sistemas estão expostos e as diversas formas de prevenção fazem parte do procedimento denominado de gestão de riscos. A gestão de riscos procura garantir a segurança da informação via ações que possam inibir ou até mesmo inviabilizar qualquer ação criminosa, garantindo aos interessados que todos os requisitos de segurança e qualidade da informação sejam mantidos. Dentre as diversas ações que podem ser tomadas para garan- tia da segurança da informação estão os procedimentos de segu- rança da rede. Sabe-se que redes sem fio, apesar de cômodas e de não exigirem que cabos sejam transpassados por diversos pontos de uma organização, oferecem menor segurança do que redes cabea- das. Entretanto, em alguns casos, o uso destas redes é indispensável. 121 A utilização de VPN (Virtual Private Network) é uma boa opção para dificultar a ação de criminosos, bem como a utilização de sis- temas específicos de segurança de rede, conhecidos como firewall. Outra importante ação que busca garantir a segurança é o monito- ramento, a constante verificação do fluxo de dados, acesso (IP das máquinas que acessaram a rede), o tempo em que permaneceram conectados e sua localização. Outra forma de reduzir as vulnerabilidades dos sistemas de informação de uma organização é a realização de controles inter- nos e conformidade. Em muitas organizações, os verdadeiros pe- rigos não são externos, mas sim internos. Algumas vezes, até ações involuntárias podem expor as organizações e deixá-las à mercê de criminosos digitais. Sendo assim, definir regras claras de utilização dos computadores, internet e demais equipamentos, além de man- ter o controle interno das operações/utilizações e a constante veri- ficação dos equipamentos e sistemas (processo de auditoria) podem aumentar a segurança dos dados e informações de uma organização. A auditoria é de suma importância e deve ser realizada pe- riodicamente, não somente em equipamentos físicos, mas também nas operações realizadas por sistemas. Não é incomum que sistemas desenvolvidos por terceiros ou adquiridos pela internet, até mesmo de fontes confiáveis, realizem alguma ação fraudulenta ou apresen- te alguma falha grave que comprometa sua segurança. Por fim, ainda que todas as medidas de segurança sejam ado- tadas, toda organização deve manter um plano de contingência não somente para sua estrutura de TI, mas para todo o negócio. Algumas catástrofes, por mais absurdas que sejam, podem ocorrer e quando ocorrem, podem ser determinantes para o fim de uma organização. Na figura 1 podemos ver algumas ferramentas que ajudam a manter a segurança ao usar a tecnologia. 122 Figura 1 - Métodos de segurança Fonte: adaptado de Shutterstock. O antivírus, o firewall, a navegação privada, a proteção de da- dos por meio de criptografia, a autenticação e o certificado digital são algumas das ferramentas que podem permitir que as empresas garantam a segurança. A seguir, conheça em detalhes, algumas medidas de proteção utilizadas. Antivírus Um antivírus é como uma vacina, pois ele protege o nosso compu- tador de softwares que podem causar danos, que são os chamados vírus. Ele é um software que detecta, bloqueia e remove programas maliciosos (malwares), como vírus e worms. Seu uso protege e pre- 123 vine redes, computadores e outros aparelhos dos danos que os mal- wares causam a estes dispositivos. Não é incomum que um vírus ataque computadores. Em 2017, mais de 100 países foram atacados pelo mesmo vírus, o ransomware WannaCry. De acordo com Vinicius Munhoz, no artigo “WannaCry, o ransomware que fez o mundo chorar na sexta-feira (12)”, publi- cado em 2017, a possível causa foi uma grave falha no sistema ope- racional do Windows. Com isso, houve roubo de senhas e arquivos de milhares de pessoas que, posteriormente, receberam pedido de resgate para a devolução dos dados. Os antivírus conseguem verificar o código executável de um aplicativo e perceber se há padrões de códigos maliciosos já conhe- cidos. Daí a necessidade manter a base de dados do antivírus atuali- zada, podendo detectar mais trechos de código malicioso. O antivírus usa um ou mais métodos de identificação como escaneamento, sensoriamento e verificação de integridade para im- pedir a entrada de vírus. Uma vez detectada a presença do malwa- re, o programa antivírus pode removê-lo, colocar em quarentena e usar outros meios. O programa antivírus pode ser comprado como uma solução à parte ou embutida em outro programa. O problema principal é que uma ou outra solução estão sempre defasadas com relação aos mal- wares. Até porque não existe como adivinhar quais serão as caracte- rísticas de um novo programa malicioso. Devido a isso, o antivírus nem sempre consegue detectar e eliminar um vírus. Quando o programa desconfia da existência de um vírus, ba- seado no comportamento do programa hospedeiro, o arquivo sus- peito é colocado em quarentena, ou seja, gravado em alguma pasta própria do antivírus até que o malware possa ser removido. Normalmente, este tipo de segurança é utilizado para de- tectar malwares que ainda não constam no dicionário do antivírus e, por isso, apresentam alguns problemas, como quando o aviso é emitido depois que o programa malicioso iniciou sua execução e não se sabe quais problemas já causou. Este é um procedimento erráti- co, já que não são raros os alarmes falsos provenientes de detecção 124 errada de um vírus. Outro aspecto falho neste tipo de detecção se dá porque o programa em geral emite um aviso de alerta, mas dá ao usuário a opção de ignorar ou não o perigo. Firewall Com o aumento dos crimes cibernéticos e novas regulamentações governamentais referentes à privacidade, toda organização de soft- ware deve instituir políticas que protejam os dados em todos os ní- veis, estabelecendo a proteçãopor meio de firewalls para as aplica- ções da Internet (WebApps) e garantindo que o software não tenha sido alterado internamente, sem autorização. No mundo digital, o tráfego de dados em uma rede deve ser controlado. Além disso, é importante que pontos específicos desse tráfego sejam identificados. Para definir a segurança perimetral em uma rede é importante que sejam definidos quais pacotes podem trafegar e quais devem ser barrados (GALVÃO, 2015). Um firewall, também conhecido como ‘parede de fogo’, con- siste em uma barreira de proteção entre um computador ou uma rede interna protegida e seu ambiente externo, como a Internet (BEAL, 2008), conforme ilustrado na figura 2. Ele representa um mecanismo de segurança da rede que funciona monitorando as en- tradas e saídas na rede de entrada e saída e permite ou bloqueia o tráfego de acordo com um conjunto de regras de segurança. 125 Figura 2 - Componentes de um firewall Fonte: adaptado de Shutterstock. O firewall é atualmente o mecanismo de proteção e filtragem mais utilizado. Podendo ser um hardware ou um software, ele veri- fica as informações advindas da internet ou de outra rede. Sua fun- ção é permitir ou impedir um host de acessar informações de acordo com o que foi configurado. De modo geral, o firewall é uma ferramenta criada para impe- dir a execução de ações maliciosas originadas de outras redes como, por exemplo, um malware que utiliza alguma porta lógica para se instalar em um computador ou um spyware que envia dados de di- gitação para a internet. Neste sentido, ele também impede que um host envie softwares maliciosos para outros hosts da rede, como pode ser identificado no esquema ilustrado na figura 3 (GALVÃO, 2015). 126 Figura 3 - Funcionamento de um firewall Fonte: adaptado de Galvão (2015). Para Tanenbaum e Wetherall: os firewalls se tornaram muito mais sofis- ticados com o tempo, em uma corrida contra os invasores. Originalmente, os firewalls apli- cavam um conjunto de regras independentes para cada pacote, mas se tornou difícil escre- ver regras que permitissem a funcionalidade e impedissem o tráfego indesejado. Atualmente, os firewalls em estado de conexão mapeiam os pacotes do cabeçalho TCP/IP para cuidar da conectividade. Isso permite o uso de regras que, por exemplo, possibilitam que um servi- dor web externo envie pacotes para um host interno, mas somente se o host interno pri- meiro estabelecer uma conexão com o servi- dor web externo (TANENBAUM; WETHERALL, 2011, p. 514). As principais características do firewall são as seguintes: • todo tráfego entre a rede interna e a externa é verificado pelo firewall; • apenas o tráfego autorizado passará pelo firewall, o restante será bloqueado; • realiza o controle de serviço, determinando quais serviços de 127 internet estarão disponíveis para acesso; • executa o controle de comportamento, controlando como cada serviço poderá ser utilizado (por exemplo: AntiSpam); • gerencia o controle de sentido, determinando o sentido de fluxo em que os serviços serão iniciados. As primeiras versões de um firewall, que surgiram na década de 1980, se comportavam como uma filtragem simples de pacotes, sendo uma tecnologia relativamente limitada. As versões existentes atualmente são mais modernas e anali- sam cada pacote de dados por um cabeçalho com diversas informa- ções, como IP de origem, endereço de IP do destino, tipo de serviço, tamanho do pacote etc. A partir dessas informações e de regras es- tabelecidas na política de segurança de rede, os pacotes são libera- dos ou não. O firewall força todos os pacotes a passarem por uma vistoria detalhada, a partir de critérios definidos na política de segurança de rede. Os pacotes que não atenderem a algum critério serão descar- tados, e os que atenderem às regras serão remetidos ao destino (host interno), conforme apresentado na figura 4. Figura 4 - Criação de regras de filtragem aplicadas em pacotes Fonte: Editorial Digital Pages (2019). É relevante destacar que todo esse conjunto de tecnologias é muito importante para a defesa, mas não podemos esquecer das atitudes das pessoas. A mais poderosa tecnologia pode ser imple- mentada em uma empresa, porém, se não houver consciência e 128 intenção benéfica por parte de seus usuários, o processo de defesa poderá fracassar ou ser enfraquecido. Assim, é necessário que as re- gras sejam aplicadas com rigor e que a consciência de boa intenção prevaleça na organização. Todo esse conjunto de tecnologias e o comportamento pes- soal deve ser implantado de acordo com as políticas de segurança da informação. Redes privadas virtuais As redes privadas virtuais são denominadas VPN (Virtual Private Net- work). Elas permitem o acesso de informações corporativas a longa distância. Um fator essencial na VPN é a segurança, afinal, como os dados são transmitidos pela internet, que é um meio não seguro, faz-se necessário que a VPN garanta a segurança das informações que são trafegadas. Essa segurança ocorre a partir da criação de um túnel crip- tografado, onde apenas a origem e o destino consigam identificar a informação, mesmo que ocorram intercepções. Uma vantagem da VPN é a redução de custo, afinal, utilizan- do a VPN não se faz necessária a contratação de links dedicados de longa distância; utiliza-se a internet. Observe, no quadro 1, a seguir, algumas características que são necessárias para que a implemen- tação da VPN aconteça. Quadro 1 - Características de segurança de uma VPN CARACTERÍSTICAS DESCRIÇÃO Autenticação de usuários Restringir o acesso à VPN ape- nas às pessoas autorizadas. Gerenciamento de endereço O endereço do usuário interno não deve ser divulgado na rede externa. 129 Criptografia de dados A criptografia dos dados é es- sencial para garantir que ape- nas a origem e o destino possam conhecer o conteúdo da infor- mação trocada, afinal, se essa informação for roubada, não será possível compreender seu conteúdo. Gerenciamento de chaves As chaves de criptografia devem ser conhecidas apenas pela ori- gem e pelo destino e devem ser trocadas com frequência. Suporte a múltiplos protocolos A VPN deve permitir ser imple- mentada em diversos protoco- los. Fonte: adaptado deTanenbaum; Wetherall (2011). Para que você entenda melhor a VPN, é importante conhecer o ter- mo tunelamento, que consiste no processo de criptografar o pacote que será transmitido. Em seguida, ocorre o encapsulamento desse pacote, ou seja, o pacote é transportado pelo túnel ou canal de co- municação e, quando chega ao seu destino, acontece o desencapsu- lamento e a descriptografia do pacote. Essa tecnologia garante que as informações cheguem de maneira segura ao seu destino. A VPN é uma tecnologia que deve ser planejada para trazer benefícios para a empresa. Vejamos alguns deles: • ampliação da conectividade; • aumento da produtividade; DEFINIÇÃO 130 • redução de custos com links dedicados para conexões a longa distância; • redução de custos com locomoção e hospedagem de colabora- dores de outras unidades. Proxy O proxy é um intermediário a todas as solicitações feitas pela rede interna para recursos que se encontram em outros servidores, por exemplo, quando um cliente que está na rede interna e quer se co- nectar à rede externa, a requisição necessariamente passará pelo proxy, seja requisitando arquivos, uma página web ou serviços. Des- sa forma, a responsabilidade por avaliar a requisição no intuito de controlar e tornar a complexidade da requisição simplificada é do proxy. Ele funciona como um filtro de conteúdo, conforme ilustração da figura 5. Figura 5 - Funcionamento de um servidor proxy Fonte: adaptado de Seobility.Net. Nesse caso, os servidores proxy trabalham em conjunto com filtros de pacotes que são configurados em um firewall, que poderão bloquear sites específicos, grupos de sites, aplicações de internet etc., de acordo com a política de segurança de uso da internet na empresa. Apesar dofirewall e do proxy atuarem no monitoramento do tráfego das informações, a principal diferença é que um proxy in- 131 termedia as conexões de rede para determinados objetivos de filtro de navegação ou cache, enquanto o firewall atua com o bloqueio de pacotes de acordo com as regras de segurança. Um bom exemplo é quando, em uma empresa, o firewall está configurado para bloquear o acesso de todos os usuários a sites de redes sociais, caso deseje liberar o acesso a um computador em específico, configura-se este acesso no servidor proxy que possui. AntiSpam O funcionamento dos sistemas de e-mail utiliza diversos protoco- los para troca de mensagens, sendo o mais conhecido o Simple Mail Transfer Protocol (SMTP), que se baseia em texto. Essa simplicidade converte-se em uma grande ameaça, pois esse nível de transmissão não garante a autenticidade e a integridade da mensagem fim a fim. Nesse sentido, Adriana Beal (2008) afirma que a segurança de rede não é suficiente, por exemplo, para impedir a adulteração de uma mensagem de e-mail enquanto ela é transportada passan- do por diversas sessões de rede diferentes, e sendo armazenada em um grande número de sistemas desconhecidos quando em trânsito: uma adulteração da mensagem poderia ocorrer em vários pontos da transmissão, como em um gateway, que realiza uma função de ar- mazenar e reenviar o e-mail, não sendo possível atribuir um grau de confiança adequado a esses sistemas intermediários. Devido ao grau de exposição a falhas de segurança dos siste- mas de e-mail, é fundamental que a política de segurança da em- presa atribua responsabilidades aos funcionários quanto ao uso consciente do e-mail referente ao conteúdo, forma de envio, anexos permitidos e uso estritamente como ferramenta de trabalho. Tais diretrizes estão contidas na norma ISO/IEC 27002: 2013, item 13.2.1. Desde o aparecimento do primeiro spam, em 1994, a prática de enviar e-mails não solici- tados tem sido aplicada com vários objetivos distintos e também utilizando diferentes apli- cativos e meios de propagação na rede. Os tipos de spam identificados até o momento são cor- 132 rentes, boatos, lendas urbanas, propagandas, ameaças, pornografia, códigos maliciosos, fraudes e golpes, spIM (spam via Instant Mes- senger), spam via redes sociais e spit (spam over internet telephony) (CERT, 2012). Os filtros de conteúdo por e-mail são recursos para evitar o recebimento de spams e mensagens que possuem arquivos que po- dem conter vírus e contaminar toda a rede. O filtro antispam já vem integrado a maioria dos Webmails e programas leitores de e-mails e permite separar os e-mails desejados dos in- desejados (spams). A maioria dos filtros passa por um período inicial de treinamento, no qual o usuário seleciona manualmente as mensa- gens consideradas spam e, com base nas clas- sificações, o filtro vai “aprendendo” a distin- guir as mensagens (CERT, 2012). Esse tipo de filtro funciona, em geral, com base no reconhe- cimento de padrão para identificar se o e-mail é fruto de mensagens do tipo spam ou se seus arquivos são suspeitos de portar vírus. Apesar de toda infraestrutura disponível para segregação de redes, firewalls e controles de acesso, a segurança de rede e aplicati- vos não alcança o nível de segurança desejado para o envio e recep- ção de e-mails. Tal comunicação está vulnerável ao conhecimento do usuário que recebe e envia os e-mails, visto que um simples ane- xo com código malicioso poderá comprometer toda a rede de dados. Backup e redundância de dados Um backup é uma técnica que permite uma conduta preventiva quanto a cópia de segurança de arquivos e demais informações em caso de um acidente que leve à perda de dados. Permite a garantia de que o acesso às informações estará disponível quando ocorrer um problema. Além disso, garante que existirá um plano de backup dos da- dos dos usuários, de modo que o curso normal das operações co- 133 merciais não seja interrompido. Nesse caso, alguns pontos princi- pais devem ser observados para o backup de dados, que são: • identificar o que necessita de backup; • o tipo e melhor horário para o backup; • designar um responsável para acompanhamento dos logs de execução para monitoramento das falhas. Já a redundância de dados diz respeito a possuir cópias dos dados em outros computadores, podendo ser em formato de backup ou mesmo em funcionamento em um servidor, disponibilizando uma segunda opção de acesso caso o servidor principal não esteja disponível. Normalmente, são mantidas três gerações de cada arquivo (avô, pai e filho), pois em caso de existência de problemas em algu- mas das gerações, outra tomará o seu lugar. Outra medida importante é a manutenção do backup em local físico distante de onde está instalado o banco de dados dos arquivos originais. Esta é uma medida óbvia, mas pouco lembrada. Os backups são recursos fundamentais na garantia da integri- dade das informações, evitando que sejam perdidas por exclusões com intenções maliciosas ou não. O gráfico 1 lista algumas situações em que ocorre perda de dados, como: falhas, ações intencionais, ações sem intenção e desastres. 134 Gráfico 1 - Estatísticas relacionadas à perda de dados Fonte: adaptado de EASEUS, [s.d.]. Acesso em: 21/10/2019. Ao se pensar em backups é necessário pensar na frequência com que eles serão realizados. Isso deve ser decidido de acordo com a importância dos dados e da velocidade com que eles crescem. Para facilitar este processo existem ferramentas que permitem fazer a gestão dos backups, agendando o horário e para onde as cópias serão transferidas. Segundo a página oficial do Norton Antivírus (progra- ma criado pela Symantec): Não importa a eficiência do seu computador ou do disco rígido externo, um dia eles se tor- narão desgastados. Essa é a natureza de todo hardware. O técnico de manutenção de com- putadores talvez possa conseguir recuperar os dados, mas não há nenhuma garantia dis- so. Se você não fizer o backup, estará brincan- do com a sorte. E o que é pior, a Internet está cheia de ameaças à integridade dos dados. Os vírus e cavalos de Troia não só roubam os seus dados, mas também os excluem em alguns ca- sos. Outro fenômeno crescente e relevante é o ransomware, no qual um hacker insere um ví- rus no computador, que criptografa os dados. 135 Para descriptografar os dados, será necessário pagar um resgate a esses hackers. Se você tiver feito o backup dos dados, essa é uma preocu- pação a menos. Basta limpar o disco rígido e restaurar o backup mais recente. Não impor- ta se você perdeu os dados devido a uma falha mecânica, um desastre natural ou uma ativi- dade criminosa. Eles estarão perdidos para sempre (NORTON.COM, [s.d.]). Por exemplo, no sistema operacional Linux, podem ser rea- lizados dois tipos de backup: o backup do sistema, que é um backup do sistema operacional e dos aplicativos (o que somente o admi- nistrador pode alterar), e o backup do usuário, que é um backup dos arquivos dos usuários. Em relação aos backups do sistema, seu motivo é o de minimi- zar o esforço necessário, após uma falha, para recolocar o sistema em funcionamento. No entanto, o caminho para fazer o backup, efe- tivamente, nesse caso, é realizar backup apenas daquilo que é abso- lutamente necessário para permitir uma recuperação rápida quando ocorrer um desastre. O Linux difere da maioria dos outros sistemas operacionais, nos quais o sistema operacional e um grande número de aplicati- vos são normalmente instalados de uma só vez, enquanto sistemas baseados em DOS e até mesmo em UNIX tendem a ser instalados de maneira mais rápida. Para esses sistemas, faz sentido fazer backup de todo o sistema. Geralmente, muito tempo e cuidado foram in- vestidos na configuração do sistema. Por outro lado, instalar ou reinstalar um sistema básico do Linux (completo com aplicativos), geralmente, é um caso rápido e simples. Uma maneira de personalizar seu sistema é adicionar novos programas(software que não faz parte de sua distribuição). Ao ins- talar um novo software, é preciso rigor e manter quaisquer novos programas separados daqueles da distribuição. A vantagem de se fazer isso é que se pode ver facilmente quais programas são passí- veis de restauração, a partir de sua distribuição, e quais programas se precisa restaurar em outro local. A alternativa, claro, é uma polí- tica de programação não preventiva, que funciona sem interrupções 136 externas à tarefa. De modo geral, as políticas de grupo do Windows permitem a programação de backups de determinadas configurações do siste- ma, seja o processamento local ou em rede. Os backups do sistema podem ser configurados em nível de configuração de registro, de acordo com a versão com que se trabalha. Os backups, de forma programada, obedecem a lotes fixos de cópia/ restauração, em que os chamados pontos de restauração podem ser criados em intervalos regulares ou a critério do administrador do sistema, reunindo um conjunto mínimo de parâmetros que permite a recuperação de uma versão minimamente funcional do sistema, caso venha a sofrer danos graves que impeça sua inicialização . Proteção de dados por criptografia Quando se fala em segurança em uma rede, é necessário imaginar que existe uma pessoa enviando uma informação, outra aguardan- do para receber essa informação, porém, no meio do caminho pode existir uma pessoa que deseja roubar essa informação. Assim, de- ve-se garantir que essa troca de mensagens não permita que essa pessoa roube a informação e, se a roubar, não consiga compreender o conteúdo roubado. Para que a nossa comunicação seja segura, considera-se al- gumas propriedades, a saber: sigilo, autenticação e integridade da mensagem. Sigilo Existe sigilo na troca das mensagens quando apenas o remetente e SAIBA MAIS 137 o destinatário conseguem compreender o seu conteúdo, e isso só é possível quando a informação é disfarçada. Para entender melhor esse termo, considere a situação hipotética a seguir: Carla deseja enviar um convite para o Pedro, mas esse convite é secreto e só interessa ao Pedro. Contudo, todas as amigas de Carla estão interessadas no conteúdo deste convite. Como fazer para que elas não consigam compreender o conteúdo do convite, caso consi- gam interceptá-lo? Carla cria o convite, utiliza a técnica de disfar- çá-lo, que chamamos de “encriptar”, e envia esse conteúdo para o Pedro. Quando ele o recebe, ele vai desencriptar o convite e conse- guirá identificar o conteúdo. Dessa forma, Carla garantirá a segu- rança e o sigilo da informação. Autenticação Em uma comunicação, é necessário ter a certeza de que quem está recebendo a mensagem é o destinatário ao qual a mensagem foi en- viada, e até mesmo que você está recebendo uma mensagem do re- metente cuja identidade é verdadeira. Para que a autenticidade possa ser verificada, há algumas técnicas. A mais conhecida é a utilização de senhas, que não devem ser informadas a ninguém e nem escritas em papéis. A utilização de um token, que recalcula uma nova senha a cada 30 segundos, é uma outra forma de autenticação; o PIN de um cartão de crédito também autentica uma pessoa ou pagamento. A forma mais segura de autenticação é a biometria e o reco- nhecimento da retina, afinal, elas são únicas e intransferíveis, não podendo ser perdidas ou esquecidas. O único inconveniente em re- EXEMPLO 138 lação a essas tecnologias é que a implementação ainda apresenta alto custo. Integridade da mensagem Considerando qualquer uma das opções descritas, o remetente e o destinatário conseguiram se autenticar e agora é relevante que o conteúdo da mensagem transmitida seja íntegro, sem que tenha sido alterado de maneira acidental ou por má intenção. Uma maneira de garantir a integridade é a utilização da assi- natura digital. Como afirma James Kurose (2010): exatamente como acontece com a assinatura de próprio punho, a assinatura digital deve ser verificável, não falsificável e incontestável. Foram descritas as propriedades necessárias para uma trans- missão segura das informações na rede e você pode estar se pergun- tando se não existe exagero ou excesso de preocupação. Infelizmen- te não. Na mesma proporção em que os meios de segurança da in- formação avançam, as formas de ataque também se tornam mais eficientes. Afinal, roubar a senha de uma pessoa que tenha mui- to dinheiro em sua conta bancária caracteriza roubo, porém, para muitos, é uma forma fácil de obter recursos financeiros. Da mesma forma, no mundo dos negócios, obter a informação de um novo pro- jeto ou conseguir roubar a fórmula da Coca-Cola poderia dar ensejo a um pedido de resgate. Afinal, o que as grandes empresas não pa- gariam para obter suas informações confidenciais de volta? Quando se fala em autenticação na rede, utiliza-se protocolos de autenticação para garantir a identidade do remetente e do desti- natário. Após essa garantia estabelecida, ocorre a comunicação dos dados. Afinal, a autenticação é o processo de provar a própria iden- tidade a alguém. 139 DEFINIÇÃO A criptografia é um método de esconder a mensagem por um có- digo. No caso, somente a pessoa que possui uma “chave” de acesso consegue visualizar o conteúdo do arquivo. Ou seja, a chave trans- forma o arquivo em uma mensagem que pode ser compreendida. Como podemos visualizar na figura 6, no método de cripto- grafia o texto normal é transformado em um texto ilegível (encrip- tação). Quando essa mensagem chega ao seu destino, esse texto é novamente transformado em um texto legível (descriptação). Figura 6 - Criptografia de dados Fonte: adaptado de Kurose (2010). Para ampliar seu entendimento, vejamos algumas possibili- dades: 1. Para começar, temos o exemplo do protocolo de autentica- ção mais simples, em que você deseja trocar informações com a Roberta e, antes de enviar a mensagem oficial, envia uma apresentação dizendo que você é o Emanuel. Em relação a esse protocolo, nada garante para Roberta que você seja realmente quem está se apresentando, pode ser outra pessoa fazendo-se passar por você. 2. Outro protocolo que pode ser utilizado é aquele que se baseia no endereço IP, ou seja, você quer se comunicar com Roberta e ela conhece o seu endereço IP, então ela pode autenticá-lo, considerando o IP recebido. Mas o intruso pode interceptar a conversa, descobrir o seu IP e enviar informações para Roberta 140 com esse endereço IP. Mais uma vez, Roberta será enganada. 3. Outra maneira de se comunicar é ter combinado com Roberta uma senha, assim, toda vez que você mandar uma informação para ela, deverá enviar a senha combinada e ela terá a certe- za de que está trocando informações com você. Mas o intruso continua atento e interceptará uma conversa. Em seguida, ele descobrirá a senha e passará a falar com Roberta como se fos- se você. 4. Mas que autenticação difícil, será melhor desistir dessa con- versa? Certamente não! Você pode implementar esse conceito também na autenticação, afinal, você conhece a chave públi- ca de Roberta, então enviará uma mensagem de autenticação criptografada com a chave pública dela e ela vai descriptogra- far a sua mensagem com a chave privada dela. Se der certo, ela terá a certeza de que está conversando com você. Na criptografia simétrica (ou criptografia de chave privada), o algoritmo criptográfico utiliza uma mesma chave para os proces- sos de cifragem e decifragem, representando uma evolução dos mé- todos clássicos de criptografia. Já na criptografia assimétrica (ou criptografia de chave pú- blica), são usadas chaves distintas para os processos de cifragem e decifragem, sendo uma chave pública (que deve ser divulgada) e a outra privada (que deve ser mantida em sigilo). Fundamentada na Teoria dos Números, representa uma mudança radical (e revolucio- nária) em relação às cifras clássicas e simétricas. Navegação privada A navegação privada ou oculta é um tipo de navegação em que você utiliza a internet sem a preocupaçãode algum dado pessoal, ou his- tórico de busca do navegador, ficar gravado no computador. Por exemplo, se você costuma frequentar lan houses, entrar no modo oculto no navegador irá lhe proteger se alguém, logo após de você, utilizar o computador. Isto é, essa pessoa não conseguirá pegar senhas que você digitou, ver em quais sites você entrou, quais 141 downloads realizou, entre outras atividades que podem conter in- formações. Ferramentas e técnicas de auditoria de tecnologia de informação A auditoria de tecnologia de informação surgiu mediante a evolu- ção dos meios de armazenamento de informações, anteriormente em papel, agora guardadas eletronicamente. Entretanto, mantém a filosofia de garantir a confiabilidade das informações e controles internos para resguardá-las. A auditoria em ambiente de Tecnolo- gia de Informação (TI) percebe que as informações até então dispo- níveis em forma de papel são agora guardadas em forma eletrônica e que o enfoque de audi- toria teria que mudar para se assegurar de que essas informações em forma eletrônica sejam confiáveis antes de emitir sua opinião (IMO- NIANA, 2016, p. 2). A auditoria de TI também considera, como objetivo principal, a garantia da segurança das informações, propiciando também a melhoria da eficiência e a redução de custos para permitir a criação de valor das empresas. Entre as atribuições do auditor estão: a capacidade de deci- são, a rigidez e a autoconfiança. Ele também precisa ser ético, edu- cado, instruído, versátil, perceptivo e observador, além de estar sempre de acordo com os requisitos da organização, participando da produção da programação da auditoria, conduzindo-a de forma apropriada. Também é função do auditor registrar e relatar as consta- tações, conclusões e relatórios, além de manter a independência, confidencialidade e os registros de auditoria. O auditor de TI deverá possuir as competências exigidas de um auditor acrescidas de co- nhecimentos de tecnologia e sistema de informação. Vejamos mais algumas responsabilidades do auditor de TI, 142 de acordo com a obra “Auditoria de sistemas de informação”, de Joshua Imoniana (2016): • planejar a auditoria de acordo com o nível de risco do ambien- te; • entender o negócio e sua estrutura organizacional; • identificar os processos chave do negócio; • identificar os tipos de comunicação de dados existentes (in- terna e externa) e os controles existentes; • identificar a classificação das informações utilizadas pelo ne- gócio; • identificar os ativos de informação e os seus controles; • identificar o suporte aos usuários (estrutura) e como podem impactar o negócio; • identificar as políticas de segurança da informação (normas, procedimentos, evolução de sistemas e aplicativos, planos de contingência, contratos com terceiros). Dentre as ferramentas e técnicas utilizadas para a auditoria de TI, além das tradicionais (questionários, observação, exame do- cumental), também é empregado o uso de softwares especializados e aplicativos (planilhas) que facilitam a manipulação de grande volu- me de dados. Os controles que compõem a auditoria de TI apresen- tam objetivo comum com as demais auditorias, que é salvaguardar o ativo de uma organização, manter a integridade, correção e confia- bilidade dos registros contábeis, promover a eficiência operacional e encorajar o cumprimento dos procedimentos e das políticas da ge- rência. Dessa forma, os tipos de controle recomendados são: • controles administrativos e gerenciais; • controles de segurança e privacidade; • controles de preparação e captação de dados; • controles de entrada de dados; 143 • registro de erros e manipulação; • registro de informação de erros e manipulação; • controles de processamento; • controles de saída e de emissão de relatórios; • controles de gravação e recuperação de dados. Podemos perceber que tais controles se assemelham aos controles discriminados nas normas de segurança da informação e permitem que auditoria de TI estruture suas atividades e ações para garantir a segurança das informações. Devemos nos preocupar com a segurança da informação para garantir que senhas, números de cartões de crédito, contas de aces- so à internet, dados pessoais e comerciais não sejam atacados por pessoas mal-intencionadas. A auditoria de segurança de informa- ção tem a finalidade de identificar e prevenir esses problemas. Deve ter como base a legislação vigente, atividades e transações da em- presa de forma a favorecer o cumprimento dos serviços contratados com a entidade cumprindo, assim, os prazos de uma forma segura. A comunicação sobre os riscos, inicialmente, ficava exclusi- va a pessoas ou a um grupo de pessoas restrito à área. Essa prática acarretava, em muitos casos, na perda de boa parte do conhecimen- to. Nos dias de hoje, é necessário selecionar o que é realmente im- portante, útil e relevante no que diz respeito às informações. Com a gama de recursos cada vez mais versáteis, e com a flexibilidade que a tecnologia nos fornece, nossos dados, informações e conheci- mentos são mediados pela tecnologia da informação, sendo assim, tornaram-se mais dependentes dos sistemas e, consequentemente, mais vulneráveis. A informação é um ativo intangível da organização. Assim como os ativos tangíveis e financeiros, a organização deve dedicar sua aten- REFLITA 144 ção à segurança deste recurso, que é a informação que possui. Fa- lhas e desastres em sistemas de informação podem levar a grandes prejuízos e até mesmo à falência de uma empresa. Na análise de riscos observa-se o resultado das pesquisas realizadas por setores, em que empresas são requeridas a escolher três principais medidas em segurança da informação no seu plane- jamento anual, conforme apresentado no quadro 2. Quadro 2 - Medidas em segurança da informação SETOR MEDIDAS DE SEGURANÇA Comércio • Política de segurança • Análise de riscos no ambiente de TI • Capacitação da equipe técnica Financeiro • Adequação às normas • Regulamentações e legislação; • Análise de riscos no ambiente de TI; • Certificado digital. Governo • Campanha de sensibilização e res- ponsabilização de funcionários; • Análise de riscos no ambiente de TI; • Adequação às normas; • Regulamentações e legislação. Indústria • Análise de vulnerabilidades; • Análise de riscos no ambiente de TI; • Campanha de sensibilização e res- ponsabilização de funcionários. 145 Serviços • Análise de riscos no ambiente de TI; • Análise de vulnerabilidades; • Política de segurança. Telecomunicações • Adequação às normas; • Regulamentações e legislação; • Análise de riscos no ambiente de TI; • Plano de continuidade. Fonte: elaborado pelo autor (2019). Como resultado dessas pesquisas, a tecnologia da informação contribui para minimizar as perdas e potencializar os investimentos na corporação. A auditoria de sistemas da informação, juntamente com seu planejamento, deixou de ser apenas técnica e requer com- prometimento com a informação dos demais gestores. É com esse trabalho de equipe e com uma cultura de controle de riscos em todos os setores da organização que se encontram as melhores alternativas para manter a segurança da informação de forma compatível com seu valor dentro da organização. As auditorias estão em entendimento com diversos critérios, como o objetivo, a periodicidade e o posicionamento do auditor e do órgão fiscalizador. A finalidade das auditorias pode estar relaciona- da à necessidade de verificar falhas em processos para que possam ser corrigidos. A frequência com que são feitas as auditorias está re- lacionada à necessidade ou ao tipo de negócio. Relatório de auditoria de segurança da informação Atualmente, as empresas estão expostas a uma grande variedade de ameaças, incluindo atividades criminosas, eventos associados ao uso indevido da marca do produto, sinistros, catástrofes naturais e ataques a nível nacional. 146 Porém, os temoresmais sérios estão relacionados com a se- gurança em TI. Entre as principais preocupações das corporações, podemos listar os ataques efetuados à internet seguidos por inci- dentes de TI causados por colaboradores e ameaças geradas inter- namente. Para Sara Gordon e Richard Ford (2006), um crime cibernético é qualquer crime facilitado ou realizado com o uso de computadores, redes ou hardware. Para os autores, existem dois grandes tipos de crimes cibernéticos. Confira abaixo quais são. • Tipo I: requer um número limitado de eventos e muitas vezes é facilitado pelo uso de keyloggers ou Cavalos de Troia. Esse tipo de crime tem o objetivo de ganhos financeiros, por meio de captura de informações confidenciais dos usuários, em que os fraudadores podem utilizar essas informações para realizar as fraudes. • Tipo II: esse tipo requer múltiplos eventos e muitas vezes são realizados com a utilização de softwares não maliciosos, como os programas de mensagens instantâneas. Atores do tipo II tendem a ter um motivo pessoal ou político, como persegui- ção ou terrorismo cibernético. Esse tipo de crime pode causar perdas financeiras às suas vítimas. A auditoria de sistemas de informação tem se mostrado ne- cessária dentro das corporações devido à grande demanda de infor- mações a que pessoas e corporações são submetidas diariamente. Inicialmente, não havia uma área específica para que uma auditoria de sistemas de informação fosse realizada. Devido a esse fato, muita informação acabava por se perder. Porém, hoje, pode-se designar um funcionário da empresa para essa função e criar um departa- mento específico para essa atividade. VOCÊ SABIA? 147 A auditoria interna se desenvolve com a presença de servido- res da própria empresa, enquanto a externa pode ser feita através de uma empresa terceirizada ou de um auditor independente. Já a auditoria articulada envolve ambos os procedimentos de auditoria. No relatório de auditoria deve constar a criação, implemen- tação e atualização dos procedimentos, ferramentas e meios de re- vogação de acessos às listas de e-mail e e-mail institucional dos servidores que integram ou já integraram a empresa. Recomenda-se a criação de um comitê de segurança da in- formação no ambiente da organização, contemplando não só a área de segurança em tecnologia da informação, mas também as áreas de segurança física, patrimonial e pessoal, constituindo uma equipe multidisciplinar de servidores. Os acordos e trabalhos para atendimento das necessidades que ainda não possuem qualquer encaminhamento devem ser ini- ciados com rapidez e agilidade. Quanto à segurança física, recomenda-se adquirir extintores de incêndio apropriados e adequados para controle de sinistros em equipamentos de informática e eletrônicos. Deve-se, também, es- tabelecer uma rotina de limpeza específica dos materiais e do lo- cal, objetivando prolongar a vida útil dos equipamentos e promover condições adequadas para o melhor funcionamento dos servidores. Um auditor costuma utilizar vários modelos de instrumen- tos para a coleta de dados, dependendo do tipo de auditoria e dos objetos a serem verificados. Existem muitos formulários ou ques- tionários impressos, com suporte de software especializado ou mes- mo criados dentro da empresa a partir de planilhas eletrônicas. São esses instrumentos que darão origem aos documentos de trabalho do auditor. Também é recomendado fazer um modelo de lista simplifi- cado – também chamado de checklist – que pode ser usado como instrumento para a coleta de dados. Esse checklist, além de constar o nome do auditor e a data de início e finalização, apresenta ques- tões para verificação como “sim”, “não” e “não se aplica”, como os exemplos que podemos ver no quadro 3. 148 Quadro 3 - Modelo para coleta de dados na auditoria de segurança da informação OBJETO AVERIGUADO PONTO A SER CONTROLADO VERIFICAÇÃO (S, N, N/A) Computadores Os equipamentos de rede estão catalogados e pro- tegidos fisicamente. Os acessos aos compu- tadores estão protegidos com protocolo de segu- rança. Os programas de antiví- rus estão atualizados. Os acessos aos compu- tadores e aos sistemas de informação utilizando celulares estão prote- gidos e atualizados com encriptação. Rede sem fio A instalação do protocolo de criptografia está atua- lizada. Criptografia O acesso aos serviços crí- ticos é feito por meio de certificados digitais. Existem medidas de pro- teção dos dados armaze- nados, por criptografia. 149 Rede LAN A configuração do fire- wall é controlada, revisa- da e atualizada periodi- camente. O acesso ao ambiente de rede é controlado. O acesso remoto é con- trolado somente para sistemas específicos. Redes virtuais privadas (VPN) usam IPSEC. Existe proteção de cabea- mento da rede. Protocolos Existem rotinas adequa- das de proteção e contro- le do fluxo de dados. Possui protocolos ade- quados de acordo com a exigência dos sistemas de informação. Scanners de portas de redes que detectam pos- síveis vulnerabilidades e falhas em sistemas são atualizados e verificados. Fonte: adaptado de Rodrigues; Fernandes (2011). Os critérios de avaliação incluem políticas e procedimentos aplicáveis à corporação, às normas, aos requisitos legais vigentes, aos regulamentos, às cláusulas contratuais e aos métodos de gestão e de práticas, entre outros requisitos. Um controle de segurança é uma medida de segurança ou uma contramedida de natureza gerencial, operacional ou técnica prescrita para um sistema de informações, de modo a proteger a confidencialidade, integridade e disponibilidade do sistema de sua 150 informação. Controle interno é o objeto responsável pelo controle dos processos da organização. O controle interno abrange todo o con- junto de controles realizado sob a responsabilidade da gestão da or- ganização. Marcelo Cavalcanti Almeida aponta, no livro “Auditoria: um curso moderno e completo”, de 1996, que os passos do processo de auditoria são definidos da seguinte forma: • o gestor deve declarar os fatos sobre o desempenho das ativi- dades na organização para os envolvidos; • é também necessário que a organização empregue um profis- sional especializado, no caso o auditor, para que opine sobre a veracidade das declarações contidas no parecer; • o auditor também deve verificar se as declarações do gestor estão satisfatoriamente adequadas com as condições obser- vadas no controle interno, emitindo uma opinião baseada nessas declarações. Nessa fase, o fluxo do processo deve ser elaborado. Conforme os procedimentos, objetivos e os riscos envolvidos são executados, precisam ser documentados, juntamente com os controles respon- sáveis pelo suporte de sua eficiência. A documentação do processo será fundamental quanto à execução das fases seguintes de execu- ção da avaliação dos controles internos. O principal objetivo em uma auditoria de controles organi- zacionais da área de informática é verificar a essência do controle interno. Assim, é possível a promoção da eficácia, visando a uma auditoria satisfatória e responsável. 151 Caro(a) aluno(a), Chegamos ao final desta trajetória! Neste material, apresentamos algumas normas e procedimentos que possibilitam que os colabo- radores e clientes das corporações sigam medidas de práticas rela- tivas à segurança da informação de acordo com as necessidades de empreendimentos e de proteção legítima da empresa e do usuário. Oferecemos um conjunto de orientações e técnicas sobre o funcio- namento de antivírus, firewall e proxy. Além disso, conhecemos os procedimentos necessários para realizar um backup. A política de backup, como vimos, deve estar definida no plano de continuidade e nas políticas de segurança da informação da organização. Também estudamos os critérios de avaliação durante uma audito- ria, a saber: políticas e procedimentos aplicáveis à corporação, bem como as normas, os requisitos legais vigentes, regulamentos, cláu- sulas contratuais, métodode gestão, e de práticas, entre outros re- quisitos. E, por fim, acompanhamos algumas boas práticas de como podem ser elaborados os relatórios de auditoria de forma simples para que seja possível, após a leitura deste conteúdo, criar este documento dentro de sua própria organização. Bons estudos e até uma próxima oportunidade! SINTETIZANDO 152 Referências Bibliográficas UNIDADE 1 BEAL, A. Segurança da informação: princípios e melhores práti- cas para a proteção dos ativos de informação nas organizações. São Paulo: Atlas, 2008. CERT.br. Cartilha de segurança para internet. Versão 4.0. São Paulo: Comitê Gestor da Internet no Brasil, 2012. Disponível em: <https:// cartilha.cert.br/livro/cartilha-seguranca-internet.pdf>. Acesso em: 21 out. 2019. CERT.br. Incidentes reportados ao CERT.br – janeiro a dezembro de 2018. São Paulo, 25 mar. 2019. Disponível em: <https://www.cert. br/stats/incidentes/2018-jan-dec/total.html>. Acesso em> 21 out. 2019. CICLO DE PALESTRAS Segurança da Internet – CERT.br: Au- tenticação. Postado por NICbrvideos. (44min. 16s.). son. color. port. Disponível em: <https://www.youtube.com/watch?v=5QZR- sH7vg5g&>. Acesso em: 21 out. 2019. FONTES, E. Segurança da informação: o usuário faz a diferença. São Paulo: Saraiva, 2006. GALVÃO, M. C. Fundamentos em segurança da informação. São Paulo: Pearson, 2015. KOLBE JÚNIOR, A. Sistemas de segurança da informação na era do conhecimento. Curitiba: Intersaberes, 2017. LYRA, M. R. Segurança e auditoria em sistemas de informação. Rio de Janeiro: Ciência Moderna, 2008. STONEBURNER, G.; GOGUEN, A.; FERINGA, A. Risk management guide for information technology systems. Recommendations of the National Institute of Standards and Technology. Gaithersburg, MD: NIST, 2002. 153 MOTA FILHO, J. E. Análise de tráfego em redes TCP/IP. São Paulo: Novatec, 2013. WEIDMAN, G. Penetration testing. Califórnia: No Starch Press, 2014. UNIDADE 2 BEEF. BeEF: the browser exploitation framework project. Disponí- vel em: <https:// beefproject.com/>. Acesso em: 05 jun. 2019. INÍCIO. GOLISMERO. Disponível em: <http://golismero.com/>. Acesso em: 05 jun. 2019. INÍCIO. NMAP. Disponível em: <https://nmap.org/>. Acesso em: 05 jun. 2019. INÍCIO. WIRESHARK. Disponível em: <https://www.wireshark. org/>. Acesso em: 05 jun. 2019. INÍCIO. WPSCAN. Disponível em: <https://wpscan.org/>. Acesso em: 05 jun. 2019. PATERVA. Paterva: A New Train of Thought. Disponível em: <ht- tps://www.pater- va.com/web7/>. Acesso em: 05 jun. 2019. PENETRATION Testing Software, Pen Testing Security. Metasploit, c2022. Disponível em: <https://metasploit.com/>. Acesso em: 05 jun. 2019. PORTSWIGGER. PortSwigger: Web Security. Disponível em: <ht- tps://portswigger. net/burp>. Acesso em: 05 jun. 2019. WEIDMAN, G. Penetration Testing: A Hands-On Introduction to Hacking. São Francisco: No Startch Press, 2014. UNIDADE 3 BEAL. A. Segurança da informação: princípios e as melhores práti- cas para a proteção dos ativos de informação nas organizações. São Paulo: Atlas, 2008. CERT.br. Cartilha de segurança para internet. Versão 4.0. São Paulo: 154 Comitê Gestor da Internet no Brasil, 2012. Disponível em: <https:// cartilha.cert.br/livro/cartilha-seguranca-internet.pdf>. Acesso em: 21 out. 2019. FONTES, E. Segurança da informação: o usuário faz a diferença. São Paulo: Saraiva, 2006. GOODRICH, M. T.; TAMASSIA, R. Introdução à segurança de com- putadores. Tradução de Maria Lúcia Blanck Lisbôa. Revisão técnica de Raul Fernando Weber. Porto Alegre: Bookman, 2013. LAUDON, K. C.; LAUDON, J. P. Sistemas de informação gerenciais. 9. ed. São Paulo: Pearson Prentice Hall, 2010. MORAES, A. F. Redes sem fio: instalação, configuração e segurança: fundamentos. São Paulo: Érica, 2010. STALLINGS, W. Criptografia e segurança de redes: princípios e práticas. Tradução de Daniel Vieira. Revisão técnica de Paulo Sér- gio Licciardi Messeder Barreto e Rafael Misoczki. 6. ed. São Paulo: Pearson, 2015. UNIDADE 4 ALMEIDA, M. C. Auditoria: um curso moderno e completo. 5. ed. São Paulo: Atlas, 1996. BEAL, A. Segurança da informação: princípios e melhores práti- cas para a proteção dos ativos de informação nas organizações. São Paulo: Atlas, 2008. CERT. Cartilha de segurança para internet. Versão 4.0. São Paulo: Comitê Gestor da Internet no Brasil, 2012. EASEUS. Data loss & recovery – infographic. Disponível em: <ht- tps://www.easeus.com/infographics/data-loss-and-data-reco- very.html>. Acesso em: 21 out. 2019. GALVÃO, M. C. Fundamentos em segurança da informação. São Paulo: Pearson, 2015. GORDON, S.; FORD, R. On the definition and classification of cyber- 155 crime. Journal in Computer Virology, [s.l.], v. 1. N. 1 2006. In press. IMONIANA, J. O. Auditoria de sistemas de informação. Rio de Janei- ro: Atlas, 2016. KUROSE, J. F.; ROSS, K. W. Redes de computadores e a Internet: uma abordagem top-down. São Paulo: Addison Wesley, 2010. MCCLURE, S.; SCAMBRAY. J.; KURTZ. G. Hackers expostos: segredos e soluções para a segurança de redes. Porto Alegre: Bookman, 2014. MOLINARO, C. R. Gestão de tecnologia da informação: governança de TI. Rio de Janeiro: LTC, 2010. MUNHOZ, V. WannaCry, o ransomware que fez o mundo chorar na sexta-feira (12). Tec Mundo, [s.l.], 12 mai. 2017. Disponível em: <https://www.tecmundo.com.br/malware/116652-wannacry-ran- somware-o-mundo-chorar-sexta-feira-12.htm>. Acesso em: 20 set. 2019. NORTON. A importância do backup de dados. Disponível em: <ht- tps://br.norton.com/internetsecurity-how-to-the-importance-o- f-data-back-up.html>. Acesso em: 10 out. 2019. RODRIGUES, R. W.; S.; FERNANDES, J. H. C. Auditoria e conformida- de de segurança da informação. 2011. Disponível em: <http://www. facom.ufu.br/~miani/site/teaching_files/seguranca/GSIC345_Au- ditoria_Conformidade_Seguranca_Informacao.pdf>. Acesso em: 12 out. 2019. SEOBILITY. Proxy Server. Disponível em: <https://www.seobility. net/en/wiki/Proxy_Server>. Acesso em: 21 out. 2019. TANENBAUM, A. S.; WETHERALL, D. Redes de computadores. São Paulo: Pearson, 2011.