Evitando ataques de engenharia social By w4r10ck
Conteúdo Básico Para Iniciantes
Peguei essa materia em um antigo blog que eu tinha (Nen lembro se foi eu mesmo que escrevi ou não) mas de qualquer forma eu estou disponibilizando para vocês, afinal engenharia social é o 1ºPasso para um iniciante! :Laughing:
Como evitar ataques de engenharia social?
O fator humano é uma das maiores causas de invasões e ataques na rede, seja por uma senha fraca ou pelo esquecimento de algum cuidado básico de segurança. Por isso devemos voltar nossa atenção para os "ataques" de engenharia social, que muita vezes podem dar acesso root para um cracker em menos de 10 minutos, dependendo da habilidade do mesmo. Um ataque de engenharia social é muito mais popular do que se pensa, uma vez que, se bem aplicado, é praticamente indetectável. Vamos abordar algumas etapas de um "ataque" de engenharia social como exemplo e também como evoluir o fator humano para que não caia nesse golpe. A informação está na rede. Tudo que um "engenheiro social" precisa é de informações sobre a empresa que pretende atacar. Onde encontrá-las ? Na própria internet. Uma simples visita ao site da empresa pode revelar detalhes interessantes como : empresa que produziu o site (usarei o nome ficticio XXX para me referir a esta empresa), programas que são usados no site (bancos de dados,sistema operacional,etc...), empresas parceiras, etc. De posse dessas informações fica bastante fácil planejar um golpe de "people spoofing" (termo interessante, não ?). O invasor pode ainda usar uma ferramenta de varredura de redes e descobrir que o sistema operacional é, por exemplo, um OpenBSD "nao-exploravel" com a porta 22 aberta (referente ao sshd para conexao remota), agora só é preciso uma senha. De posse desses dados um cracker pode passar a mão no seu telefone e colher mais detalhes para finalmente lançar-se em direção ao alvo. Assim o cracker liga para a empresa que fez o site da empresa alvo para descobrir jargões e nomes que poderá utilizar na sua investida. Passando-se por um cliente como qualquer outro ele pode adquirir o nome de funcionários da area técnica que eventualmente poderá usar para se "relacionar" com a empresa alvo, ele também cita o nome da empresa alvo dizendo que viu o logo da XXX no site dela e pergunta "inocentemente" detalhes sobre o serviço prestado para o alvo dessa forma consegue descobrir que eles possuem um servidor interno com um serviço de IP direto e um link de 1 Mb/s além de um __contrato de manutenção do site__. Manipulando a informação para o ataque De posse de tantos detalhes fica bastante fácil tramar um pequena história para envolver um funcionário inocente. Supondo que o "people spoofer" tenha descoberto que o funcionário responsável pela manutenção das páginas criadas pela empresa XXX seja o Fulano, ele liga para a empresa alvo passando-se por Fulano. Um possível diálogo poderia ser : Atendente : Empresa alvo. Boa Tarde. Cracker[Fulano] : Boa tarde. Eu sou Fulano da empresa XXX, nós criamos o site de vocês e eu preciso fazer uma manutenção na página, você pode me passar para o setor de informática? /* OBS.: Neste ponto não há o que fazer, a atendente simplesmente redireciona a chamada. A seguir veja onde está o problema.*/ Funcionário CPD : CPD. Boa tarde. Cracker[Fulano] : Boa tarde. Aqui é o Fulano, eu sou da Empresa XXX e não consegui me logar no servidor de vocês para ajustar alguns links. Vocês mudaram a senha do root ? /* Falando com profissional da área técnica, o Cracker já utiliza jargões comuns a todos nós. Como o Cracker havia ligado para a empresa XXX, que fez o site, ele já sabe como eles lidam com os clientes e também como falam ao se referirem a mesma coisa, como usar site,homepage,página,website,etc... */ Funcionário CPD : Hmmm...Até onde eu sei não foi mudado nada. Cracker[Fulano] : Estranho...A senha não é Bc07dp12 ? /* Neste ponto o funcionário já acretida estar falando com um funcioário da empresa XXX */ Funcionário CPD : Não, a senha é S3rvid0r. Com 'S' maiusculo. //Senha fraca por sinal O cracker conversa durante mais algum tempo para não gerar desconfiança e se despede agradecendo a colaboração. É claro que este diálogo normalmente é mais longo, porém de posse da informação correta o desfecho é quase sempre o mesmo. Tempo depois o site da empresa é invadido e tem a página principal totalmente desfigurada. Não se pode detectar a origem porque os logs foram todos apagados e ninguém sabe como aconteceu o ataque e também não se lembram que a senha foi passada por telefone para o suposto funcionário da empresa XXX. Vale lembrar que um ataque de engenharia social NÃO tem como objetivo principal simplesmente invadir um site e sim adquirir outros dados muito mais relevantes que poderiam inclusive serem vendidos para competidores. É possível inventar ataques desse tipo até onde a imaginação humana possa alcançar, caraterizando assim um golpe potencialmente perigoso. A única maneira de evitar esses ataques é implantar uma politica de segurança que tenha abrangencia sobre todos os setores da empresa. Gerenciando o fator humano. Neste exemplo acima tudo começou com uma visita ao site da empresa onde o Craker colheu varios dados iportantes sobre ela. O ponto fraco de um ataque de engenharia social não esta aqui. Não é preciso,nem recomendado, retirar os dados do site(removendo o logos powered by... ou design by...), o ponto fraco do exemplo acima se encontra no funcionário do CPD que passou a senha do superusuário por telefone para alguém que ele não teria como saber com certeza se era realmente quem dizia ser. Para evitar essa situação é preciso que seja implantada um politica de segurança dentro da empresa. 1 ) Senhas por telefone são muito perigosas. É muito mais seguro fazer isso por e-mail, o funcionário do CPD devia ter dito que "devido a uma politica de segurança eu não posso lhe passar a senha por telefone mas estarei enviando a senha para root@XXX.com.br...". Desta forma garante-se que a senha chegará em um lugar supostamente seguro, onde o suposto funcionário poderia,caso realmente fosse funcionário da empresa XXX, acessar facilmente. 2 ) Ética ao falar sobre outro cliente em específico. Os funcionários nunca devem passar detalhes de seus clientes para outros supostos clientes, isso representa um perigo já que a informação é tudo neste caso. Deve-se educar os funcionários para sempre falarem de maneira genérica. Este segundo item se aplica a empresa XXX que fez o site da empresa alvo e acabou revelando detalhes vitais para o Cracker. OBS.: NUNCA passar senhas por telefone, sempre usar e-mail ou pessoalmente. Caso estes dois passos acima fossem seguidos uma invasão seria evitada. Provedores de acesso a internet e empresas de telefonia também devem adotar politicas de segurança como esta porém com mais alguns itens. Quando um usuário liga dizendo que perdeu seu nome de usuário ou senha(ou ainda que gostaria de alguma outra informação referente a sua conta, resultado parcial da conta do celular por exemplo) a atendende além de solicitar o nome da pessoa deve pedir educadamente para "verificar se os dados da pessoa estão atualizados", dessa forma são solicitados os dados e conferidos com os dados constantes no cadastro. Caso os dados mais relevantes como nome completo,data de nascimento,RG,CPF sejam iguais ao do referente cadastro, poderá ser fornecida a informação solicitada para o cliente. Porém, mesmo fazendo todas essas verificações não é possível ter certeza de que a pessoa é realmente quem afirma ser( um cracker pode ter conseguido essas informações de alguma forma, revirando o lixo por exemplo ). Infelizmente esse processo pode se tornar cansativo e chatear um cliente que realmente perdeu seu nome de usuário ou senha, porém este processo é vital para se manter o minímo de segurança. Podemos ainda sugerir que na hora do cadastro seja solicitado ao cliente que estabeleça uma pergunta que ele deseja responder em situações como essas, assim ficam armazenados no cadastro a pergunta e resposta esperada, por exemplo : O cliente fez seu cadastro por telefone e após serem cadastrados todos os dados a antendente explica os motivos pelo qual é feito isso e pede para que o cliente recém cadastrado diga uma pergunta (que lhe será feita em casos de solicitação de dados sigilosos, senha, usuário, etc..) e uma resposta que também ficará armazenada no cadastro. Assim, o cliente quando for solicitar sua senha deve responder a pergunta : Atendente pergunta: Qual o nome de seu animal de estimação ? Cliente responde : Thunder. Caso a resposta seja correta a atendente poderá fornecer a informação para o cliente. É importante que a pergunta seja de cunho mais pessoal possível e que não se sobreponha a nenhum dos outros dados como "Qual minha data de nascimento ?". A atendente que cadastrar o cliente deve evitar que perguntas como essas sejam utilizadas. Muitas vezes é muito mais confortável para o cliente responder o CPF ou RG e a pergunta do que todos os dados do seu cadastro. Cadastros e formulários de recuperação de senhas pela internet devem seguir o mesmo padrão. Grande parte das empresas de telefonia fixa e celular exigem apenas o CPF para fornecerem dados como resultado parcial da conta ou solicitar algum novo serviço. Juntamente com os cuidados acima é recomendado usar em conjunto um serviço de indentificação de chamada ( BINA ), desta forma basta a pessoa que está fazendo o atendimento peguntar o telefone de onde o suposto cliente está ligando para posterior contato. Caso o telefone fornecido pelo suposto cliente e o constante no indentificador de chamada não sejam os mesmos, já pode-se descofiar de algo. O Lixo Tudo que é jogado no lixo de uma empresa pode ser aproveitado para a criação de um ataque de engenharia social. Basta criar situações em cima daqueles dados e pronto, por isso nunca jogar de forma aproveitável o seguintes itens : * Cadernetas com telefones; * Memorandos; * Manuais com politícas internas da empresa; * Calendários com informações sobre eventos, cursos ou férias; * Manuais dos Sistemas utilizados; * Qualquer coisa que contenha nome de usuários e senhas; (óbvio, mas acontece) * Disquetes,CDs ou HDs aparentemente inutilizáveis; * Papel timbrado da empresa. Sempre que algum destes itens forem jogados fora devem ser completamente inutilizados(picados, furados, queimados, etc). O caso Kevin Mitnick É impossível escrever um documento sobre engenharia social sem citar Kevin David Mitnick( também conhecido como Condor,N6NHG,Anton Chernoff,Fred Weiner,Lee Nussbaum,Brian Merrill,Tom Bodette e muitos outros nomes que usou em sua fase cracker/phreaker/engenheiro social ). Kevin obtinha sucesso na grande maioria dos ataques devido o fato de ser um sujeito com uma voz carismática ao telefone, fato este importatissímo para que as pessoas colaborassem. Ele treinava consigo mesmo seus ataques. Kevin costumava dizer "...eu pratico antes até me convencer de que a história que estou representando é real e acreditar nela..." . Mitnick não tinha muito critério para escolher seu alvo, apenas pensava "e se a pessoa do outro lado cair nessa história?", então pegava o telefone e executava seu "ataque". Ele conseguiu muito sucesso em suas investidas com uma simples simulação de um funcionário do Seguro Social americano. Veja o exemplo deste diálogo para ter uma ideia da facilidade de se conseguir a informação desejada : -- Alô, aqui é Tom Bodette, da Administração da Seguridade Social. Eu gostaria de saber se vocês podem me ajudar com um problema que estamos tentando esclarecer. -- Posso tentar. -- Nossos registros aqui parecem estar meio confusos. Achamos que as informações sobre seus parentes podem estar trocadas. Vejamos...O senhor conhece Mary Eberle ? -- É minha irmã. -- Sua irmã ? Então, quem é Joseph Wernle ? Mary por acaso tem um filho chamado Joseph Wernle ? -- Não, o filho dela se chama Joe Ways. -- Ele mora na Pensilvânia ? -- Não, no Sul da Califórnia. É agente do FBI. -- Sinto muito, então. Devo ter querido falar com Wernle errado... Com este simples telefonema Mitnick conseguiu mais informações sobre os agentes do FBI envolvidos no seu caso. Nesse diálogo podemos ver a dificuldade ou até mesmo a impossibilidade de evitar um ataque de engeharia social. A pessoa do outro lado da linha não teria o que argumentar caso não quisesse colaborar. Ataques de engeharia social para pessoas comuns tendem a ter um resultado muito mais satisfatório do que para empresas. Utilizando o mesmo nome ( Tom Bodette ) Kevin conseguiu descobrir telefones grampeados pela Pac Bell. Ele simplesmente ligou para o Centro de Controle e Comutação da Bell se passando por um funcionário da Bell e disse que precisava desligar o grampo para fazer uma manutenção e depois, ao pedir o número para ligar o grampo, descobria o telefone grampeado . Empresas de telefonia nas quais os funcionários se comunicam muito por telefone ou rádio devem criar um método para indentificação dos funcionários(código e senha). Caso algum técnico ligue para a central solicitando alguma informação deve ser checado seu código e senha no sistema da central e, caso estejam corretos, será feita uma verificação para assegurar que este funcionário pode ter acesso à informação solicitada. Acredito ter conseguido mostrar com esse documento uma pequena parte do mundo da engenharia social, um golpe que nunca deixou de existir e que pode passar facilmente por qualquer firewall do mundo. Vale lembrar que quem pratica engenharia social pode ser enquadrado no crime de falsidade ideológica com pena prevista de 1 (um) a 3 (três) anos de reclusão em regime fechado, portanto não devemos praticar engeharia social "apenas para testar". Também posso dizer que um "people spoofer" raramente é capturado, ao menos que a operadora local de telefonia colabore ou que a empresa atacada possua estrutura de identificacao mais sofisticada (no caso de telefonia)
Lembre-se engenharia social não se aplica só no Cyber-Spaço, Mais sim na vida Real! :Greedy:
Nenhum comentário:
Postar um comentário