Une collection de questions d'entretien pour les rôles en sécurité de l'information
Table des matières
Sécurité des applications
-
Si vous deviez à la fois chiffrer et compresser des données lors d'une transmission, que feriez-vous en premier, et pourquoi ?
- La compression vise à utiliser les motifs présents dans les données pour réduire leur taille.
- Le chiffrement vise à randomiser les données afin qu'elles soient ininterprétables sans une clé secrète.
- Si vous chiffrez d'abord, puis compressez, votre compression sera inutile. La compression ne fonctionne pas sur des données aléatoires.
- Si vous compressez d'abord, puis chiffrez, un attaquant peut trouver des motifs dans la longueur des messages (taux de compression) pour apprendre quelque chose sur les données et potentiellement déjouer le chiffrement (comme CRIME)
- Ressources :
-
Que pourraient faire des attaquants avec une vulnérabilité d'injection d'en-têtes HTTP ?
- Les retours chariot et les sauts de ligne (ou %0D et %0A) sont des moyens permettant aux attaquants de contrôler les en-têtes HTTP
- Les attaquants pourraient injecter du XSS via l'en-tête Referer
- Les attaquants pourraient définir un cookie à une valeur connue de l'attaquant (fixation de session)
- Les attaquants pourraient rediriger vers un serveur malveillant
-
Décrivez le dernier programme ou script que vous avez écrit. Quel problème résolvait-il ?
- On cherche simplement à voir si le candidat a une compréhension de base des concepts de programmation et est au moins capable d'écrire des programmes simples
-
Comment implémenteriez-vous un champ de connexion sécurisé sur un site à fort trafic où la performance est un facteur à considérer ?
-
Quelles sont les différentes façons de gérer le brute force ?
- Verrouillage/délais d'expiration des comptes
- Limitation de débit des API
- Restrictions IP
- Fail2ban
- ...etc
-
Qu'est-ce que la falsification de requête intersite (CSRF) ? Et comment s'en défendre ?
- C'est lorsqu'un attaquant amène le navigateur d'une victime à effectuer des requêtes avec les identifiants de la victime
- Exemple : si une balise image (``) pointe vers une URL avec une action associée, par ex. https://foo.com/logout
- La défense comprend, sans s'y limiter :
- vérifier l'en-tête Origin et l'en-tête Referer
- vérifier les jetons CSRF ou le nonce
-
Qu'est-ce que le Cross-Site Scripting (XSS) ? Quels sont les différents types de XSS ? Comment se défendre contre le XSS ?
- Le XSS se produit lorsque des attaquants amènent le navigateur de la victime à exécuter du code (généralement du JavaScript) dans son navigateur
- Traditionnellement, les types ont été classés en attaques XSS stockées (Stored) et réfléchies (Reflected).
- Le XSS stocké est du code qu'un attaquant a pu persister dans une base de données et qui est récupéré et présenté aux victimes (par ex. forum)
- Le XSS réfléchi se présente généralement sous la forme d'une URL malveillante qui inclut le code malveillant. Lorsque l'utilisateur clique sur le lien, le code s'exécute dans son navigateur
- Récemment, il y a eu des discussions autour du XSS basé sur le DOM, qui se produit lorsque les attaquants peuvent contrôler des éléments du DOM, réalisant ainsi du XSS sans envoyer de requêtes au serveur
- Les catégories de XSS ont tendance à se chevaucher ; il est donc bien préférable de décrire le XSS en termes comme XSS stocké côté serveur (Server Stored XSS), XSS réfléchi côté serveur (Server Reflected XSS), XSS stocké côté client (Client Stored XSS) (par ex. XSS stocké basé sur le DOM) ou XSS réfléchi côté client (Client Reflected XSS) (par ex. XSS réfléchi basé sur le DOM)
- La défense comprend :
- Encodage de sortie (plus important)
- Validation des entrées (moins important)
-
Comment HTTP gère-t-il l'état ?
- HTTP est sans état
- L'état est stocké dans les cookies
Architecte
- Avez-vous conçu des mesures de sécurité couvrant des domaines d'information qui se chevauchent ?
- Pouvez-vous me donner quelques exemples d'exigences d'architecture de sécurité ?
- Quels défis de sécurité particuliers l'architecture orientée services (SOA) présente-t-elle ?
- Avez-vous conçu une solution de sécurité intégrant des composants SaaS ? À quels défis avez-vous fait face ?
- Avez-vous travaillé sur un projet dans lequel les parties prenantes ont choisi d'accepter des risques de sécurité identifiés qui vous inquiétaient ? Comment avez-vous géré la situation ?
- Comment gérez-vous les demandes de différentes parties prenantes ayant des exigences contradictoires ?
- Comment vous assurez-vous que les architectes de solutions développent des solutions sécurisées ?
- Comment vous assurez-vous qu'une solution continue d'être résiliente face à des menaces en évolution ?
- Quelle est, selon vous, la technologie la plus importante actuellement ? Comment allons-nous la sécuriser ?
Blue Team
- Étant donné un journal du trafic HTTP entre une machine de votre réseau et un site web tiers (par ex. Google), à quoi ressembleraient les ports source et destination ?
- Le port source pourrait être un nombre supérieur au port 1024 (aussi appelé port éphémère)
- Le port destination pourrait être 80 (HTTP) ou 443 (HTTPS)
Chiffrement
-
Quelle est la différence entre l'encodage, le chiffrement et le hachage ?
- L'encodage assure l'intégrité du message. Il peut être facilement réversible. Exemple : base64
- Le chiffrement garantit la confidentialité du message. Réversible uniquement avec les clés de déchiffrement appropriées. Exemple : AES256
- Le hachage est une fonction à sens unique. Il ne peut pas être inversé. La sortie a une longueur fixe et est généralement plus petite que l'entrée.
-
Est-ce que TLS utilise un chiffrement symétrique ou asymétrique ?
- Les deux.
- L'échange initial est effectué avec un chiffrement asymétrique, mais le chiffrement des données en volume est effectué avec un chiffrement symétrique. Voir la question suivante pour plus d'informations.
- Ressources :
-
Décrivez le processus d'établissement d'une session TLS lorsqu'une personne visite un site web sécurisé.