Engenharia social, dentro da área de segurança de sistemas computacionais, é um termo utilizado para qualificar os tipos de intrusão não técnica, que coloca ênfase na interação humana e, freqüentemente, envolve a habilidade de enganar pessoas objetivando violar procedimentos de segurança. Um aspecto relevante da engenharia social compreende a inaptidão dos indivíduos manterem-se atualizados com diversas questões pertinentes a tecnologia da informação, além de não estarem conscientes do valor da informação que eles possuem e, portanto, não terem preocupação em proteger essa informação.

 

É importante salientar que, independente do hardware, software e plataforma utilizada, o elemento mais vulnerável de qualquer sistema é o ser humano, o qual possui traços comportamentais e psicológicos que o torna susceptível a ataques de engenharia social. Dentre essas características, pode-se destacar:

 

1) Vontade de ser útil – O ser humano, comumente, procura agir com cortesia, bem como ajudar outros quando necessário.

 

2) Busca por novas amizades – O ser humano costuma se agradar e sentir-se bem quando elogiado, ficando mais vulnerável e aberto a dar informações.

 

3) Propagação de responsabilidade – Trata-se da situação na qual o ser humano considera que ele não é o único responsável por um conjunto de atividades.

 

4) Persuasão – Compreende quase uma arte a capacidade de persuadir pessoas, onde se busca obter respostas específicas. Isto é possível porque as pessoas têm características comportamentais que as tornam vulneráveis à manipulação.

Importante observar que o sucesso da engenharia social depende da compreensão do comportamento do ser humano, além da habilidade de persuadir outros a disponibilizarem informações ou realizarem ações desejadas pelo engenheiro social. Perceba ainda que o medo de perder seu emprego ou vontade de ascender pode resultar na entrega de informação de natureza proprietária. Nesse sentido, observa-se que a engenharia social possui uma seqüência de passos na qual um ataque pode ocorrer:

 

5) Coleta de informações – O hacker ou engenheiro social busca as mais diversas informações dos usuários como número de CPF, data de nascimento, nomes dos pais, manuais da empresa, etc. Essas informações ajudarão no estabelecimento de uma relação com alguém da empresa visada.

 

6) Desenvolvimento de relacionamento – O engenheiro social explora a natureza humana de ser confiante nas pessoas até que se prove o contrário.

 

7) Exploração de um relacionamento – O engenheiro social procura obter informações da vítima ou empresa como, por exemplo, senha, agenda de compromissos, dados de conta bancária ou cartão de crédito a serem usados no ataque.

 

8) Execução do ataque – O hacker ou engenheiro social realiza o ataque à empresa ou vítima, fazendo uso de todas as informações e recursos obtidos.

 

Evitando a Engenharia Social

 

Especialistas afirmam que à medida que nossa sociedade torna-se cada vez mais dependente da informação, a engenharia social tende a crescer e constituir-se numa das principais ameaças aos sistemas de segurança das (grandes) organizações. Entretanto, embora as situações apresentadas acima sejam um tanto indesejáveis e até certo ponto assustadoras, há mecanismos através dos quais uma organização pode implementar a fim de detectar e prevenir ataques de engenharia social. Tais medidas visam, principalmente, atenuar a participação do componente humano. Essas medidas compreendem:

 

1) Educação e Treinamento – Importante conscientizar as pessoas sobre o valor da informação que elas dispõem e manipulam, seja ela de uso pessoal ou institucional. Informar os usuários sobre como age um engenheiro social.

 

2) Segurança Física – Permitir o acesso a dependências de uma organização apenas às pessoas devidamente autorizadas, bem como dispor de funcionários de segurança a fim de monitorar entrada e saída da organização.

 

3) Política de Segurança – Estabelecer procedimentos que eliminem quaisquer trocas de senhas. Por exemplo, um administrador jamais deve solicitar a senha e/ou ser capaz de ter acesso à senha de usuários de um sistema. Estimular o uso de senhas de difícil descoberta, além de remover contas de usuários que deixaram à instituição.

 

4) Controle de Acesso – Os mecanismos de controle de acesso tem o objetivo de implementar privilégios mínimos a usuários a fim de que estes possam realizar suas atividades. O controle de acesso pode também evitar que usuários sem permissão possam criar/remover/alterar contas e instalar software danosos à organização.

Temos observado que gasto milhares de reais na aquisição de ferramentas de segurança (detecção de intrusão, firewalls, etc, a fim de dotarem seus sistemas de maior segurança). Todavia, a maioria das empresas acredita que a solução, unicamente, técnica garantem a segurança dos sistemas. Embora eu concorde que a solução técnica seja necessária, ela por si só não é suficiente. É preciso também considerar o componente humano de um sistema de segurança da informação a fim de minimizar ou quiçá minimizar a vulnerabilidade de sistemas.

 

As técnicas de engenharia social exigem uma preparação psicológica profunda e contínua. O candidato a invasor deve estar pronto para estudar o comportamento do seu alvo e entender melhor seu modelo de operar, incluindo até o monitoramento de horários. Mesmo com investimentos pesados na área de segurança, grande parte das empresas (senão todas) não está preparada para lidar com esse fator. Lembre-se de que o espião usará boa vontade, a cortesia, a ingenuidade das pessoas e mesmo as normas da empresa para enganar a vítima.

 

Tipos de ataque

 

Existem basicamente dois tipos de ataques: o direto e o indireto. A eficiência deles depende das habilidades pessoais do hacker e do quanto ele se identifica com os processos. Normalmente, é necessário utilizar uma combinação de ambos para obter o resultado desejado. Para chegar á abordagem direta, o invasor deve ter conseguido uma bela coleção de informações obtidas de modo indireto. Só assim poderá "saber do que está falando" quando abordar um funcionário do teleatendimento para conseguir uma senha de acesso ao sistema ou enviar aquele fax dizendo que é o gerente da filial solicitando informações.

 

a) Ataque indireto

O ataque indireto consiste basicamente na utilização de ferramentas de invasão (como cavalos de tróia e sites com código malicioso) e de impostura (como cartas, e-mails e sites falsos com a aparência dos verdadeiros) para obter informações pessoais. Os usuários individuais de quem o hacker extrai os dados são apenas vetores para a coleta de informações de uma entidade maior - empresa, organização ou governo. sua intenção não é atacar cada um desses usuários, e sim o organismo maior ao qual elas pertencem.

b) Ataque direto

São caracterizados pelo contato pessoal. Geralmente são feitos por fax ou telefone (embora hackers mais confiantes ousem fazê-los pessoalmente...) e exigem planejamento detalhado e antecipado, vários planos de emergência para cada uma das fases do ataque previamente planejadas e um pouco de dom artístico. Sim, um bom invasor tem a obrigação de ser bom ator. Este deve ser bem articulado para que seu plano não seja desmascarado, e também ter raciocínio rápido para encontrar saídas caso algo fora do planejado dê errado.

 

Métodos utilizados

 

É óbvio que todo esse falatório sobre ataques diretos e indiretos é extremamente vago. Na prática, existem algumas táticas simples que deve ser usadas na elaboração do procedimento de ataque. As principais armas de um engenheiro no social podem ser divididas em dois grandes grupos: pesquisa e impostura.

 

Comecemos pela pesquisa. A aquisição de material, como relatórios anuais e lista de pagamento, pode dar uma ótima visão da hierarquia adotada na empresa. Isso ajuda muito na hora da seleção dos alvos pontuais (lembre-se: um pedacinho de informação extraído de cada usuário ressalta em um bolo valiosíssimo quando reunido às outras pequenas informações extraídas dos outros usuários). O hacker pode descobrir quem detém o material necessário para a invasão e outras informações importantes para o ataque, como departamento em que a pessoa trabalha, softwares utilizados, sistemas operacional, hardware e sistemas empresariais.

 

Observe que nem sempre os dados úteis estão escritos: uma análise dos resultados de sua busca, compreendendo combinações e cruzamento de informações, é importantíssima. "Ler nas entrelinhas" nunca foi tão necessário...

Mesmo assim, a pesquisa é só o começo. Depois de descobrir quem guarda as informações e quais são elas, o hacker deve pensar nos meios que utilizará para extrair mais dados. É nesse ponto que entra a impostura: o hacker deve se fazer passar por outras pessoas (seja da própria empresa, sejam clientes, fornecedores, seja até agentes do governo) para, de posse das informações já "garimpadas", angariarem dados e documentos mais sérios, específicos e, principalmente, valiosos.

A seguir amos falar sobre métodos utilizados para a aquisição de dados vitais das empresas, tanto em ataques diretos como indiretos.

 

Disfarces

 

Como um bom espião, o engenheiro social deve dispor de diversos disfarces para alcançar seus objetivos. Entre eles deve constar desde se passar por faxineiro até consultor em visita. Certas empresas adoram receber consultores de empresas famosas. Para tanto, basta apenas que o hacker tenha um terno, boa lábia e um crachá. O fator idade não é mais um problema tão grande, pois o perfil do profissional de informática é cada vez mais jovem, basta apenas tratar um pouco da aparência e da linguagem a ser utilizada.

 

A incorporação do personagem é um fator de grande importância para o sucesso. Imagine um hacker disfarçado de faxineiro. Ele simplesmente não vai andar até a lata de lixo, separar os papéis de seu interesse, e virar as costas, será até estranho se ninguém suspeitar. Ele deve fazer todo o serviço, desde limpar a mesa até varrer o chão, conseguindo mais oportunidades para entender o que acontece ao seu redor. Depois de certo tempo, as pessoas passam a confiar mais e o invasor pode tranqüilamente limpar as mesas repletas de material importante para o desenvolvimento de um ataque bem-sucedido.

 

O lixo é rico!

 

O lixo de um escritório é, potencialmente, umas das maiores fontes de informações para o hacker. Geralmente é nele que as pessoas jogam aqueles pedaços de papéis em que anotam suas senhas antes de memorizá-las ou transcrever para uma agenda. Além disso o lixo de uma grande empresa recebe dezenas de relatórios que podem parecer banais mas que, na verdade, guardam informações sobre o patrimônio da empresa, funcionários cadastrados e aspectos dos sistemas.

A falta de preocupação só com esse fator isolado pode render uma invasão bem-sucedida e ainda ajudar o invasor a limpar seus rastros. Muitas vezes, ele mesmo pode estar lá para recolher o lixo da sala do administrador. Obviamente, isso depende muito da perícia do hacker e do quanto ele realmente precisa das informações, caso contrário, ele pode esperar até que o material seja posto para coleta, o que não seria muito recomendado.

 

Funcionários descontentes e redes de contatos

 

Talvez seja a forma mais fácil de conseguir informações dentro de uma empresa. Muitas vezes pode custar certo valor (nem sempre em dinheiro...), mas isso vai depender do teor de insatisfação do funcionário para com a empresa em questão. Explorar a fragilidade de pessoas insatisfeitas com as condições de trabalho é muito mais simples do que podemos imaginar. É muito fácil para o administrador insatisfeito com o salário falar algo que possa prejudicar seus superiores de alguma forma. Nem sempre eles são úteis após saírem ou serem demitidos, pois a política das empresas é a de trocar as senhas.

Não se deve esquecer que os funcionários de uma empresa possuem uma rede de contatos, dentro e fora dela. Isso também é válido para os descontentes, que podem fornecer ao hacker informações valiosas sobre outras pessoas e sobre caminhos para chegar a mais dados.

 

O apelo sentimental

 

O invasor pode incorporar outra pessoa, com muito mas facilidade, no mundo virtual. Vamos supor que o hacker quer invadir um computador qualquer na internet. Ele procura uma sala de chat e observa silenciosamente a conversa por um tempo. Depois, sai da sala e entra novamente com algum apelido de sexo oposto ao da vítima escolhida. A partir desse ponto é fácil conquistar a confiança que todos nós conhecemos e que, mesmo assim, funcionam. Observe que homens e mulheres possuem maneiras diferentes de serem conquistados e seduzidos.

 

Programação neurolingüistica

 

Ao se comunicar com qualquer pessoa, é possível utilizar técnicas de programação neurolingüistica para confundir a pessoa e fazê-la concordar com você. Consegue-se isso de diversas formas, sendo a mais óbvia (e que funciona em quase 100% dos casos) fazer com que a vítima acredite que na verdade a idéia foi dela. Uma das técnicas para confundir a vítima é a acompanha-acompanha-acompanha-comanda: o hacker imita o jeito de escrever, de falar e até a gesticulação de seu interlocutor. Faz isso por um bom tempo durante a conversa, até que um elo de intimidade se forme e a vítima pense que está no comando, baixando a guarda. A partir daí, o hacker pode comandar a conversa sem que a vítima perceba e sugar dela tudo o que for necessário.

 

A utilização da Internet

 

Uma forma eficaz de conseguir as informações desejadas é através de formulários e cadastros na Internet. sites que oferecem brindes para quem se cadastrar e promoções que prometem os mais variados tipos de prêmios podem não passar de instrumentos utilizados pelos hackers para conseguir uma vasta quantidade de informações sobre os internautas. Entre elas, estão dados pessoais e dicas sobre o comportamento da futura vítima. essa técnica é utilizada principalmente para a obtenção de números de cartões de crédito e dados como CPF e RG.

O fator sorte

Há muitos casos em que os procedimentos de engenharia social são facilitados por descuidos dos usuários e dos administradores do parque de informações das empresas. Ás vezes, mesmo empresas muito seguras deixam escapar uma, e apenas uma, informação não óbvia. Se o hacker tiver sorte de tropeçar nessa informação, seu processo de engenharia social poderá ser abreviado em vários dias, às vezes semanas.

 

Navegando pelo mar proibido

 

Mesmo depois de invadidos, um computador, um site ou uma empresa são um quebra-cabeça complicado para o invasor. Até então este possuía as informações sobre a periferia. Agora ele tem acesso irrestrito a todas as áreas do local invadido, mas que para ele se parece mais com um labirinto. O controle de acesso e usuários internos de empresas, por exemplo, normalmente é menos rigoroso que os procedimentos de segurança das partes visíveis externamente (site, e-mail, gateways, Internet). Mas ainda assim, uma vez dentro, o invasor deverá quebrar senhas, contornar dispositivos de segurança ou mesmo utilizar novamente a engenharia social para obter informações cada vez mais próximas do núcleo. (Este é um processo sem fim ;-)

 

Casos reais

 

Abraham Abdallah, em 2002, o hacker e lavador de pratos Abraham Abdallah recebeu acusações de fraudes da ordem de US$ 80 milhões. Utilizando-se da revista Forbes, que publicou uma lista com as 400 pessoas mais ricas dos EUA, ele roubou o número de diversos cartões de crédito das pessoas famosas. Utilizando técnicas de engenharia social, Abdallah enganou bancos e empresas de crédito para conseguir as informações para o seu golpe.

 

Chegou a montar uma rede de caixas postais para receber as encomendas que fazia com o dinheiro roubado. Foi descoberto pela polícia ao tentar retirar uma quantia acima do saldo existente de Thomas Siebel, fundador da empresa de e-commerce chamada Siebel Systems.

 

Kevin Mitnick, já foi um dos criminosos mais procurados pelo FBI, devido aos crimes digitais que cometeu. Após ganhar a liberdade, ajudou a fundar uma empresa de consultoria especializada em segurança, a Defensive Thinking. Esse é um fato que chega a surpreender muito, pois Mitnick tornou-se um símbolo da engenharia social ao planejar e realizar seus ataques aos sistemas de grandes empresas pelo mundo.

Ele usou as artimanhas da engenharia social pela primeira vez nos anos 70, ao conhecer um estudante que lidava com "phreaking" (o hackerismo de linhas telefônicas). Ele percebeu como os phreakers agiam, fazendo-se passar por funcionários das companhias telefônicas. Começou a tentar com amigos e professores e sentiu-se motivado após notar que tinha facilidade em conseguir informações confidenciais. Ele foi evoluindo suas táticas até o ponto em que nenhuma empresa estava mais segura contra os seus ataques.

Sua lista de ataques inclui desde telefonemas inocentes ao setor de suporte até a incorporação de funcionários importantes para conseguir informações como senhas para obter acesso a grandes sistemas da empresa. dessa forma, Mitnick tornou-se uma lenda para a população hacker ao redor do mundo.

 

Além desses, podemos citar, com louvor, outros hakers que se utilizaram de engenharia social para atingir seus objetivos:

Poderíamos preencher completamente esta matéria citando diversos hackers famosos (inclusive brasileiros). Apenas estes exemplos, entretanto, mostram como as estruturas de segurança, que já são ruins no campo tecnológico, ficam piores quando o fator humano entra em campo.