4. Manifestações de cibercriminalidade

4.1. Engenharia Social

A engenharia social não pode ser considerada directamente aplicável a um ataque cibernético, mas é um pré-requisito para que uma série de ataques cibernéticos sejam bem sucedidos.

Se quiséssemos definir o conceito de engenharia social, poder-se-ia dizer que se trata de influenciar, persuadir ou manipular as pessoas a fim de as obrigar a tomar uma determinada acção ou a obter deles informações que de outra forma não forneceriam. O objectivo é dar a uma vítima uma tal impressão de que a situação em que se encontra é diferente da que realmente é. Em termos mais simples, é a "arte do engano", com Mitnick a distinguir duas especializações na profissão de artista-manipulador. "Aquele que ganha dinheiro com as pessoas é um vulgar burlão, enquanto aquele que usa manipulação e persuasão contra empresas - geralmente com a intenção de obter informações - é um engenheiro social".[1]

Estou convencido de que esta reivindicação de Mitnick de 2003 não se manteria no mundo digital de hoje, pois muitos atacantes utilizam técnicas de engenharia social para obter informações ou dados e utilizá-los, por exemplo, no crime como um serviço. Além disso, estas técnicas são utilizadas não só para empresas mas também para indivíduos. Um ataque real não tem de assumir a forma de fraude, mas subsequentemente esta informação pode ser vendida ou mal utilizada para um ataque mais grave.

A ideia principal da engenharia social não é utilizar várias abordagens ou ferramentas puramente técnicas, por exemplo para quebrar uma palavra-passe, quando é muito mais fácil enganar uma vítima, que pode revelar voluntariamente a palavra-passe. O elo mais fraco do sistema de segurança é e será sempre uma pessoa (o utilizador). Uma vez que não pode haver um sistema informático no mundo que não dependa de seres humanos, pelo menos em algum momento (quer se trate da operação, configuração ou manutenção de um sistema informático), a forma mais fácil é obter a informação necessária das pessoas.

É a simplicidade de um ataque dirigido ao elo mais fraco de todo o sistema que normalmente o torna a forma mais eficaz. A engenharia social surgiu com o caso de Mitnick[2] , que é considerado por muitos como sendo um hacker, mas que na realidade se considera a si próprio como um engenheiro social. Nos seus livros[3] , Mitnick mostra como é fácil obter informação sensível e que representa um risco de segurança para indivíduos e organizações. Numa audiência perante a Comissão de Assuntos Governamentais do Senado dos EUA[4] , na qual Mitnick testemunhou sobre a obtenção de senhas e informações sensíveis sobre os sistemas informáticos das empresas em que invadiu, Mitnick disse: "Apresentei-me como outra pessoa e simplesmente perguntei por elas".

Para a engenharia social, um dos factores-chave é obter o máximo de informação possível sobre o alvo do ataque (seja um sistema informático, uma entidade jurídica ou uma pessoa singular). Existe frequentemente um efeito a longo prazo sobre uma pessoa chave e a construção de "confiança" entre um agressor e uma vítima antes de um ataque, enquanto o agressor tipicamente explora o descuido humano, confiança, vontade de ajudar os outros, preguiça, fraqueza, medo (por exemplo, para que a pessoa não se meta em problemas), irresponsabilidade, estupidez, etc.

As características humanas acima referidas ajudam muito um atacante a levar a cabo o seu ataque. Pergunte a si mesmo quanto verifica a sua contraparte, por exemplo, ao fazer uma chamada telefónica ou ao comunicar via TIC? Quanto verifica os meios de armazenamento (discos USB, cartões de memória, etc.) que recebeu como presente para o evento de apresentação?

Especialmente no campo das TIC, é possível observar ataques cada vez mais sofisticados e elaborados [por exemplo, e-mails fraudulentos bem preparados, instituições reais (utilizadas como um alegado remetente), redireccionamento para sites fraudulentos ou instalação de malware contido num documento anexo ou num meio de armazenamento, etc.].

Os ataques de engenharia social são geralmente conduzidos de três maneiras, e estes métodos são combinados uns com os outros:

1.     Recolha de dados livremente (publicamente) disponíveis sobre um alvo de um ataque

2.     Ataque físico (por exemplo, um atacante finge ser um empregado de uma agência de serviços - como um serviço de impressão, um trabalhador de manutenção, etc.), em que o atacante tenta obter tanta informação "de dentro" da empresa, ou informação sensível sobre empregados individuais (incluindo, por exemplo, procura de lixo, etc.)

3.     Ataque psicológico

Os métodos mais comuns de ataques de engenharia social incluem:

1.     E-mail fraudulento ou site falso

2.     Chamada telefónica

3.     "Ataque "cara a cara

4.     Mergulho em contentores de lixo, bem como "esforço de dados".

5.     Pesquisa de websites, redes sociais, etc. (Esta é uma fonte aberta de dados de fácil acesso para atacantes de engenharia social, que ajuda a identificar ou verificar informações sobre um alvo potencial). Informação pública disponível em linha (por exemplo, CVs, teses, artigos, propostas, etc., publicados na Internet). Relatórios anuais e outras informações publicamente disponíveis sobre uma empresa

6.     Entrega de publicidade ou outros materiais em CD, DVD ou outros suportes de armazenamento

7.     Deixar um meio de armazenamento (USB, etc.) numa área de interesse (como empresa, casa do empregado, etc., tal meio contém normalmente malware)

8.     Oferta para experimentar um serviço online (por exemplo, oferta de um armazenamento em nuvem, ou um serviço interessante gratuitamente, etc.)

9.     Entrega ou descoberta de equipamento (sistema informático)

10.  Técnico de serviço falso

11.  Outros

            Quanto a alvos de ataques de engenharia social dentro de uma organização, os possíveis alvos podem ser, por exemplo:

  • posição de gestão,
  • Departamento de TI,
  • trabalhadores do helpdesk,
  • recepcionistas (secretárias),
  • pessoal de segurança,
  • gestão de edifícios,
  • limpeza, etc.

Um engenheiro social é capaz devido à sua capacidade de manipular pessoas; contudo, a simples manipulação não é suficiente em alguns casos e é necessário ligar esta informação aos conhecimentos técnicos no campo das TIC.

No final deste capítulo, dou um exemplo em que Mitnick demonstra a ligação entre as técnicas sociais e o conhecimento das TIC:[5]

Um jovem atacante a quem vou telefonar Ivan Peters preparou-se para recuperar o código fonte para um novo jogo electrónico. Ele não teve problemas em entrar na rede de área ampla da empresa porque um amigo hacker seu já tinha comprometido um dos servidores web da empresa. Depois de encontrar uma vulnerabilidade não corrigida no software do servidor web, o seu amigo tinha quase caído da cadeira. Quando se apercebeu que o sistema tinha sido configurado como um host dual-homed, o que significava que ele tinha um ponto de entrada na rede interna.

Mas uma vez que Ivan estava ligado, enfrentou então um desafio que era como estar dentro do Louvre e na esperança de encontrar a Mona Lisa. Sem uma planta do chão, podia vaguear durante semanas. A empresa era global, com centenas de escritórios e milhares de servidores informáticos, e não forneciam exactamente um índice de sistemas de desenvolvimento ou os serviços de um guia turístico para o guiar para o caminho certo. Em vez de utilizar uma abordagem técnica para descobrir qual o servidor de que precisava para atingir, Ivan utilizou uma abordagem de engenharia social. Fez chamadas telefónicas com base em métodos semelhantes aos descritos em outras partes deste livro. Na primeira chamada de apoio técnico informático, alegou ser um funcionário da empresa com um problema de interface num produto que o seu grupo estava a conceber. e pediu o número de telefone do líder do projecto para a equipa de desenvolvimento de jogos. Depois ligou para o nome que lhe tinha sido dado, fazendo-se passar por um tipo das TI. "Mais tarde esta noite", disse ele, "estamos a trocar um router e precisamos de garantir que as pessoas da sua equipa não percam a conectividade com o seu servidor". Portanto, precisamos de saber quais os servidores que a sua equipa utiliza". A rede estava a ser actualizada a toda a hora. E dar o nome do servidor não prejudicaria nada de qualquer forma, pois não? Uma vez que estava protegido por palavra-passe, ter apenas o nome não podia ajudar ninguém a entrar. Então, o tipo deu ao atacante o nome do servidor. Nem sequer se deu ao trabalho de ligar ao homem para verificar a sua história ou escrever o seu nome e número de telefone. Ele apenas deu o nome dos servidores, ATM5 e ATM6.

Nesta altura, Ivan mudou para uma abordagem técnica para obter a informação de autenticação. O primeiro passo com a maioria dos ataques técnicos aos sistemas que fornecem capacidade de acesso remoto é identificar uma conta com uma senha fraca, que fornece um ponto de entrada inicial no sistema. Quando um atacante tenta utilizar ferramentas de hacking para identificar senhas remotamente, o esforço pode obrigá-lo a permanecer ligado à rede da empresa durante horas de cada vez.

Claramente, ele faz isto por sua conta e risco: quanto mais tempo permanece ligado, maior é o risco de ser detectado e apanhado. Como passo preliminar, Ivan faria uma enumeração, que revela detalhes sobre um sistema alvo. Mais uma vez, a Internet fornece convenientemente software para o efeito (http://mtslenth.0catch.com). Ivan encontrou várias ferramentas de hacking disponíveis publicamente na web que automatizaram o processo de enumeração, evitando a necessidade de o fazer à mão, o que levaria mais tempo e, assim, correria um risco maior. Sabendo que a organização implantou principalmente servidores baseados em Windows, descarregou uma cópia do NBTEnum, um utilitário de enumeração NetBIOS (sistema básico de entrada/saída)[6] . Introduziu o endereço IP (protocolo Internet) do servidor ATM5 e começou a executar o programa. A ferramenta de enumeração foi capaz de identificar várias contas que existiam no servidor.

Uma vez identificadas as contas existentes, a mesma ferramenta de enumeração tinha a capacidade de lançar um ataque de dicionário contra o sistema informático. Um ataque de dicionário é algo com que muitas pessoas e intrusos da segurança informática estão intimamente familiarizados, mas que a maioria das outras pessoas ficarão provavelmente chocadas por aprender é possível. Tal ataque visa descobrir a palavra-chave de cada utilizador no sistema através da utilização de palavras comummente utilizadas. Somos todos preguiçosos com algumas coisas, mas nunca deixa de me surpreender que quando as pessoas escolhem as suas palavras-passe, a sua criatividade e imaginação pareçam desaparecer. A maioria de nós quer uma palavra-passe que nos dê protecção mas que seja ao mesmo tempo fácil de lembrar, o que normalmente significa algo intimamente ligado a nós. As nossas iniciais, nome do meio, alcunha, nome do cônjuge, canção favorita, filme, ou cerveja, por exemplo. O nome da rua onde vivemos ou da cidade onde vivemos, o tipo de carro que conduzimos, a aldeia à beira-mar onde gostamos de ficar no Havai, ou aquele riacho favorito com a melhor pesca de trutas à nossa volta. Reconhece o padrão aqui? Estes são sobretudo nomes pessoais, nomes de lugares, ou palavras de dicionário. Um ataque de dicionário percorre palavras comuns a um ritmo muito rápido, tentando cada uma delas como senha em uma ou mais contas de utilizador.

Ivan dirigiu o ataque do dicionário em três fases. Na primeira, ele utilizou uma lista simples de cerca de 800 das palavras-passe mais comuns. A lista inclui segredo, trabalho e palavra-passe. Além disso, o programa permutou as palavras do dicionário para tentar cada palavra com um dígito anexado, ou anexando o número do mês corrente. O programa experimentou cada tentativa contra todas as contas de utilizador que tinham sido identificadas. Sem sorte. Para a tentativa seguinte, Ivan foi ao motor de busca do Google e escreveu "dicionários de listas de palavras-chave" e encontrou milhares de sites com extensas listas de palavras-chave e dicionários para inglês e várias línguas estrangeiras. Descarregou um dicionário electrónico inteiro de inglês. Depois melhorou-o descarregando uma série de listas de palavras que encontrou no Google. Ivan escolheu o site em www.outpost9.com/files/Wordlists.html. Este site permitiu-lhe descarregar (tudo isto gratuitamente) uma selecção de ficheiros incluindo nomes de família, nomes próprios, nomes e palavras do congresso, nomes de actores, e palavras e nomes da Bíblia. Outro dos muitos sítios que oferecem listas de palavras é na realidade fornecido através da Universidade de Oxford, em ftp://ftp.ox.ac.uk/pub/wordlists . Outros sites oferecem listas com nomes de personagens de desenhos animados, palavras usadas em Shakespeare, na Odisseia, Tolkien, e na série Star Trek, bem como na ciência e religião, e em todo o lado. (Uma empresa on-line vende uma lista contendo 4,4 milhões de palavras e nomes por apenas 20 dólares). O programa de ataque pode ser definido para testar os anagramas das palavras do dicionário, bem como - outro método favorito que muitos utilizadores de computador pensam que aumenta a sua segurança.

Depois de Ivan ter decidido qual a lista de palavras a utilizar, e ter iniciado o ataque, o software funcionou em piloto automático. Ele foi capaz de voltar a sua atenção para outras coisas. E aqui está a parte incrível: Pensar-se-ia que um tal ataque permitiria ao hacker fazer uma soneca de Rip van Winkle e o software ainda teria feito poucos progressos quando ele acordasse. De facto, dependendo da plataforma a ser atacada, da configuração de segurança do sistema, e da conectividade de rede, o vocabulário inglês completo pode, incrivelmente, ser experimentado em menos de trinta minutos! Enquanto este ataque estava a decorrer, Ivan iniciou outro computador a executar um ataque semelhante no outro servidor utilizado pelo grupo de desenvolvimento, ATM6. Vinte minutos mais tarde, o software de ataque tinha feito o que a maioria dos utilizadores insuspeitos gostava de pensar ser impossível: Tinha quebrado uma senha, revelando que um dos utilizadores tinha escolhido a senha "Frodo", um dos Hobbits do livro O Senhor dos Anéis. Com esta palavra-chave em mãos, Ivan conseguiu ligar-se ao servidor ATM6 utilizando a conta do utilizador. Havia boas e más notícias para o nosso atacante. A boa notícia era que a conta que ele decifrou tinha privilégios de administrador, que seriam essenciais para o passo seguinte. A má notícia era que o código fonte do jogo não se encontrava em lado nenhum. Deve ser, afinal, na outra máquina, a ATM5, que ele já sabia que era resistente a um ataque de dicionário. Mas Ivan ainda não estava a desistir; ele ainda tinha mais alguns truques na manga. Em alguns sistemas operativos Windows e UNIX, os hashes de palavras-passe (palavras-passe encriptadas) estão abertamente disponíveis a qualquer pessoa que tenha acesso ao computador em que estão armazenados. O raciocínio é que as palavras-passe encriptadas não podem ser quebradas e, portanto, não precisam de ser protegidas. A teoria está errada. Utilizando outra ferramenta chamada pwdump3, também disponível na Internet, foi capaz de extrair os hashes das senhas da máquina ATM6 e descarregá-las. Um ficheiro típico de hashes de palavra-passe tem este aspecto:

Administrador:
500:95E4321A38AD8D6AB75E0C8D76954A50:
2E48927AQB04F3BFB341E266D6L
akasper:1110:5A8D7E9E3C3954F642C5C736306CBFEF:393CE7F90A8357F157873D72D
digger:1111:5D15COD58D0216C525AD3B83FA6627C7:17AD564144308B42B8403D01AE256
555
ellgan:1112:2017DA45D8O1383EFF17365FAF1FFE89:07AEC950C22CBB9C2C734EB89j1
tafeeck:1115:9F5890B3FECCAB7EAAD3B435B51404EE:1F0115A728447212FC05E1D208203
35
vkantar;1116:81A6A5D035596E7DAAD3B435B51404EE:B933D36DD12258946FCC7BD153F1
CD6
vwallwick:1119:25904EC665BA30F44494F42E1054F192:15B2B7953FB632907455D2706A432
mmcdonald: 1121:
A4AED098D29A3217AAD3B435B51404EE:40670F936B79C2ED522F5ECA939c
kworkman:1141:C5C598AF45768635AAD3B435B51404EE:DEC8E827A121273EF084CDBF5F
D192

Com os hashes agora descarregados para o seu computador, Ivan utilizou outra ferramenta que executava um sabor diferente de ataque por senha conhecida como força bruta.[7] Este tipo de ataque tenta todas as combinações de caracteres alfanuméricos e a maioria dos símbolos especiais.

Ivan utilizou um utilitário de software chamado L0phtcrack3 (pronuncia-se loft-crack; disponível em www.atstake.com; outra fonte para algumas excelentes ferramentas de recuperação de senhas é www.elcomsoft.com). Os administradores de sistemas utilizam o L0pht-crack3 para auditar senhas "fracas"; os atacantes utilizam-no para decifrar senhas. A característica de força bruta em LC3 tenta senhas com combinações de letras, números, e a maioria dos símbolos incluindo @#$%^&. Tenta sistematicamente todas as combinações possíveis da maioria dos caracteres. (Note-se, contudo, que se forem utilizados caracteres não imprimíveis, LC3 será incapaz de descobrir a palavra-passe). O programa tem uma velocidade quase inacreditável, que pode chegar aos 2,8 milhões de tentativas por segundo numa máquina com um processador de 1 GHz. Mesmo com esta velocidade, e se o administrador do sistema tiver configurado correctamente o sistema operativo Windows (desactivando o uso de hashes LANMAN), quebrar uma palavra-passe pode ainda levar um tempo excessivo. Por essa razão, o atacante descarrega frequentemente os hashes e executa o ataque na sua ou noutra máquina, em vez de ficar online na rede da empresa alvo e arriscar-se a ser detectado. Para Ivan, a espera não foi assim tão longa.

Várias horas depois, o programa apresentou-lhe palavras-passe para cada um dos membros da equipa de desenvolvimento. Mas estas eram as senhas para os utilizadores da máquina ATM6, e ele já sabia que o código fonte do jogo que procurava não estava neste servidor. E agora? Ele ainda não tinha conseguido obter uma palavra-passe para uma conta na máquina ATM5. Usando a sua mentalidade de hacker e compreendendo os maus hábitos de segurança dos utilizadores típicos, ele pensou que um dos membros da equipa poderia ter escolhido a mesma palavra-passe para ambas as máquinas. Na verdade, foi exactamente isso que ele encontrou. Um dos membros da equipa estava a utilizar a palavra-passe "gamers" tanto no ATM5 como no ATM6. A porta tinha-se aberto de par em par para Ivan caçar até que ele encontrou os programas que procurava.

 Assim que localizou a árvore de código fonte e a descarregou alegremente, deu mais um passo típico dos crackers do sistema: Ele alterou a palavra-passe de uma conta inactiva que tinha direitos de administrador, para o caso de querer obter uma versão actualizada do software em algum momento no futuro.

Para reduzir os riscos colocados pela engenharia social, é necessário aumentar a consciência de possíveis ameaças não só dentro da organização, mas na sociedade como um todo. Como mencionei anteriormente, a engenharia social ajuda a realizar um ataque, e cabe inteiramente ao agressor determinar quem será o seu alvo. É muito mais fácil para um agressor concentrar o seu ataque nas massas de pessoas inexperientes e ignorantes do que numa empresa relativamente bem protegida.



[1] MITNICK, Kevin D. e William L. SIMON. A Arte da Enganação (Uměníklamu). Gliwice: Helion, 2003. ISBN 83-7361-210-6. p. 6

[2]Para mais detalhes, ver, por exemplo, Kevin Mitnick Case: 1999.[online]. [cit.2.11.2011]. Disponível a partir de: http://www.encyclopedia.com/doc/1G2-3498200381.html

[3] Para mais pormenores, ver:

MITNICK, Kevin D. e William L., SIMON. A Arte da Enganação (Uměníklamu). Gliwice: Helion, 2003. ISBN 83-7361-210-6.

MITNICK, Kevin D. A arte da intrusão: as histórias reais por detrás das explorações de hackers, intrusos e enganadores. Indianápolis: Wiley, 2006. ISBN 0-471-78266-1.

MITNICK, Kevin D. e William L., SIMON. Ghost in the Wires: as minhas aventuras como o hacker mais procurado do mundo. Nova Iorque: Little, Brown & Co, 2012. ISBN 9780316037723.

[4]O testemunho de um ex-hacker. [em linha]. [cit.26.9.2008]. Disponível em: http://www.pbs.org/wgbh/pages/frontline/shows/hackers/whoare/testimony.html

[5] O exemplo é literalmente citado de: MITNICK, Kevin D. e William L. SIMON. A Arte da Enganação (Uměníklamu). Gliwice: Helion, 2003.  ISBN 83-7361-210-6, pp. 127-130

[6]Enumeração - um processo que revela o serviço activado no sistema alvo, a plataforma do sistema operacional, e uma lista de nomes de contas dos utilizadores que têm acesso ao sistema.

[7]Ataque por força bruta - uma estratégia de detecção de senhas que consiste em testar todas as combinações possíveis de caracteres alfanuméricos e especiais.