Questions d'entretien Cybersecurite
1. Expliquez les principales vulnerabilites du OWASP Top 10 (2021).
Les 10 risques les plus critiques pour les applications web : A01 Broken Access Control (un utilisateur accede a des ressources non autorisees), A02 Cryptographic Failures (donnees sensibles non chiffrees), A03 Injection (SQL, NoSQL, LDAP, OS command injection), A04 Insecure Design (defauts architecturaux), A05 Security Misconfiguration (configurations par defaut, headers manquants), A06 Vulnerable Components (dependances avec des CVE connues), A07 Authentication Failures, A08 Data Integrity Failures (deserialisation, CI/CD non securisees), A09 Logging Failures, A10 SSRF (Server-Side Request Forgery).
2. Comment fonctionne une attaque par injection SQL et comment s'en proteger ?
L'injection SQL se produit quand une entree utilisateur est inseree directement dans une requete SQL. Exemple : une requete WHERE user = 'input' avec input = ' OR '1'='1 retourne toutes les lignes. Protection : requetes parametrees (prepared statements) qui separent le code SQL des donnees, ORM qui genere des requetes securisees, validation des entrees (whitelist, pas blacklist), principe du moindre privilege (le compte DB n'a que les droits necessaires), et WAF (Web Application Firewall) comme couche supplementaire.
3. Expliquez la cryptographie symetrique vs asymetrique.
Cryptographie symetrique : une seule cle pour chiffrer et dechiffrer. Rapide, utilisee pour les gros volumes. Algorithmes : AES (standard, 128/256 bits), ChaCha20. Probleme : comment partager la cle en securite ? Cryptographie asymetrique : une paire de cles publique/privee. La cle publique chiffre, la cle privee dechiffre (ou inversement pour la signature). Algorithmes : RSA, ECDSA, Ed25519. Plus lent, utilise pour l'echange de cles et les signatures. TLS combine les deux : asymetrique pour l'echange de cles, symetrique pour les donnees.
4. Qu'est-ce que le Zero Trust et comment l'implementer ?
Le Zero Trust est un modele de securite base sur le principe "ne jamais faire confiance, toujours verifier". Contrairement au modele traditionnel (perimetrique : securiser la frontiere du reseau), le Zero Trust verifie chaque requete independamment de sa provenance. Implementation : authentification forte (MFA) pour chaque acces, micro-segmentation du reseau, moindre privilege (acces minimal necessaire), verification continue (pas seulement a la connexion), chiffrement de bout en bout, et monitoring de toutes les activites.
5. Comment fonctionne TLS/HTTPS ?
Le TLS handshake : le client envoie un ClientHello (versions supportees, cipher suites). Le serveur repond avec son certificat X.509 (contenant sa cle publique). Le client verifie le certificat (chaine de confiance vers une CA racine). Les deux parties negocient une cle de session symetrique (via ECDHE pour le forward secrecy). Les donnees sont ensuite chiffrees avec cette cle symetrique (AES-GCM). TLS 1.3 simplifie le handshake (1 aller-retour au lieu de 2) et elimine les algorithmes obsoletes.
6. Expliquez les differentes types d'authentification et leurs forces.
Mots de passe : le plus courant mais le plus faible (phishing, brute force, reutilisation). MFA (Multi-Factor Authentication) : combine deux facteurs parmi connaissance (mot de passe), possession (telephone, cle physique), inherence (biometrie). FIDO2/WebAuthn : authentification sans mot de passe avec des cles de securite (YubiKey) ou la biometrie de l'appareil. SSO (Single Sign-On) avec SAML ou OIDC : une seule authentification pour multiple services. Passkeys : evolution de FIDO2, remplacement des mots de passe sur mobile et desktop.
7. Comment detecter et repondre a un incident de securite ?
Processus de reponse aux incidents (NIST) : 1. Preparation (plan de reponse, equipe, outils), 2. Detection et analyse (alertes SIEM, analyse des logs, triage), 3. Confinement (isoler les systemes affectes, preserver les preuves), 4. Eradication (supprimer la cause racine, patcher les vulnerabilites), 5. Recuperation (restaurer les services, verifier l'integrite), 6. Lecons apprises (post-mortem, mise a jour des procedures). Outils : SIEM (Splunk, Sentinel), EDR (CrowdStrike, SentinelOne), SOAR pour l'automatisation.
8. Qu'est-ce que le XSS et comment s'en proteger ?
Le Cross-Site Scripting (XSS) injecte du code JavaScript malveillant dans une page web. Types : Stored (stocke en base, execute a chaque visite), Reflected (dans l'URL, execute au clic), DOM-based (manipulation du DOM cote client). Protection : encodage contextuel des sorties (HTML entities, JavaScript escape, URL encode), Content Security Policy (CSP) headers, validation des entrees, sanitisation HTML (DOMPurify), frameworks modernes qui echappent par defaut (React, Angular, Vue).
9. Comment securiser une API REST ?
Bonnes pratiques : authentification (OAuth 2.0 / JWT, pas de cles API en parametre d'URL), autorisation (RBAC/ABAC au niveau des endpoints et des ressources), HTTPS obligatoire, rate limiting (prevenir les abus et le brute force), validation des entrees (schema validation avec Zod, Joi, JSON Schema), headers de securite (CORS strict, X-Content-Type-Options, Strict-Transport-Security), logging des acces et des erreurs, et versionnement de l'API pour gerer les changements de maniere securisee.
10. Qu'est-ce qu'une analyse de vulnerabilites et un test d'intrusion ?
L'analyse de vulnerabilites (vulnerability assessment) est un scan automatise qui identifie les failles connues (CVE) sur les systemes, applications et reseaux. Outils : Nessus, Qualys, OpenVAS. C'est un processus regulier (hebdomadaire/mensuel). Le test d'intrusion (pentest) est une simulation d'attaque realisee par un expert qui tente d'exploiter les vulnerabilites pour mesurer l'impact reel. Types : boite noire (aucune info), boite grise (acces partiel), boite blanche (acces complet au code et a l'infrastructure). Les deux sont complementaires.