Expert Cybersécurité & IAv9.0
Besoin d'un accompagnement expert ?
Devis personnalisé sous 24h — audit, conformité, incident

Techniques de Hacking

31 articles
ETW Tampering : Évasion et Détection sur Windows en 2026 TPM et BitLocker : Cold Boot et Bypass Chiffrement Covert Channels Réseau : Stéganographie et Exfiltration Avancée Type Confusion V8 : Exploitation Avancée Navigateurs eBPF Offensif : Rootkits, Évasion et Détection Kernel-Level DMA Attacks : Exploitation Thunderbolt, PCIe et FireWire 2026 Type Confusion V8 : Exploitation Avancée Navigateurs Vol de Mots de Passe Chrome : DPAPI, Exploits et Outils Extraction Credentials Firefox : NSS, Key4.db et Exploits Hacking Password Managers Navigateurs : Attaques Expert EvilGinx : Phishing AiTM, Bypass MFA et Défense 2026 Persistance Windows Server 2025 : Techniques Complètes Escalade de Privilèges Windows 2025 : Scénarios Réels Buffer Overflow et Corruption Mémoire : Stack, Heap et Escalade de Privilèges Linux : Techniques Offensives et Escalade de Privilèges Windows : Du User au SYSTEM Hacking WordPress Expert : Red Team, Supply Chain et Hacking WordPress : Fondamentaux, Vulnérabilités : Guide Hacking WordPress Intermédiaire : Exploitation Avancée Infostealers : La Menace Silencieuse qui Alimente le Injection SQL Avancée : De la Détection à l'Exploitation MITRE ATT&CK : Les 10 Techniques les Plus Utilisées en OSINT et Reconnaissance Offensive : Du Renseignement Password Attacks : Cracking, Spraying et Credential Stuffing Ransomware : Anatomie d'une Attaque, Kill Chain et Reverse Engineering et Analyse de Malware : Guide Pratique Red Team vs Pentest vs Bug Bounty : Comparatif Complet Bug Bounty : Créer et Gérer un Programme de Sécurité Zero Trust Architecture : Implémentation Complète et Mouvement Latéral : Techniques d'Attaque, Détection et Attack Surface Management (ASM) : Gestion Continue de la

Attaques Active Directory

43 articles
Mouvement Latéral Windows AD 2026 : Techniques Expert Impacket : Guide complet exploitation Active Directory 2026 Pentest Active Directory : Guide Méthodologique Complet 2026 BloodHound : Cartographie des Chemins d'Attaque Active NTDS.dit : Extraction, Analyse et Protection des Secrets LAPS : Gestion Sécurisée des Mots de Passe : Guide Complet Tiering Model Active Directory : Segmentation des : Guide GPO Sécurisation Active Directory : Hardening par : Guide Forum InCyber 2026 : Securite AD en Vedette : Guide Complet Conditional Access Entra ID : Nouveautes Mars 2026 ADCS 2026 : Bilan ESC1 a ESC15 et Remediation en 2026 BloodHound 5 : Nouveaux Chemins d'Attaque Detectes Audit AD Automatise PowerShell : Scripts 2026 en 2026 NTLM Relay 2026 : Techniques et Defenses Actuelles Tiering Model AD 2026 : Adapter Face aux Menaces en 2026 Passwordless AD : Bilan des Risques et Opportunites Entra ID : Fin des Service Principals Legacy : Guide Complet BadSuccessor DMSA : Compromettre Active Directory en 2026 AD FS et SAML : Methodologie et Recommandations de Securite RBCD Abuse Active Directory | Active Directory 2026 Computer Account Takeover Active : Analyse Technique Active Directory Certificate Services : Guide Complet Forest Trust Abuse Active | Defence Active Directory ACL Abuse Active Directory | Active Directory 2026 AS-REP Roasting : Exploitation : Analyse Technique Kerberoasting : Guide Complet | Active Directory 2026 Password Filter DLL : Guide Pratique Cybersecurite Pass-the-Hash (PtH) : Comprendre, : Analyse Technique AdminSDHolder : Persistance via : Analyse Technique Pass-the-Ticket Active Directory : : Guide Complet NTFS Tampering et Anti-Forensics : Analyse Technique GPO Abuse Active Directory | Active Directory 2026 SIDHistory Injection Active Directory : Guide Complet Skeleton Key Malware Active | Active Directory 2026 Silver Ticket Active Directory : Analyse Technique DCSync Attack : Exfiltration | Active Directory 2026 DCShadow : Attaque Furtive | Active Directory 2026 Golden Ticket Attack : Guide Pratique Cybersecurite Migration MFA Entra : Revoquer les Sessions Legacy Attaques AD 2025 : Bilan et Tendances Emergentes en 2026 Entra Connect SyncJacking : Bloquer l'Attaque en 2026 CVE-2025-21293 : Escalade de Privileges AD DS en 2026 Durcissement AD : Guide des Recommandations Microsoft

Intelligence Artificielle

166 articles
Qdrant vs Milvus vs Weaviate : Bases Vectorielles pour RAG Sécurisé Jailbreak LLM : Taxonomie et Détection Automatisée Sécuriser un Pipeline RAG : Du Vector Store à l'API Exfiltration de Données via RAG : Attaques Contextuelles AI Red Team : Auditer un Modèle IA en Production 2026 Prompt Injection Avancée : Attaques et Défenses 2026 La Puce Analogique que les États-Unis ne Peuvent Arrêter Contenu IA : Outils de Detection Proactive Multimodale Prompt Injection et Attaques Multimodales : Défenses en 2026 Stocker et Interroger des Embeddings à Grande Échelle Benchmark LLM Mars 2026 : Etat des Lieux Complet en 2026 Claude Opus 4.6 : Applications en Cybersecurite en 2026 AI Worms et Propagation Autonome : Menaces Émergentes 2026 Confidential Computing et IA : Entraîner et Inférer dans IA Générative pour le Pentest Automatisé : Méthodes et IA et Gestion des Vulnérabilités : Priorisation EPSS Long Context vs RAG : Quand Utiliser 10M Tokens au Lieu Mixture of Experts (MoE) : Architecture, Sécurité et AI Model Supply Chain : Attaques sur Hugging Face et les IA et SCADA/ICS : Détection d'Anomalies sur les Protocoles Sparse Autoencoders et Interprétabilité Mécanistique IA et Zero Trust : Micro-Segmentation Dynamique Pilotée par Red Teaming IA 2026 : Tester les LLM en Entreprise MCP Model Context Protocol : Securiser les Agents en 2026 AI Act 2026 : Implications pour les Systèmes Agentiques et Context Engineering pour Agents Multimodaux : Guide Complet Défense contre les Attaques IA Générées : Stratégies Détection Proactive de Contenu Généré par IA Multimodal Embodied AI : Agents Physiques, Robotique et Sécurité en Forensic Post-Hacking : Reconstruction et IA : Guide Complet Gouvernance Globale de l'IA 2026 : Alignement International Gouvernance du Hacking IA Offensive : Cadre et Bonnes Pra... Green Computing IA 2026 : Eco-Responsabilite et Sobriete Hacking Assisté par IA : Génération de Payloads et Human-AI Collaboration 2026 : Travailler avec des Agents Intégration d'Agents IA avec les API Externes en 2026 LLMOps pour Agents Autonomes : Monitoring et CI/CD Mémoire Augmentée Agents : Vector + Graph 2026 en 2026 Détection Multimodale d’Anomalies Réseau par IA en Multimodal RAG 2026 : Texte, Image, Audio : Guide Complet PLAM : Agents IA Personnalisés Edge et Déploiement Prompt Hacking Avancé 2026 : Techniques et Défenses Prompt Injection et Attaques Multimodales : Défenses en Red Teaming Cyber-Défense Agentique : Méthodologie Responsible Agentic AI : Contrôles, Garde-Fous et 2026 Agents RAG avec Actions : Récupération et Exécution Sécurité des Agents IA en Production : Sandboxing et Shadow Agents IA : Identification et Gouvernance 2026 Traçabilité des Décisions d'Agents Autonomes : Guide Agentic AI 2026 : Autonomie en Entreprise : Guide Complet Agents IA et Raisonnement Causal pour la Décision 2026 Agents IA Edge 2026 : Privacy, Latence et Architecture PLAM Architectures Multi-Agents et Orchestration LLM en Produc... Collaboration Multi-Agents IA 2026 : Orchestration et RAG Agentique : Pipelines IA Autonomes en Entreprise IA et Analyse Juridique des Contrats Cybersécurité Apprentissage Fédéré et Privacy-Preserving ML en 2026 IA pour la Défense et le Renseignement : Cadre Éthique Données Synthétiques : Génération, Validation et 2026 DSPy et la Programmation Déclarative de LLM : Guide IA dans la Finance : Détection de Fraude Temps Réel et Gouvernance LLM et Conformite : RGPD et AI Act 2026 Playbooks de Réponse aux Incidents IA : Modèles et IA Neuromorphique : Architecture et Securite en 2026 Pydantic AI et les Frameworks d'Agents Type-Safe en 2026 Quantum Machine Learning : Risques et Opportunités pour la RAG en Production : Architecture, Scaling et Bonnes Reinforcement Learning Appliqué à la Cybersécurité AI Safety et Alignement : Du RLHF au Constitutional AI en IA dans la Santé : Sécuriser les Modèles Diagnostiques et Sécurité LLM Adversarial : Attaques, Défenses et Bonnes Speculative Decoding et Inférence Accélérée : Techniques Voice Cloning et Audio Deepfakes : Detection en 2026 IA Agentique 2026 : Risques et Gouvernance : Guide Complet Agents IA Autonomes : Architecture, Frameworks et Cas Automatiser le DevOps avec des Agents IA : Guide Complet Agents IA pour le SOC : Triage Automatisé des Alertes AI Act et LLM : Classifier vos Systèmes IA : Guide Complet AI TRiSM : Framework Gartner Appliqué : Guide Complet IA pour l’Analyse de Logs et Détection d’Anomalies en IA et Automatisation RH : Screening CV et Compliance Chatbot Entreprise avec RAG et LangChain : Guide Pas à Pas Llama 4, Mistral Large, Gemma 3 : Comparatif LLM Open Source Computer Vision en Cybersécurité : Détection et 2026 Confidentialité des Données dans les LLM : PII et DLP IA et Conformité RGPD : Données Personnelles dans les Context Window : Gérer 1 Million de Tokens en Production Coût d'Inférence des LLM : Optimiser sa Facture Cloud CrewAI, AutoGen, LangGraph : Comparatif Frameworks Data Platform IA-Ready : Architecture de Référence 2026 Data Poisoning et Model Backdoors : Supply Chain IA Deepfakes et Social Engineering IA : Détection et 2026 Deployer des LLM en Production : GPU et Optimisation Détection de Menaces par IA : SIEM Augmenté : Guide IA pour le DFIR : Accélérer les Investigations Forensiques Évaluation de LLM : Métriques, Benchmarks et Frameworks Fine-Tuning de LLM Open Source : Guide Complet LoRA et QLoRA Function Calling et Tool Use : Intégrer les API aux LLM Fuzzing Assisté par IA : Découverte de Vulnérabilités IA pour la Génération de Code : Copilot, Cursor, Claude Gouvernance IA en Entreprise : Politiques et Audit GraphRAG et Knowledge Graphs : Architecture RAG Avancée Knowledge Management avec l’IA en Entreprise : Stratégies Kubernetes pour l’IA : GPU Scheduling, Serving et 2026 LLM en Local : Ollama, LM Studio et vLLM - Comparatif 2026 LLM On-Premise vs Cloud : Souveraineté et Performance MCP (Model Context Protocol) : Connecter les LLM à vos MLOps Open Source : MLflow, Kubeflow, ZenML : Guide Complet IA Multimodale : Texte, Image et Audio : Guide Complet IA Offensive : Comment les Attaquants Utilisent les LLM Orchestration d'Agents IA : Patterns et Anti-Patterns OWASP Top 10 pour les LLM : Guide Remédiation 2026 Phishing Généré par IA : Nouvelles Menaces : Guide Prompt Engineering Avancé : Chain-of-Thought et Techniques Quantization : GPTQ, GGUF, AWQ - Quel Format Choisir RAG vs Fine-Tuning vs Prompt Engineering : Quelle Stratégie Reconnaissance Vocale et LLM : Assistant Vocal Sécurisé Red Teaming de Modèles IA : Jailbreak et Prompt Injection ROI de l'IA Générative : Mesurer l'Impact Réel en 2026 Sécuriser un Pipeline MLOps : Bonnes Pratiques et 2026 Shadow AI : Détecter et Encadrer l'Usage Non Autorisé Small Language Models : Phi-4, Gemma et IA Embarquée Threat Intelligence Augmentée par IA : Guide Complet Vector Database en Production : Scaling et HA en 2026 CNIL Autorite AI Act : Premiers Pas Reglementaires KVortex : Offloader VRAM→RAM pour LLMs vLLM et Inférence Securiser un Pipeline RAG en Production (2026) en 2026 Codex GPT-5.2 : Generation de Code Autonome Securisee Mixture of Experts : Architecture LLM de 2026 en 2026 GPT-5.2 et Agents IA : Revolution en Cybersecurite Windows Recall : Analyse Technique Complete - Fonctionnem... L'IA dans Windows 11 : Copilot, NPU et Recall - Guide Com... Deepfake-as-a-Service : La Fraude IA Industrialisee Small Language Models : Securite a la Peripherie en 2026 RAG Poisoning : Manipuler l'IA via ses Documents en 2026 Phishing IA : Quand les Defenses Traditionnelles Echouent Superintelligence : De l'ANI à l'ASI : Guide Complet La Fin des Moteurs de Recherche : Analyse Expert 2026 Embeddings et Recherche Documentaire : Guide Complet Stratégies de Découpage de | Guide IA Complet 2026 Sécurité et Confidentialité des : Analyse Technique Vecteurs en Intelligence Artificielle : Guide Complet Embeddings vs Tokens : Guide Pratique Cybersecurite Qu'est-ce qu'un Embedding en | Guide IA Complet 2026 Cas d'Usage des Bases - Guide Pratique Cybersecurite Bases Vectorielles : Définition, : Analyse Technique La Vectorisation de Données | Guide IA Complet 2026 Tendances Futures des Embeddings : Analyse Technique Optimiser le Chunking de - Guide Pratique Cybersecurite Milvus, Qdrant, Weaviate : | Guide IA Complet 2026 Glossaire IA et Cybersécurité : 100 Termes Essentiels 2026 10 Erreurs Courantes dans - Guide Pratique Cybersecurite Benchmarks de Performance : | Guide IA Complet 2026 RAG Architecture | Guide - Guide Pratique Cybersecurite Comment Choisir sa Base - Guide Pratique Cybersecurite Indexation Vectorielle : Techniques : Guide Complet Comprendre la Similarité Cosinus : Analyse Technique Comet Browser : Architecture | Guide IA Complet 2026 Développement Intelligence Artificielle | : Guide Complet Stocker et Interroger des - Guide Pratique Cybersecurite Shadow AI en Entreprise : Detecter et Encadrer en 2026 GPT-5.1 vs Claude 4.5 vs Gemini 3 : Comparatif en 2026 OpenClaw : Crise de l'Agent IA Open Source : Guide Complet Prompt Injection : 73% des Deploiements Vulnerables AI Act Aout 2025 : Premieres Sanctions Activees en 2026 OWASP Top 10 LLM 2025 : Risques et Remediations en 2026

Forensics

31 articles
Forensique Mémoire : Guide Pratique Volatility 3 en 2026 Timeline Forensique : Reconstituer Pas à Pas une : Guide Forensique Cloud : Analyser les Logs CloudTrail, Azure Forensique Microsoft 365 : Analyse du Unified Audit Log Chaîne de Preuve Numérique : Bonnes Pratiques Juridiques Exercice de Crise Cyber : Organiser un Tabletop Efficace Forensique Disque : Acquisition d'Image et Analyse avec Mobile Forensics : Extraction et Analyse iOS/Android Ransomware Forensics : Identifier la Souche : Guide Complet Forensics Linux : Artifacts et Investigation : Guide Complet MacOS Forensics : Artifacts et Persistence : Guide Complet Malware Reverse : Analyse de Cobalt Strike 5 : Guide Complet Email Forensics : Tracer les Campagnes Phishing en 2026 Timeline Analysis : Reconstruction d'Incidents en 2026 Registry Advanced : Guide Expert Analyse Technique NTFS Forensics : Methodologie et Recommandations de Securite LNK & Jump Lists : Strategies de Detection et de Remediation Windows Forensics : Guide Expert en Analyse Securite Registry Forensics : Guide Expert Analyse Securite Windows Server 2025 - Guide Pratique Cybersecurite Memory Forensics : Strategies de Detection et de Remediation ETW & WPR : Guide Complet et Bonnes Pratiques pour Experts Modèles de Rapports - Guide Pratique Cybersecurite Comparatif Outils DFIR - Guide Pratique Cybersecurite AmCache & ShimCache - Guide Pratique Cybersecurite Telemetry Forensics - Guide Pratique Cybersecurite Anti-Forensics : Methodologie et Recommandations de Securite NTFS Advanced : Methodologie et Recommandations de Securite Network Forensics : Analyse PCAP Avancee : Guide Complet DFIR Cloud : Investigation Logs AWS CloudTrail en 2026 Memory Forensics 2026 : Volatility 3 Avance : Guide Complet

Microsoft 365

24 articles
Chronologie des Attaques Active Directory : 2014-2026 Audit Avancé Microsoft 365 : Corréler Journaux et Logs Azure Automatiser l'Audit Sécurité Microsoft 365 : Guide Expert API Microsoft Graph : Audit et Monitoring M365 en 2026 Meilleures Pratiques Sécurité Microsoft 365 en 2026 PIM Entra ID : Gestion des Accès Privilégiés Just-in-Time Sécuriser Microsoft Teams : Gouvernance, DLP et Contrôle SharePoint et OneDrive : Maîtriser le Partage Externe et Microsoft Defender for Office 365 : Configuration : Guide Microsoft Secure Score : Guide d'Optimisation de votre Sécuriser Microsoft Entra ID : Conditional Access, MFA Durcissement Exchange Online : Bloquer Basic Auth et Microsoft Intune : Politiques de Conformité et : Guide Zero Trust M365 : Strategies de Detection et de Remediation API Microsoft Graph M365 - Guide Pratique Cybersecurite Microsoft 365 et Conformité - Guide Pratique Cybersecurite Audit Sécurité Microsoft 365 | Guide Microsoft 365 Audit Avancé Microsoft 365 - Guide Pratique Cybersecurite Pratiques Sécurité M365 2025 | Guide Microsoft 365 Microsoft 365 et Azure - Guide Pratique Cybersecurite Threat Hunting Microsoft 365 | Guide Microsoft 365 Top 10 Outils Analyse Securite Microsoft 365 — Guide Automatiser l'Audit de Sécurité : Analyse Technique Sécuriser les Accès Microsoft | Guide Microsoft 365

Virtualisation

25 articles
SDN Proxmox VE 9 : Zones, VNets, IPAM et Firewalls Architecture Proxmox VE 9.1 : Cluster 3 Nœuds + HA Réplication Proxmox VE : ZFS, Snapshots et Checklist Administration CLI Proxmox VE : Diagnostic Cluster Déploiement Automatisé Proxmox : Terraform et Ansible Proxmox VE 9.1 : Paramètres Avancés VM et Nested Virt Outils Proxmox VE : Monitoring, IaC et Écosystème 2026 Optimisation Proxmox VE 9 : CPU, RAM, ZFS, Ceph et HA Dimensionnement Proxmox VE 9 : CPU, RAM, Stockage, HA Proxmox VE : Cluster HA, Live Migration et Ceph 2026 Proxmox vs VMware vs Hyper-V : Comparatif Sécurité et Durcissement VMware ESXi : Guide Complet de Sécurisation ESXi Hardening : Guide Complet de Sécurisation Avancée Migration VMware vers Proxmox VE : Guide Complet : Guide Hyper-V Shielded VMs : Sécurisation Avancée du : Guide Proxmox Backup Server : Stratégie de Sauvegarde et Optimisation Proxmox - Guide Pratique Cybersecurite Évolutions Proxmox : Guide Expert Bonnes Pratiques Calculateur Sizing : Guide Expert Bonnes Pratiques NTP Proxmox : Guide Complet et Bonnes Pratiques pour Experts Dimensionnement : Strategies de Detection et de Remediation Guide Complet Proxmox - Guide Pratique Cybersecurite Migration VMware : Strategies de Detection et de Remediation Securite Proxmox VE : Guide Complet Hardening 2026 Hyper-V 2025 : Analyse Technique Approfondie et Securisation

Cybersécurité Générale

44 articles
Débuter en Pentest : Parcours et Ressources 2026 Carte des Menaces Cyber 2025-2026 : Threat Landscape 20 Erreurs Fatales en Cybersécurité : AD, Cloud et IA Certifications Cybersécurité 2026 : Guide Complet OSCP à CISSP 15 Mythes en Cybersécurité Démystifiés par un Pentester CrowdStrike vs Defender vs SentinelOne : Quel EDR en 2026 ? L'ingénierie sociale a gagné : vos firewalls ne servent plus à rien Quatre zero-days Chrome en 2026 : le navigateur est devenu la cible Zero-days exploités avant le patch : la nouvelle norme en 2026 Le délai d'exploitation se réduit à néant : ce que ça Deepfakes et Social Engineering : Menaces IA en 2026 Culture Sécurité en Entreprise : Changer les Comportements Programme Sensibilisation Cyber : Méthode et KPI 2026 Exercices Phishing Interne : Outils et Bonnes Pratiques Quand les défenseurs passent à l'attaque : leçons de Patch Tuesday ne suffit plus : repenser la gestion des Data brokers : les coffres-forts que tout le monde veut Vos outils d automatisation sont devenus des cibles Équipements en fin de vie : maillon faible sécurité quand vos défenseurs travaillent pour l adversaire Pipelines IA en production : vos agents LLM sont des cibles Time-to-exploit : quand les 0-day brûlent en quelques heures OWASP Top 10 : Guide Complet Vulnérabilités Web 2026 Nessus et Greenbone : Guide Scanners Vulnérabilités ANSSI ReCyF : NIS2 en pratique, ce qui change pour vous Pipelines IA : vos clés API sont les nouvelles clés du SI Ransomwares : Pourquoi Vos Sauvegardes Ne Sauvent Plus CI/CD : L'Angle Mort de la Sécurité DevOps en 2026 Vos Outils IA : la Nouvelle Surface d'Attaque Ignorée Ransomware Trends Q1 2026 : Analyse des Groupes en 2026 IOC Management : Automatiser la Threat Intel : Guide Complet Cyber Threat Landscape France 2026 : Bilan ANSSI en 2026 Darkweb Monitoring : Outils et Techniques 2026 en 2026 InfoStealers 2026 : Lumma, Raccoon et RedLine en 2026 Supply Chain APT : Comprendre les Attaques Etatiques Top 10 des Attaques - Guide Pratique Cybersecurite Top 10 Outils Securite Kubernetes 2025 — Guide Pratique Livre Blanc : Sécurisation | Threat Intelligence 2026 Guide Complet Sécurité Active | Guide Cyberdefense Top 5 des Outils : Strategies de Detection et de Remediation Top 10 Solutions EDR/XDR | Threat Intelligence 2026 Top 10 Outils Audit - Guide Pratique Cybersecurite Threat Hunting : Detection Proactive avec MITRE en 2026 APT29 2026 : Nouvelles TTP et Campagnes Cloud en 2026

Articles Techniques

105 articles
Retours d’Expérience Pentest : 5 Missions Terrain Anonymisées BloodHound vs SharpHound vs BloodyAD : Guide Comparatif 2026 Burp Suite vs OWASP ZAP : Quel Scanner Web Choisir en 2026 ? Nuclei vs Nessus vs Qualys : Scanners de Vulnérabilités Comparés Format String Exploitation Moderne : Du Crash au RCE en 2026 Race Conditions Kernel : Double-Fetch, TOCTOU et Exploitation BGP Hijacking et OSPF Exploitation : Attaques Routage Internet GPU Side-Channels : Attaques sur CUDA, OpenCL et WebGPU Intel ME et AMD PSP : Exploitation des Coprocesseurs Cryptanalyse Pratique : Attaques sur AES, RSA et ECC SGX, TDX et TEE : Attaques sur les Enclaves Sécurisées 2026 Hypervisor Escape : Techniques d'Évasion VMware, KVM et QEMU Linux Kernel Exploitation : Escalade de Privilèges Side-Channel Attacks : Spectre, Meltdown et Rowhammer ROP/JOP Chains : Exploitation Moderne des Binaires Protégés Heap Exploitation : Use-After-Free et Tcache Poisoning SGX, TDX et TEE : Attaques sur les Enclaves Sécurisées Hack The Box : Méthodologie pour Progresser en 2026 DVWA vs Juice Shop vs WebGoat : Comparatif Labs Web Lab Pentest Proxmox : Guide Complet d'Installation 2026 Top 5 Plateformes CTF et Entraînement Cyber en 2026 Architecture de Sécurité Matérielle Windows 11 & Server 2025 Windows Scheduler Internals : Architecture, Performance Architecture Windows Server 2025 : Noyau NT Expert Architecture Vertical Slice + Clean Lite : Guide 2026 Cryptographie Post-Quantique : Migration Pratique en 2026 Zero Trust Network : Implementation Pratique 2026 en 2026 C2 Frameworks Modernes : Mythic, Havoc, Sliver et Détection DNS Attacks : Tunneling, Hijacking et Cache Poisoning Exploitation de l’Infrastructure as Code Terraform et Exploitation des Protocoles Email : SMTP Smuggling et Att... GCP Offensive Security : Exploitation des Services Google Purple Team : Méthodologie et Exercices Collaboratifs Race Conditions et TOCTOU : Exploitation des Bugs de Windows Kernel Exploitation : Drivers, Tokens et KASLR Threat Intelligence : Automatiser la Veille Cyber en 2026 Attaques sur les Identity Providers Okta, Entra et Keycloak Attaques sur les Pipelines ML/AI et Empoisonnement de Mod... SSRF Avance : Bypass des Protections Cloud 2026 en 2026 Windows Kernel : Exploitation de Drivers Vulnerables Agents IA pour la Cyber-Défense et le Threat Hunting Cyber-Défense Agentique contre les APTs : Guide Complet Red Teaming des Agents Autonomes : Méthodologie et Shadow Hacking et Outils IA Non-Autorisés en Entreprise Container Escape : Techniques d'Évasion Docker et 2026 Exploitation Active Directory Certificate Services (ADCS) Hardware Hacking : JTAG, SWD, UART et Extraction de Firmware Post-Exploitation : Pillage, Pivoting et Persistance Sécurité Mobile Offensive : Android et iOS en 2026 Service Mesh Exploitation : Attaques sur Istio, Linkerd et SIM Swapping et Attaques Telecom : SS7, Diameter et 5G UEFI Bootkits et Attaques sur le Firmware : Persistance A... Attaques sur les Bases de Données SQL, NoSQL et GraphQL Attaques CI/CD Avancées : GitOps, ArgoCD et Flux en Attaques Serverless : Exploitation de Lambda, Azure Attaques sur les Smart Contracts et la Sécurité Web3 Attaques Wireless Avancées : Wi-Fi 7, BLE 5.4 et Zigbee Browser Exploitation Moderne : V8, Blink et les Sandbox Bypass FIDO2 et Passkeys : Attaques sur l'Authentification ICS/SCADA : Pentest d'Environnements Industriels en 2026 Supply Chain : Detecter les Dependances Malveillantes Incident Response : Playbook Ransomware 2026 : Guide Complet Reverse Engineering : Analyse de Firmware IoT en 2026 GraphQL Injection : Techniques d'Exploitation 2026 API Security : Fuzzing Avance avec Burp et Nuclei en 2026 Cloud Forensics : Investigation AWS et Azure : Guide Complet OAuth 2.1 : Nouvelles Protections et Migration en 2026 Pentest Wi-Fi 7 : Nouvelles Surfaces d'Attaque en 2026 C2 Frameworks 2026 : Mythic vs Havoc vs Sliver en 2026 DNS Tunneling Detection : Guide SOC Analyst : Guide Complet Phishing 2026 : Techniques Avancees de Spear-Phishing Web3 Security : Audit de Smart Contracts Solidity en 2026 Attaques sur CI/CD (GitHub - Guide Pratique Cybersecurite Azure AD : attaques - Guide Pratique Cybersecurite Supply-chain applicative (typosquatting, dependency Secrets sprawl : collecte - Guide Pratique Cybersecurite SSRF moderne (IMDSv2, gopher/file, : Guide Complet NTLM Relay moderne (SMB/HTTP, | Guide Technique 2026 Evasion d’EDR/XDR : techniques : Analyse Technique Phishing sans pièce jointe - Guide Pratique Cybersecurite Persistence sur macOS & - Guide Pratique Cybersecurite WebCache Deception & cache - Guide Pratique Cybersecurite Abus OAuth/OIDC : Consent - Guide Pratique Cybersecurite Sécurité des LLM et - Guide Pratique Cybersecurite Chaîne d'exploitation Kerberos en : Analyse Technique Living-off-the-Land (LOL-Bins/LOLBAS) à l’échelle en Exfiltration furtive (DNS, DoH, : Analyse Technique Kubernetes offensif (RBAC abuse, : Analyse Technique Désérialisation et gadgets en | Guide Technique 2026 Attaques sur API GraphQL - Guide Pratique Cybersecurite Escalades de privilèges AWS | Guide Technique 2026 OT/ICS : passerelles, protocoles : Analyse Technique Cloud IAM : Escalade de Privileges Multi-Cloud en 2026 AWS Lambda Security : Attaques et Defenses : Guide Complet Terraform Security : Audit et Durcissement IaC en 2026 SIEM : Correlations Avancees pour Threat Hunting en 2026 Mobile Pentest : Bypass SSL Pinning Android 15 en 2026 Container Escape 2026 : Nouvelles Techniques Docker Bug Bounty 2026 : Strategies et Plateformes : Guide Complet EDR Bypass 2026 : Techniques et Contre-Mesures en 2026 ZED de PRIM’X : Conteneurs Chiffrés et Sécurité des Malware Analysis : Sandbox Evasion Techniques en 2026 Purple Team : Exercices Pratiques AD et Cloud en 2026 OSINT 2026 : Outils et Techniques de Reconnaissance Kubernetes RBAC : 10 Erreurs de Configuration Critiques

Conformité

54 articles
SOA ISO 27001 : Statement of Applicability Complet Feuille de Route ISO 27001 : Certification en 12 Étapes Checklist Audit ISO 27001 : 93 Contrôles Annexe A 2022 Charte Informatique Entreprise : Guide et Modèle Word Analyse de Risques ISO 27005 : Méthodologie Complète PSSI ISO 27001 : Guide Rédaction et Modèle Complet Aspects Juridiques et Éthiques de l’IA : Cadre Réglementaire Classification des données : méthodes et outils pratiques Analyse d'impact AIPD : méthodologie CNIL pas à pas NIS 2 et DORA : double conformité du secteur financier Maturité cybersécurité : modèles CMMC et NIST CSF 2.0 Cartographie des risques cyber avec EBIOS RM en 2026 SMSI ISO 27001 version 2022 : guide complet pas à pas Audit de conformité RGPD : checklist complète pour DPO NIS2, DORA et RGPD : Cartographie des Exigences Croisées IEC 62443 : Cybersécurité Industrielle OT - Guide : Guide Audit de Sécurité du SI : Méthodologie Complète et PRA/PCA Cyber : Plan de Reprise et Continuité d'Activité Qualification PASSI ANSSI : Devenir Prestataire d'Audit Audit de Securite Cloud : Checklist Conformite 2026 PCI DSS 4.0.1 : Nouvelles Exigences Mars 2026 en 2026 Conformite Multi-Referentiels : Approche Unifiee 2026 NIS 2 Phase Operationnelle : Bilan 6 Mois Apres en 2026 Aspects Juridiques et Ethiques de l'IA en Entreprise ISO/IEC 42001 Foundation : Système de Management IA ISO 42001 Lead Auditor : Auditer un Systeme de Management ISO 42001 Lead Implementer : Management de l’IA et RGPD et AI Act : Guide Complet pour les Organisations en ... Développement Sécurisé ISO 27001 : Cycle S-SDLC en 6 Cyber Assurance 2026 : Exigences et Marche Durci en 2026 SOC 2 Type II : Retour d'Experience Implementation DORA 2026 : Impact sur le Secteur Financier Francais Cyber-assurance 2026 : Nouvelles Exigences et Guide Complet AI Act 2026 : Guide Conformité Systèmes IA à Haut Risque Cyber Resilience Act 2026 : Guide Anticipation Produits C... DORA 2026 : Premier Bilan et Contrôles ACPR - Guide Complet NIS 2 Phase Opérationnelle 2026 : Guide Complet de Mise RGPD 2026 : Securite des Donnees et Enforcement CNIL - Gu... HDS 2026 : Certification Hébergeur de Données de Santé - PCI DSS 4.0.1 en 2026 : Retour d'Expérience et Guide SBOM 2026 : Obligation de Sécurité et Guide Complet SecNumCloud 2026 et EUCS : Guide Complet Qualification Cryptographie Post-Quantique : Guide Complet pour les SI ... ISO 27001:2022 Guide Complet Certification Expert 2026 NIS 2 : Guide Complet de la Directive Européenne sur la SOC 2 : Guide Complet Conformite pour Organisations RGPD 2026 : Durcissement des Sanctions par la CNIL HDS 2026 : Certification Hebergement de Donnees Sante Cyber Resilience Act : Guide de Conformite Produits RGPD et IA Generative : Guide de Conformite CNIL en 2026 SecNumCloud 2026 : Migration et Certification EUCS AI Act Classification : Systemes a Haut Risque en 2026 SBOM 2026 : Obligation de Transparence Logicielle en 2026 ISO 27001:2022 vs ISO 27001:2013 : Differences Cles

SOC et Detection

25 articles
Incident Triage : Classification et Priorisation SOC 2026 Threat Hunting Proactif : Techniques et Outils SOC 2026 Sigma Rules : Standard de Détection Universel Guide Complet SOC as a Service : Externaliser la Détection Guide 2026 XDR vs SIEM vs EDR : Comprendre les Différences en 2026 Purple Team : Collaboration entre SOC et Red Team Guide Détection du Mouvement Latéral : Guide Complet SOC 2026 Triage des Alertes SOC : Méthodologie Complète pour Analyste NDR : Détection Réseau et Réponse aux Menaces Guide 2026 SIEM Cloud-Native vs On-Premise : Comparatif Complet 2026 Log Management : Architecture et Rétention SOC : Guide Use Cases SIEM : 50 Règles Détection Essentielles : Gui SOC Metrics et KPIs : Mesurer la Performance : Guide Co SOAR : Automatisation Réponse Incident Guide : Guide Co Threat Intelligence Platforms : Comparatif 2026 : Guide Microsoft Sentinel : Déploiement et Règles KQL : Guide Splunk Enterprise Security : Configuration SOC : Guide Elastic SIEM : Stack Détection Open Source 2026 : Guide SOC Moderne : Architecture et Outils Guide 2026 : Guide Analyste SOC : Niveaux, Parcours et Compétences : Guide Threat Hunting : Méthodologie, Outils et Pratique pour Detection Engineering : Construire des Règles de : Guide Detection-as-Code : Pipeline CI/CD pour Règles SIEM et Sigma Rules : Guide Complet d'Écriture et Déploiement de Wazuh SIEM/XDR Open Source : Déploiement, Configuration

Cloud Security

45 articles
Cloud Forensics Avancée Post-Compromission sur AWS Cloud Pentest : Méthodologie Complète Audit AWS et Azure Cloud Logging : Guide Centralisation et Monitoring Sécurité Cloud Network Security : Guide Complet VPC, WAF et DDoS DevSecOps Cloud : Guide Pipeline CI/CD Sécurisé Complet Cloud Disaster Recovery : Guide PRA et Résilience Cloud Cloud Compliance : Guide RGPD, HDS et SecNumCloud 2026 Cloud Forensics : Guide Investigation Incident Cloud 2026 Infrastructure as Code Security : Guide Terraform Complet Cloud Encryption : Guide Chiffrement Données et Clés KMS CASB : Guide Comparatif Cloud Access Security Broker 2026 Container Security : Docker et Runtime Protection Avancée Serverless Security : Sécuriser Lambda et Functions Cloud Multi-Cloud Security : Guide Stratégie Sécurité Unifiée Cloud IAM : Guide Gestion Identités et Accès Cloud 2026 Kubernetes Security : Guide Durcissement Cluster K8s 2026 Sécurité AWS : Guide Complet Hardening Compte et Services Azure Security Center : Guide Configuration Complète 2026 GCP Security : Bonnes Pratiques et Guide Audit Cloud 2026 CSPM : Guide Cloud Security Posture Management Complet CNAPP : Guide Protection Cloud-Native Applications 2026 ZTNA Zero Trust Network Access Cloud : Guide Complet Disaster Recovery Cloud : PRA Multi-Région en 2026 Attaques sur Metadata Services Cloud : SSRF et IMDS FinOps Sécurité : Cryptomining Ressources Fantômes Secrets Management Cloud : Vault et Key Vault 2026 Cloud Compliance NIS 2 SecNumCloud ISO 27017 Guide Sécurité Multi-Cloud : Stratégie Unifiée AWS, Azure et GCP Cloud Misconfiguration : Top des Erreurs de Sécurité et Cloud IAM : Sécurisation des Identités et Accès AWS, CSPM : Cloud Security Posture Management - Guide Complet Souveraineté Cloud : Protéger les Données Sensibles en Container Registry : Guide Sécurité Images Docker 2026 Cloud Logging Monitoring : Visibilité Complète 2026 Service Mesh Security : Sécuriser Istio et Linkerd Cloud Pentest Azure : Exploitation Misconfiguration Terraform IaC Sécurisé : Checklist de Durcissement Cloud Pentest AWS avec Pacu et CloudFox : Le Guide Sécurité Serverless : Lambda Functions et Protection CNAPP Cloud-Native Application Protection Platform Kubernetes Security : RBAC et Network Policies 2026 GCP Security Command Center : Audit et Durcissement Azure Defender for Cloud : Guide Configuration 2026 AWS Security : Les 20 Services Sécurité Essentiels Sécuriser une Architecture Multi-Cloud AWS et Azure

Retro-Ingenierie

18 articles
Frida et DynamoRIO : Instrumentation Binaire Avancée 2026 Symbolic Execution : Angr, Triton et Découverte d'Exploits Analyse Mémoire Forensique : Volatility pour Malware Analyse de Shellcode : Techniques de Rétro-Ingénierie Rétro-Ingénierie de C2 : Cobalt Strike et Brute Ratel Anti-Analyse Malware : Techniques et Contournements Analyse de Stealers : RedLine, Raccoon, Lumma 2026 Unpacking Malware Avancé : Techniques et Outils 2026 Rétro-Ingénierie de Ransomware : Analyse Technique Analyse Dynamique de Malware Avancée : Sandbox Expert Anti-Rétro-Ingénierie APT - Techniques d'Évasion Avancées Disséquer l'Obscurité : Techniques Avancées de Déobfuscation IA Frameworks pour l'Analyse de Malwares - Deep Learning Malwares Mobiles & IA - Rétro-Ingénierie Cross-Platform Chasse aux Fantômes : Rétro-Ingénierie Ghidra : Guide de Reverse Engineering pour Débutants Fileless Malware : Analyse, Détection et Investigation Reverse Engineering .NET : Décompilation, Analyse et

News

202 articles
Microsoft force la mise à jour vers Windows 11 25H2 sur les PC non gérés Affinity : une fuite de données expose 175 000 utilisateurs du forum Axios npm piraté : la Corée du Nord derrière l attaque supply chain React2Shell : 766 serveurs Next.js compromis, credentials volés Drift Protocol : hack à 285 M$ attribué à la Corée du Nord Cisco IMC : faille critique CVSS 9.8 permet un accès admin NoVoice : un rootkit Android caché dans 50 apps du Play Store Apple étend iOS 18.7.7 pour contrer l'exploit DarkSword Fortinet : faille critique FortiClient EMS exploitée activement Slack déploie 30 fonctionnalités IA et devient un agent autonome Commission européenne hackée via Trivy : 30 entités UE exposées BrowserGate : LinkedIn scanne vos extensions de navigateur en secret CVE-2026-0625 : zero-day critique dans les routeurs D-Link EOL GlassWorm : 72 extensions Open VSX piégées ciblent les développeurs CVE-2026-5281 : zero-day Chrome WebGPU exploité activement Le CMA britannique lance une enquête sur les licences cloud Microsoft Google NotebookLM passe à Gemini 2.5 Flash pour le raisonnement OpenAI teste des Skills pour ChatGPT, inspirées de Claude Faille critique Fortinet CVE-2026-32756 : exploitation active Akira Ransomware cible les ESXi via une faille vCenter inédite Microsoft lance Copilot Security Agents pour automatiser le SOC Claude 4 Opus d Anthropic : benchmark et implications sécurité NIS 2 : Premières Sanctions ANSSI en France 2026 Rebellions lève 400 M$ pour défier Nvidia sur les puces IA Exchange Online : Microsoft peine à résoudre des pannes persistantes TridentLocker frappe Sedgwick, sous-traitant du gouvernement US Hims & Hers : ShinyHunters vole des millions de tickets Zendesk Qilin revendique le vol de données du parti allemand Die Linke Interlock exploite un zero-day Cisco FMC CVSS 10 depuis janvier SparkCat : un malware vole les cryptos depuis les stores mobiles Microsoft lance ses propres modèles IA pour défier OpenAI Fuite Claude Code : des dépôts GitHub piégés diffusent Vidar PTC Windchill : la police allemande réveille les admins GitHub Copilot entraîne ses IA sur vos données dès le 24 285 M$ volés en 12 minutes par des hackers nord-coréens 766 serveurs Next.js compromis par vol de credentials une faille CVSS 9.8 permet le reset des mots de passe admin Cisco corrige deux failles critiques CVSS 9.8 dans IMC et Le FBI alerte sur les risques des applications mobiles ShareFile : deux failles chaînées permettent une RCE sans NoVoice : un malware Android sur Google Play vole les un exploit kit iOS cible WebKit et le kernel Apple Microsoft alerte sur une campagne VBS avec bypass UAC TrueChaos : un APT chinois exploite TrueConf pour cibler Microsoft lance Copilot Wave 3 et Agent 365 pour l'ère UAC-0255 usurpe le CERT-UA et diffuse le RAT AGEWHEEZE Chrome : Google corrige un 4e zero-day exploité en 2026 L'Iran relance Pay2Key avec des pseudo-ransomwares TeamPCP compromet des environnements cloud via des Le CMA ouvre une enquête sur Microsoft pour ses licences VMware Aria Operations : RCE critique exploitée activement Cisco SD-WAN : un zero-day CVSS 10 exploité depuis trois ans Citrix NetScaler : faille critique CVSS 9.3 exploitée Databricks lance Lakewatch, un SIEM dopé à l'IA générative Microsoft enchaîne les correctifs d'urgence Windows en 2026 Axios piraté : un RAT distribué via npm à 100 millions CareCloud Breach : Dossiers Patients Exposés en 2026 le malware IA qui vole vos identifiants navigateur ChatGPT : une faille permettait l'exfiltration de données LexisNexis piraté : 400 000 profils cloud exposés via ShinyHunters vole 350 Go de données à la Commission Aflac notifie 22 millions de clients après une cyberattaque CTRL : toolkit RAT russe ciblant les entreprises via RDP macOS Tahoe 26.4 : Apple bloque les attaques ClickFix 10 561 failles détectées dans 1,2 million de commits GitHub : de fausses alertes VS Code propagent un malware Microsoft retire la mise à jour KB5079391 après des Le DoJ démantèle des botnets IoT derrière le DDoS record FortiGate : campagne active de vol de credentials ciblant CISA alerte sur une RCE exploitée, 24 700 instances exposées CVE-2026-20131 : Interlock exploite un zero-day Cisco FMC NIST renouvelle son guide de sécurité DNS après douze ans Handala pirate la messagerie du directeur du FBI Kash Patel Infinity Stealer : un nouveau malware cible macOS via Windows 11 : Microsoft publie un correctif d'urgence le fossé des compétences se creuse entre experts et novices Ubiquiti UniFi : faille CVSS 10 expose 29 000 équipements CVE-2026-21385 : Qualcomm corrige un zero-day Android CVE-2026-0625 : zero-day exploité sur routeurs D-Link Google corrige deux zero-days Skia et V8 exploités Mistral lance Voxtral TTS, modèle vocal open source à 4B GitHub lance la détection IA pour sécuriser le code source CVE-2026-3055 : Citrix NetScaler sous reconnaissance active Crunchyroll piraté : 6,8 millions de comptes compromis TeamPCP piège le SDK Telnyx sur PyPI via stéganographie WAV CVE-2025-53521 : F5 BIG-IP exploité, CISA exige un patch BlackCat : deux experts cybersécurité plaident coupable CVE-2026-32746 : RCE root non authentifié dans Telnetd APT28 exploite un 0-day MSHTML avant le Patch Tuesday Red Menshen : BPFDoor espionne les télécoms depuis 2021 Anthropic : la justice américaine bloque le ban de Trump Commission européenne : 350 Go volés via un cloud AWS Bearlyfy frappe 70 entreprises russes avec GenieLocker LangChain et LangGraph : trois failles critiques révélées PolyShell : 57 % des boutiques Magento vulnérables attaquées CVE-2026-33017 Langflow : RCE non authentifié exploité Qilin cible Malaysia Airlines : données passagers volées Conduent : brèche SafePay expose 25 millions d'Américains Mistral Small 4 : un seul modèle MoE remplace trois IA PolyShell : skimmer WebRTC vole 56 % des boutiques Magento CanisterWorm : TeamPCP infecte Trivy et 66 packages npm GlassWorm utilise Solana comme C2 pour son RAT furtif Medusa Ransomware : 9 jours hors-ligne pour un hôpital US Mandiant M-Trends 2026 : accès initial cédé en 22 secondes CVE-2026-20131 Cisco FMC : CVSS 10.0, hôpitaux visés CERTFR-2026-ALE-003 : ANSSI alerte sur les messageries Opération Checkmate : BlackSuit ransomware démantélé LiteLLM piraté : attaque supply chain PyPI TeamPCP EvilTokens PhaaS : 340 organisations M365 touchées Slopoly : Hive0163 déploie un malware généré par IA FCC interdit l'import de routeurs étrangers aux USA Silver Fox APT : espionnage et cybercrime ciblant l Asie Firefox 149 intègre un VPN gratuit et le Split View CVE-2026-32746 : RCE root non authentifié, GNU Telnetd CVE-2026-22557 Ubiquiti UniFi CVSS 10.0, 87 000 exposés TELUS Digital : ShinyHunters et le Vol de 1 PO de Data CVE-2025-32975 : Quest KACE SMA CVSS 10.0 exploité NVIDIA Agent Toolkit : IA autonome sécurisée en prod CVE-2026-3055 Citrix NetScaler : fuite de tokens SAML Crunchyroll confirme une fuite touchant 6,8 M d'utilisateurs Tycoon 2FA démantelé : Europol met fin au PhaaS MFA bypass TeamPCP étend son attaque supply chain à Checkmarx KICS CVE-2026-33017 Langflow : RCE exploité 20h après disclosure Stryker : le wiper iranien Handala détruit 80 000 terminaux Zero-Day CVSS 10.0 PTC Windchill : webshells en production Un hacker russe condamné à 81 mois pour ransomware La Corée du Nord piège les devs crypto via VS Code CMA UK : décision imminente contre AWS et Microsoft Moscou Usurpe Signal pour Cibler Officiels et Journalistes Microsoft Corrige en Urgence son Patch Tuesday Cassé GlassWorm Piège 72 Extensions VSCode pour Voler des Secrets PhantomRaven : Campagne npm Cible les Secrets CI/CD VMware Aria Operations CVE-2026-22719 : CISA KEV RCE Cisco FMC CVE-2026-20131 : Interlock RCE Root Actif DarkSword : exploit iOS zero-day ciblant les iPhones Le DoJ démantèle 4 botnets IoT au record de 31 Tbps n8n : 4 Failles RCE Critiques, 24 700 Serveurs Exposés Trivy : Attaque Supply Chain via GitHub Actions 2026 Meta : Agent IA Autonome Déclenche un Incident Critique Mistral Small 4 : Le Modèle Open Source 119B Tout-en-Un CVE-2026-21992 : Oracle Identity Manager RCE CVSS 9.8 Malaysia Airlines : le Groupe Quilin Exfiltre les Données Marquis Financial : 672 000 Victimes et Données Bancaires CVE-2025-68613 n8n : CISA KEV, 24 700 instances RCE exposées Navia Benefit Solutions : 2,7M dossiers santé exposés Opération Alice : 373 000 sites dark web démantelés CVE-2026-32746 : RCE Root dans GNU Telnetd CVSS 9.8 APT28 BadPaw et MeowMeow : Nouvelles Armes Contre l'Ukraine APT41 Silver Dragon : Espionnage via Google Drive C2 CVE-2026-20131 : Cisco FMC Zero-Day CVSS 10 Exploité CVE-2026-20963 SharePoint RCE Exploité : Alerte CISA KEV CVE-2026-33017 Langflow RCE : Exploité en Moins de 20h Iran-Handala : Wiper sur Stryker, FBI Saisit les Domaines CERT-FR : Messageries Instantanées Détournées Sans Malware TELUS Digital : ShinyHunters Vole 1 Pétaoctet de Données GLM-5 : Zhipu AI Lance un Modele 744B Parametres en 2026 Kali Linux 2025.4 : Passage a Wayland par Defaut en 2026 RSAC 2026 : Les Tendances Cybersecurite de l'Annee Patch Tuesday Fevrier 2026 : 4 Zero-Days Critiques Google Finalise l'Acquisition de Wiz pour 32 Milliards Gemini 3.1 Pro : 1 Million de Tokens en Contexte en 2026 Entra ID : Jailbreak de l'Authenticator Decouvert en 2026 FIRST Prevoit 50 000 CVE Publiees en 2026 : Guide Complet Entra ID : Migration Obligatoire vers DigiCert G2 en 2026 Anthropic Lance Cowork : Claude Sans Code pour Tous FCC Alerte : Ransomware Quadruple Depuis 2021 en 2026 Qilin Ransomware Domine le Paysage des Menaces Q1 2026 McDonald's India : Everest Ransomware Frappe Fort en 2026 CNIL France Travail : Sanction de 5 Millions EUR en 2026 CNIL : Free Mobile Sanctionne a 42 Millions EUR en 2026 Patch Tuesday Janvier 2026 : 112 CVE Corrigees en 2026 Microsoft Publie un Guide de Durcissement AD Complet Kali Linux 2025.3 : 15 Nouveaux Outils de Pentest en 2026 Cegedim Sante : 15 Millions de Patients Exposes en 2026 Kubernetes 1.35 : User Namespaces en Production en 2026 CNIL : Amende de 3,5M EUR pour Partage Illegal de Donnees SoundCloud et Inotiv : Double Fuite de Donnees en 2026 Leroy Merlin : Fuite de Donnees de 2 Millions de Clients GPT-5.2 : OpenAI Repousse les Limites a 400K Tokens React2Shell : RCE Critique CVSS 10 dans React Native BadSuccessor : Nouvelle Faille Critique Windows AD NIS 2 : l'Allemagne Adopte sa Loi de Transposition Shai-Hulud 2 : Supply Chain NPM Compromis a Grande Echelle Llama 4 Scout et Maverick : Meta Passe au Multimodal Microsoft Renforce la Protection CSP dans Entra ID Attaques Active Directory en Hausse de 42% en 2025 CVE-2025-20337 : RCE Critique dans Cisco ISE : Guide Complet Claude 4.5 : Anthropic Mise sur les Agents IA en 2026 Gemini 3 : Google Bat Tous les Benchmarks LLM en 2026 GPT-5.1 : OpenAI Lance son Modele le Plus Puissant ISO 27001:2022 : Fin de Transition en Octobre 2025 DoorDash : Fuite Massive via Social Engineering en 2026 OpenAI Renonce a l'Open Source pour ses Modeles IA SimonMed : Medusa Ransomware Expose 500K Patients en 2026 Ingénierie Sociale par IA : Menace Cyber n°1 en 2025 Failles de Sécurité Critiques Découvertes dans l'App Cisco Lance un Outil pour Sécuriser les Déploiements Faille Microsoft 365 Copilot Permet l'Exfiltration de Microsoft Déploie un Fix d'Urgence pour le Bug en 2026 Crimson Collective Exfiltre 12 To via F5 BIG-IP en 2026 Oracle EBS : Zero-Day RCE Exploite en Production en 2026 CVE-2025-64446 : Faille Critique FortiWeb CVSS 9.8

Livres Blancs

14 articles
Livres Blancs Gratuits
Voir tous →

Téléchargement gratuit · Aucune inscription requise

Tous les livres blancs
Checklists Sécurité — Audit & Durcissement
Formats disponibles
📄 PDF 📊 Excel 🌐 Web

11 checklists professionnelles couvrant 2 200+ points de contrôle. Téléchargement gratuit, aucune inscription.

Checklist Sécurité ANC

🐧 Checklist Sécurité Ubuntu 24.04 LTS Serveur

Durcissement Ubuntu : SSH, pare-feu UFW/nftables, AppArmor, audit, sysctl, partitionnement, mises à jour et CIS Benchmark.

25 sections 172 contrôles 31759 mots PDF + Excel

Guide de durcissement Ubuntu 24.04 LTS Serveur aligné sur le CIS Benchmark : configuration SSH sécurisée, pare-feu UFW/nftables, profils AppArmor, audit système (auditd), paramètres sysctl, partitionnement sécurisé, gestion des mises à jour automatiques et désactivation des services inutiles.

📑 Table des matières

CHECKLIST SÉCURITÉ UBUNTU LINUX 24.04 LTS — SERVEUR

AYI NEDJIMI CONSULTANTS (ANC)

Référentiel : CIS Ubuntu Linux 24.04 LTS Benchmark v1.0.0 + DISA STIG + ANSSI Linux + NIST


Document : CHECKLIST-UBUNTU2404-ANC | Version : 1.0 | Date : 2026-04-04 | Classification : CONFIDENTIEL | Auteur : AYI NEDJIMI CONSULTANTS

TABLE DES MATIÈRES

Section Nb Contrôles
1 Configuration initiale et système de fichiers 35
2 Services réseau et démons 30
3 Configuration réseau et pare-feu 30
4 Journalisation et audit 35
5 Accès, authentification et autorisation 40
6 Maintenance du système et permissions 20
7 Sécurité du noyau Linux 20
8 Sécurité des conteneurs (Docker/Podman) 15
9 Chiffrement et certificats 15
10 Sécurité des applications web 15
11 Gestion des utilisateurs et groupes 15
12 Sécurité physique et console 10
13 Mises à jour et gestion des paquets 10
14 Monitoring et détection d’intrusion 15
15 Sécurité DNS 10
16 Sauvegarde et continuité 10
17 Réponse aux incidents 10
18 Conformité et gouvernance 10
TOTAL ~295

LÉGENDE

Symbole Signification
Conforme — le contrôle est correctement appliqué
Non conforme — le contrôle n’est pas appliqué ou mal configuré
⚠️ Partiellement conforme — nécessite une attention ou une correction mineure
N/A Non applicable — le contrôle ne s’applique pas à cet environnement
Niveau Criticité Description
🔴 Critique Risque immédiat d’exploitation — correction impérative sous 24-48h
🟠 Élevé Risque significatif — correction requise sous 7 jours
🟡 Moyen Risque modéré — correction recommandée sous 30 jours
🟢 Faible Bonne pratique — amélioration continue
Profil CIS Description
Niveau 1 (L1) Configuration de base applicable à la majorité des serveurs
Niveau 2 (L2) Configuration avancée pour environnements à haute sécurité
STIG Exigence DISA STIG pour conformité gouvernementale

MODE DÉCOUVERTE RAPIDE — 15 QUESTIONS ESSENTIELLES

Avant de commencer l’audit détaillé, répondez aux 15 questions suivantes pour orienter l’évaluation :

Question Réponse Impact sur l’audit
1 Le serveur est-il exposé directement sur Internet ? ☐ Oui ☐ Non Si oui, sections 3, 5, 10, 15 prioritaires
2 Des conteneurs Docker/Podman sont-ils utilisés ? ☐ Oui ☐ Non Si oui, section 8 applicable
3 Un serveur web (Apache/Nginx) est-il installé ? ☐ Oui ☐ Non Si oui, section 10 applicable
4 Le serveur héberge-t-il une base de données ? ☐ Oui ☐ Non Si oui, section 10 (MySQL/PostgreSQL) applicable
5 Le chiffrement de disque (LUKS) est-il activé ? ☐ Oui ☐ Non Si non, section 9 critique
6 AppArmor est-il activé et en mode enforce ? ☐ Oui ☐ Non Si non, contrôle 1.4.x critique
7 Le pare-feu (ufw/nftables) est-il configuré ? ☐ Oui ☐ Non Si non, section 3 critique
8 L’audit système (auditd) est-il actif ? ☐ Oui ☐ Non Si non, section 4 critique
9 SSH est-il le seul moyen d’accès distant ? ☐ Oui ☐ Non Si non, vérifier tous les accès distants
10 Des comptes partagés sont-ils utilisés ? ☐ Oui ☐ Non Si oui, section 11 critique
11 Le serveur est-il soumis au RGPD ou NIS2 ? ☐ Oui ☐ Non Si oui, section 18 applicable
12 Un système de sauvegarde est-il en place ? ☐ Oui ☐ Non Si non, section 16 critique
13 Le serveur DNS est-il hébergé localement ? ☐ Oui ☐ Non Si oui, section 15 applicable
14 Des mises à jour automatiques sont-elles configurées ? ☐ Oui ☐ Non Si non, section 13 critique
15 Un SIEM/IDS est-il déployé ? ☐ Oui ☐ Non Si non, section 14 applicable

INFORMATIONS CLIENT ET PÉRIMÈTRE D’AUDIT

Champ Valeur
Nom du client ______________________________
Responsable IT ______________________________
Contact sécurité ______________________________
Date de l’audit ______________________________
Auditeur ANC ______________________________
Nom du serveur (hostname) ______________________________
Adresse IP ______________________________
Version Ubuntu Ubuntu 24.04 LTS (Noble Numbat)
Version du noyau ______________________________
Rôle du serveur ______________________________
Environnement ☐ Production ☐ Pré-production ☐ Développement ☐ Test
Accès physique ☐ Datacenter ☐ Salle serveur ☐ Cloud (IaaS) ☐ VPS
Virtualisation ☐ Physique ☐ VMware ☐ Hyper-V ☐ KVM ☐ LXC ☐ Cloud
Profil CIS appliqué ☐ Niveau 1 (L1) ☐ Niveau 2 (L2) ☐ STIG

Commandes de collecte préliminaire

# Informations système
hostnamectl
cat /etc/os-release
uname -a
uptime
free -h
df -hT
ip -4 addr show
ip -6 addr show
ss -tlnp
systemctl list-units --type=service --state=running
dpkg -l | wc -l
last -10
who
cat /proc/cmdline


SECTION 1 — CONFIGURATION INITIALE ET SYSTÈME DE FICHIERS

Objectif : Établir une base de configuration sécurisée en désactivant les systèmes de fichiers inutiles, en sécurisant le chargeur de démarrage, en activant les contrôles d’accès obligatoires (AppArmor), en vérifiant l’intégrité du système et en durcissant les paramètres du noyau.

Références : CIS Ubuntu 24.04 LTS Benchmark v1.0.0 — Sections 1.1 à 1.8 | ANSSI-BP-028 R1-R15 | NIST SP 800-53 CM-6, CM-7, SC-39 | DISA STIG Ubuntu

1.1.1 — Désactiver le montage du système de fichiers cramfs

Niveau : 🔴 Référence CIS : CIS Ubuntu 24.04 1.1.1.1 Profil : Niveau 1 (L1) — Serveur MITRE ATT&CK : T1005 (Data from Local System) NIST SP 800-53 : CM-7 (Least Functionality) ANSSI : R1 — Minimiser les services et modules noyau

Description : Le système de fichiers cramfs (Compressed ROM File System) est un système de fichiers en lecture seule conçu pour les systèmes embarqués. Il n’est généralement pas nécessaire sur un serveur Ubuntu et peut être utilisé comme vecteur d’attaque pour monter des images malveillantes. La désactivation de cramfs réduit la surface d’attaque du noyau en empêchant le chargement automatique du module.

Vérification :

# Vérifier que le module est désactivé
modprobe -n -v cramfs 2>/dev/null | grep -E '(install|/bin/(true|false))'
# Vérifier que le module n'est pas chargé
lsmod | grep cramfs
  • Fichier : /etc/modprobe.d/cramfs.conf
  • Valeur attendue : install /bin/true ou install /bin/false
  • Résultat attendu : Le module ne doit pas être chargé et la commande modprobe doit retourner install /bin/false

Remédiation :

# Désactiver cramfs
echo 'install cramfs /bin/false' | sudo tee /etc/modprobe.d/cramfs.conf
echo 'blacklist cramfs' | sudo tee -a /etc/modprobe.d/cramfs.conf
# Décharger le module si chargé
sudo modprobe -r cramfs 2>/dev/null

Valeur par défaut : Le module cramfs est disponible mais pas chargé par défaut sur Ubuntu 24.04 LTS

Résultat : ☐ ✅ Conforme ☐ ❌ Non conforme ☐ ⚠️ Partiel ☐ N/A Commentaire de l’auditeur : _______________________________________________

1.1.2 — Désactiver le montage du système de fichiers squashfs

Niveau : 🔴 Référence CIS : CIS Ubuntu 24.04 1.1.1.2 Profil : Niveau 1 (L1) — Serveur MITRE ATT&CK : T1005 (Data from Local System) NIST SP 800-53 : CM-7 (Least Functionality) ANSSI : R1 — Minimiser les services et modules noyau

Description : Le système de fichiers squashfs est un système de fichiers compressé en lecture seule utilisé principalement pour les images snap et les live CD. Sur un serveur de production, sauf si des paquets snap sont nécessaires, squashfs doit être désactivé. Attention : la désactivation de squashfs empêchera l’utilisation des paquets snap.

Vérification :

# Vérifier que le module est désactivé
modprobe -n -v squashfs 2>/dev/null | grep -E '(install|/bin/(true|false))'
# Vérifier que le module n'est pas chargé
lsmod | grep squashfs
  • Fichier : /etc/modprobe.d/squashfs.conf
  • Valeur attendue : install /bin/true ou install /bin/false
  • Résultat attendu : Le module ne doit pas être chargé et la commande modprobe doit retourner install /bin/false

Remédiation :

# Désactiver squashfs
echo 'install squashfs /bin/false' | sudo tee /etc/modprobe.d/squashfs.conf
echo 'blacklist squashfs' | sudo tee -a /etc/modprobe.d/squashfs.conf
# Décharger le module si chargé
sudo modprobe -r squashfs 2>/dev/null
# NOTE : Cela empêchera l'utilisation de snap

Valeur par défaut : Le module squashfs est chargé par défaut (utilisé par snap)

Résultat : ☐ ✅ Conforme ☐ ❌ Non conforme ☐ ⚠️ Partiel ☐ N/A Commentaire de l’auditeur : _______________________________________________

1.1.3 — Désactiver le montage du système de fichiers udf

Niveau : 🟠 Référence CIS : CIS Ubuntu 24.04 1.1.1.3 Profil : Niveau 1 (L1) — Serveur MITRE ATT&CK : T1091 (Replication Through Removable Media) NIST SP 800-53 : CM-7 (Least Functionality) ANSSI : R1 — Minimiser les services et modules noyau

Description : Le système de fichiers UDF (Universal Disk Format) est utilisé pour les supports optiques (DVD, Blu-ray). Sur un serveur, ce format n’a aucune utilité et peut servir de vecteur pour monter des médias amovibles contenant du code malveillant. La désactivation du module udf fait partie du durcissement de la surface d’attaque.

Vérification :

# Vérifier que le module est désactivé
modprobe -n -v udf 2>/dev/null | grep -E '(install|/bin/(true|false))'
# Vérifier que le module n'est pas chargé
lsmod | grep udf
  • Fichier : /etc/modprobe.d/udf.conf
  • Valeur attendue : install /bin/true ou install /bin/false
  • Résultat attendu : Le module ne doit pas être chargé et la commande modprobe doit retourner install /bin/false

Remédiation :

# Désactiver udf
echo 'install udf /bin/false' | sudo tee /etc/modprobe.d/udf.conf
echo 'blacklist udf' | sudo tee -a /etc/modprobe.d/udf.conf
sudo modprobe -r udf 2>/dev/null

Valeur par défaut : Le module udf est disponible mais pas chargé par défaut

Résultat : ☐ ✅ Conforme ☐ ❌ Non conforme ☐ ⚠️ Partiel ☐ N/A Commentaire de l’auditeur : _______________________________________________

1.1.4 — Désactiver le montage du système de fichiers freevxfs

Niveau : 🟠 Référence CIS : CIS Ubuntu 24.04 1.1.1.4 Profil : Niveau 1 (L1) — Serveur MITRE ATT&CK : T1005 (Data from Local System) NIST SP 800-53 : CM-7 (Least Functionality) ANSSI : R1 — Minimiser les services et modules noyau

Description : Le système de fichiers freevxfs (Free Veritas VxFS) est une implémentation libre du système de fichiers Veritas. Ce système de fichiers est rarement utilisé sur les serveurs Linux modernes et représente une surface d’attaque inutile. Sa désactivation empêche le montage de volumes VxFS potentiellement malveillants.

Vérification :

# Vérifier que le module est désactivé
modprobe -n -v freevxfs 2>/dev/null | grep -E '(install|/bin/(true|false))'
# Vérifier que le module n'est pas chargé
lsmod | grep freevxfs
  • Fichier : /etc/modprobe.d/freevxfs.conf
  • Valeur attendue : install /bin/true ou install /bin/false
  • Résultat attendu : Le module ne doit pas être chargé et la commande modprobe doit retourner install /bin/false

Remédiation :

echo 'install freevxfs /bin/false' | sudo tee /etc/modprobe.d/freevxfs.conf
echo 'blacklist freevxfs' | sudo tee -a /etc/modprobe.d/freevxfs.conf
sudo modprobe -r freevxfs 2>/dev/null

Valeur par défaut : Le module freevxfs est disponible mais pas chargé par défaut

Résultat : ☐ ✅ Conforme ☐ ❌ Non conforme ☐ ⚠️ Partiel ☐ N/A Commentaire de l’auditeur : _______________________________________________

1.1.5 — Désactiver le montage du système de fichiers jffs2

Niveau : 🟠 Référence CIS : CIS Ubuntu 24.04 1.1.1.5 Profil : Niveau 1 (L1) — Serveur MITRE ATT&CK : T1005 (Data from Local System) NIST SP 800-53 : CM-7 (Least Functionality) ANSSI : R1 — Minimiser les services et modules noyau

Description : JFFS2 (Journalling Flash File System 2) est un système de fichiers conçu pour les mémoires flash. Il est principalement utilisé dans les systèmes embarqués et n’a aucune utilité sur un serveur Ubuntu standard. La désactivation de ce module réduit la surface d’attaque du noyau.

Vérification :

# Vérifier que le module est désactivé
modprobe -n -v jffs2 2>/dev/null | grep -E '(install|/bin/(true|false))'
# Vérifier que le module n'est pas chargé
lsmod | grep jffs2
  • Fichier : /etc/modprobe.d/jffs2.conf
  • Valeur attendue : install /bin/true ou install /bin/false
  • Résultat attendu : Le module ne doit pas être chargé et la commande modprobe doit retourner install /bin/false

Remédiation :

echo 'install jffs2 /bin/false' | sudo tee /etc/modprobe.d/jffs2.conf
echo 'blacklist jffs2' | sudo tee -a /etc/modprobe.d/jffs2.conf
sudo modprobe -r jffs2 2>/dev/null

Valeur par défaut : Le module jffs2 est disponible mais pas chargé par défaut

Résultat : ☐ ✅ Conforme ☐ ❌ Non conforme ☐ ⚠️ Partiel ☐ N/A Commentaire de l’auditeur : _______________________________________________

1.1.6 — Désactiver le montage du système de fichiers hfs

Niveau : 🟠 Référence CIS : CIS Ubuntu 24.04 1.1.1.6 Profil : Niveau 1 (L1) — Serveur MITRE ATT&CK : T1091 (Replication Through Removable Media) NIST SP 800-53 : CM-7 (Least Functionality) ANSSI : R1 — Minimiser les services et modules noyau

Description : HFS (Hierarchical File System) est le système de fichiers historique d’Apple Macintosh. Il n’a aucune utilité sur un serveur Ubuntu et peut être exploité via des médias amovibles formatés en HFS contenant du code malveillant. La désactivation empêche le montage automatique de tels volumes.

Vérification :

# Vérifier que le module est désactivé
modprobe -n -v hfs 2>/dev/null | grep -E '(install|/bin/(true|false))'
# Vérifier que le module n'est pas chargé
lsmod | grep hfs
  • Fichier : /etc/modprobe.d/hfs.conf
  • Valeur attendue : install /bin/true ou install /bin/false
  • Résultat attendu : Le module ne doit pas être chargé et la commande modprobe doit retourner install /bin/false

Remédiation :

echo 'install hfs /bin/false' | sudo tee /etc/modprobe.d/hfs.conf
echo 'blacklist hfs' | sudo tee -a /etc/modprobe.d/hfs.conf
sudo modprobe -r hfs 2>/dev/null

Valeur par défaut : Le module hfs est disponible mais pas chargé par défaut

Résultat : ☐ ✅ Conforme ☐ ❌ Non conforme ☐ ⚠️ Partiel ☐ N/A Commentaire de l’auditeur : _______________________________________________

1.1.7 — Désactiver le montage du système de fichiers hfsplus

Niveau : 🟠 Référence CIS : CIS Ubuntu 24.04 1.1.1.7 Profil : Niveau 1 (L1) — Serveur MITRE ATT&CK : T1091 (Replication Through Removable Media) NIST SP 800-53 : CM-7 (Least Functionality) ANSSI : R1 — Minimiser les services et modules noyau

Description : HFS+ (HFS Plus) est le successeur de HFS, utilisé par macOS. Comme HFS, il n’est pas nécessaire sur un serveur Linux et constitue une surface d’attaque potentielle via les médias amovibles. La désactivation du module hfsplus complète la stratégie de durcissement des systèmes de fichiers.

Vérification :

# Vérifier que le module est désactivé
modprobe -n -v hfsplus 2>/dev/null | grep -E '(install|/bin/(true|false))'
# Vérifier que le module n'est pas chargé
lsmod | grep hfsplus
  • Fichier : /etc/modprobe.d/hfsplus.conf
  • Valeur attendue : install /bin/true ou install /bin/false
  • Résultat attendu : Le module ne doit pas être chargé et la commande modprobe doit retourner install /bin/false

Remédiation :

echo 'install hfsplus /bin/false' | sudo tee /etc/modprobe.d/hfsplus.conf
echo 'blacklist hfsplus' | sudo tee -a /etc/modprobe.d/hfsplus.conf
sudo modprobe -r hfsplus 2>/dev/null

Valeur par défaut : Le module hfsplus est disponible mais pas chargé par défaut

Résultat : ☐ ✅ Conforme ☐ ❌ Non conforme ☐ ⚠️ Partiel ☐ N/A Commentaire de l’auditeur : _______________________________________________

1.1.8 — Désactiver le montage du système de fichiers usb-storage

Niveau : 🟠 Référence CIS : CIS Ubuntu 24.04 1.1.1.8 Profil : Niveau 1 (L1) — Serveur MITRE ATT&CK : T1091 (Replication Through Removable Media) NIST SP 800-53 : CM-7 (Least Functionality) ANSSI : R1 — Minimiser les services et modules noyau

Description : Le module usb-storage permet le montage des périphériques de stockage USB (clés USB, disques externes). Sur un serveur, les périphériques USB de stockage représentent un risque majeur d’exfiltration de données et d’introduction de logiciels malveillants. La désactivation de ce module est fortement recommandée en environnement serveur.

Vérification :

# Vérifier que le module est désactivé
modprobe -n -v usb-storage 2>/dev/null | grep -E '(install|/bin/(true|false))'
# Vérifier que le module n'est pas chargé
lsmod | grep usb_storage
  • Fichier : /etc/modprobe.d/usb-storage.conf
  • Valeur attendue : install /bin/true ou install /bin/false
  • Résultat attendu : Le module ne doit pas être chargé et la commande modprobe doit retourner install /bin/false

Remédiation :

echo 'install usb-storage /bin/false' | sudo tee /etc/modprobe.d/usb-storage.conf
echo 'blacklist usb-storage' | sudo tee -a /etc/modprobe.d/usb-storage.conf
sudo modprobe -r usb_storage 2>/dev/null

Valeur par défaut : Le module usb-storage est chargé par défaut si des ports USB sont détectés

Résultat : ☐ ✅ Conforme ☐ ❌ Non conforme ☐ ⚠️ Partiel ☐ N/A Commentaire de l’auditeur : _______________________________________________

1.2.1 — Vérifier l’existence d’une partition séparée pour /tmp

Niveau : 🔴 Référence CIS : CIS Ubuntu 24.04 1.1.2.1 Profil : Niveau 2 (L2) — Serveur MITRE ATT&CK : T1499.001 (Endpoint Denial of Service) NIST SP 800-53 : CM-6 (Configuration Settings), SC-39 (Process Isolation) ANSSI : R28 — Partitionnement du système de fichiers

Description : La partition /tmp doit être sur une partition séparée pour empêcher un utilisateur malveillant de remplir le système de fichiers racine. Une partition /tmp séparée permet également d’appliquer des options de montage restrictives (nodev, nosuid, noexec) qui limitent l’exploitation de fichiers temporaires.

Vérification :

# Vérifier le montage
findmnt --kernel /tmp
  • Fichier : /tmp
  • Valeur attendue : Une ligne montrant /tmp comme point de montage séparé

Remédiation :

# Option 1 : Créer une partition /tmp dans /etc/fstab
sudo systemctl unmask tmp.mount
sudo systemctl enable tmp.mount

# Option 2 : Ajouter dans /etc/fstab
# tmpfs /tmp tmpfs defaults,rw,nosuid,nodev,noexec,relatime,size=2G 0 0
sudo mount -o remount /tmp

Valeur par défaut : Non configuré par défaut — nécessite un partitionnement manuel lors de l’installation

Résultat : ☐ ✅ Conforme ☐ ❌ Non conforme ☐ ⚠️ Partiel ☐ N/A Commentaire de l’auditeur : _______________________________________________

1.2.2 — Vérifier les options nodev, nosuid, noexec sur /tmp

Niveau : 🔴 Référence CIS : CIS Ubuntu 24.04 1.1.2.2-2.4 Profil : Niveau 2 (L2) — Serveur MITRE ATT&CK : T1036.005 (Masquerading: Match Legitimate Name) NIST SP 800-53 : CM-6 (Configuration Settings), SC-39 (Process Isolation) ANSSI : R28 — Partitionnement du système de fichiers

Description : Les options de montage restrictives sur /tmp empêchent la création de fichiers de périphérique (nodev), l’exécution de programmes avec des permissions élevées (nosuid) et l’exécution directe de binaires (noexec). Ces trois options combinées constituent une protection essentielle contre l’exploitation de la partition temporaire.

Vérification :

# Vérifier le montage
findmnt --kernel /tmp | grep -E 'nodev|nosuid|noexec'
  • Fichier : /etc/fstab ou /etc/systemd/system/tmp.mount
  • Valeur attendue : Options : nodev,nosuid,noexec

Remédiation :

# Modifier /etc/fstab pour /tmp
# tmpfs /tmp tmpfs defaults,rw,nosuid,nodev,noexec,relatime,size=2G 0 0
sudo mount -o remount,nodev,nosuid,noexec /tmp

# Ou modifier /etc/systemd/system/tmp.mount
# [Mount]
# Options=mode=1777,strictatime,nosuid,nodev,noexec,size=2G

Valeur par défaut : Non configuré par défaut — nécessite un partitionnement manuel lors de l’installation

Résultat : ☐ ✅ Conforme ☐ ❌ Non conforme ☐ ⚠️ Partiel ☐ N/A Commentaire de l’auditeur : _______________________________________________

1.2.3 — Vérifier l’existence d’une partition séparée pour /var

Niveau : 🟠 Référence CIS : CIS Ubuntu 24.04 1.1.2.5 Profil : Niveau 2 (L2) — Serveur MITRE ATT&CK : T1499.001 (Endpoint Denial of Service) NIST SP 800-53 : CM-6 (Configuration Settings), SC-39 (Process Isolation) ANSSI : R28 — Partitionnement du système de fichiers

Description : La partition /var contient des données variables telles que les journaux système, les files d’attente de courrier et les caches. Un utilisateur ou un processus malveillant pourrait remplir /var et provoquer un déni de service. Une partition séparée pour /var protège le système de fichiers racine.

Vérification :

# Vérifier le montage
findmnt --kernel /var
  • Fichier : /var
  • Valeur attendue : Une ligne montrant /var comme point de montage séparé

Remédiation :

# /var doit être configuré lors de l'installation
# Ajouter dans /etc/fstab si partition existante :
# /dev/sdXN /var ext4 defaults,nosuid,nodev 0 2

Valeur par défaut : Non configuré par défaut — nécessite un partitionnement manuel lors de l’installation

Résultat : ☐ ✅ Conforme ☐ ❌ Non conforme ☐ ⚠️ Partiel ☐ N/A Commentaire de l’auditeur : _______________________________________________

1.2.4 — Vérifier l’existence d’une partition séparée pour /var/tmp

Niveau : 🟠 Référence CIS : CIS Ubuntu 24.04 1.1.2.6 Profil : Niveau 2 (L2) — Serveur MITRE ATT&CK : T1499.001 (Endpoint Denial of Service) NIST SP 800-53 : CM-6 (Configuration Settings), SC-39 (Process Isolation) ANSSI : R28 — Partitionnement du système de fichiers

Description : La partition /var/tmp est utilisée pour stocker des fichiers temporaires qui doivent persister entre les redémarrages. Comme /tmp, elle doit être isolée sur une partition séparée avec des options de montage restrictives pour empêcher l’exploitation.

Vérification :

# Vérifier le montage
findmnt --kernel /var/tmp
  • Fichier : /var/tmp
  • Valeur attendue : Une ligne montrant /var/tmp comme point de montage séparé avec nodev,nosuid,noexec

Remédiation :

# Ajouter dans /etc/fstab :
# /dev/sdXN /var/tmp ext4 defaults,nosuid,nodev,noexec 0 2
# Ou lier à /tmp :
# sudo mount --bind /tmp /var/tmp

Valeur par défaut : Non configuré par défaut — nécessite un partitionnement manuel lors de l’installation

Résultat : ☐ ✅ Conforme ☐ ❌ Non conforme ☐ ⚠️ Partiel ☐ N/A Commentaire de l’auditeur : _______________________________________________

1.2.5 — Vérifier l’existence d’une partition séparée pour /var/log

Niveau : 🟠 Référence CIS : CIS Ubuntu 24.04 1.1.2.7 Profil : Niveau 2 (L2) — Serveur MITRE ATT&CK : T1070.002 (Indicator Removal: Clear Linux or Mac System Logs) NIST SP 800-53 : CM-6 (Configuration Settings), SC-39 (Process Isolation) ANSSI : R28 — Partitionnement du système de fichiers

Description : Les journaux système sont critiques pour la détection d’incidents. Une partition séparée pour /var/log protège les journaux contre le remplissage du système de fichiers racine et vice-versa. Elle permet aussi d’appliquer des politiques de rétention spécifiques.

Vérification :

# Vérifier le montage
findmnt --kernel /var/log
  • Fichier : /var/log
  • Valeur attendue : Une ligne montrant /var/log comme point de montage séparé

Remédiation :

# /var/log doit être configuré lors de l'installation
# Ajouter dans /etc/fstab :
# /dev/sdXN /var/log ext4 defaults,nosuid,nodev,noexec 0 2

Valeur par défaut : Non configuré par défaut — nécessite un partitionnement manuel lors de l’installation

Résultat : ☐ ✅ Conforme ☐ ❌ Non conforme ☐ ⚠️ Partiel ☐ N/A Commentaire de l’auditeur : _______________________________________________

1.2.6 — Vérifier l’existence d’une partition séparée pour /var/log/audit

Niveau : 🟠 Référence CIS : CIS Ubuntu 24.04 1.1.2.8 Profil : Niveau 2 (L2) — Serveur MITRE ATT&CK : T1070.002 (Indicator Removal: Clear Linux or Mac System Logs) NIST SP 800-53 : CM-6 (Configuration Settings), SC-39 (Process Isolation) ANSSI : R28 — Partitionnement du système de fichiers

Description : Les journaux d’audit (auditd) sont essentiels pour la traçabilité des actions de sécurité. Une partition séparée pour /var/log/audit garantit que les journaux d’audit ne sont pas affectés par le remplissage d’autres journaux et protège l’intégrité des preuves forensiques.

Vérification :

# Vérifier le montage
findmnt --kernel /var/log/audit
  • Fichier : /var/log/audit
  • Valeur attendue : Une ligne montrant /var/log/audit comme point de montage séparé

Remédiation :

# /var/log/audit doit être configuré lors de l'installation
# Ajouter dans /etc/fstab :
# /dev/sdXN /var/log/audit ext4 defaults,nosuid,nodev,noexec 0 2

Valeur par défaut : Non configuré par défaut — nécessite un partitionnement manuel lors de l’installation

Résultat : ☐ ✅ Conforme ☐ ❌ Non conforme ☐ ⚠️ Partiel ☐ N/A Commentaire de l’auditeur : _______________________________________________

1.2.7 — Vérifier l’existence d’une partition séparée pour /home

Niveau : 🟠 Référence CIS : CIS Ubuntu 24.04 1.1.2.9 Profil : Niveau 2 (L2) — Serveur MITRE ATT&CK : T1499.001 (Endpoint Denial of Service) NIST SP 800-53 : CM-6 (Configuration Settings), SC-39 (Process Isolation) ANSSI : R28 — Partitionnement du système de fichiers

Description : La partition /home contient les répertoires personnels des utilisateurs. L’isolation de /home sur une partition séparée empêche les utilisateurs de remplir le système de fichiers racine et permet d’appliquer des options de montage restrictives telles que nodev et nosuid.

Vérification :

# Vérifier le montage
findmnt --kernel /home
  • Fichier : /home
  • Valeur attendue : Une ligne montrant /home comme point de montage séparé avec nodev,nosuid

Remédiation :

# /home doit être configuré lors de l'installation
# Ajouter dans /etc/fstab :
# /dev/sdXN /home ext4 defaults,nosuid,nodev 0 2

Valeur par défaut : Non configuré par défaut — nécessite un partitionnement manuel lors de l’installation

Résultat : ☐ ✅ Conforme ☐ ❌ Non conforme ☐ ⚠️ Partiel ☐ N/A Commentaire de l’auditeur : _______________________________________________

1.2.8 — Vérifier les options nodev, nosuid sur /home

Niveau : 🟠 Référence CIS : CIS Ubuntu 24.04 1.1.2.10 Profil : Niveau 2 (L2) — Serveur MITRE ATT&CK : T1036.005 (Masquerading: Match Legitimate Name) NIST SP 800-53 : CM-6 (Configuration Settings), SC-39 (Process Isolation) ANSSI : R28 — Partitionnement du système de fichiers

Description : L’option nodev empêche la création de fichiers de périphérique dans /home, tandis que nosuid empêche l’exécution de programmes avec des permissions SUID/SGID. Ces options réduisent le risque d’élévation de privilèges depuis les répertoires utilisateurs.

Vérification :

# Vérifier le montage
findmnt --kernel /home | grep -E 'nodev|nosuid'
  • Fichier : /etc/fstab
  • Valeur attendue : Options : nodev,nosuid

Remédiation :

# Modifier /etc/fstab pour /home
# /dev/sdXN /home ext4 defaults,nosuid,nodev 0 2
sudo mount -o remount,nodev,nosuid /home

Valeur par défaut : Non configuré par défaut — nécessite un partitionnement manuel lors de l’installation

Résultat : ☐ ✅ Conforme ☐ ❌ Non conforme ☐ ⚠️ Partiel ☐ N/A Commentaire de l’auditeur : _______________________________________________

1.2.9 — Vérifier les options nodev, nosuid, noexec sur /dev/shm

Niveau : 🔴 Référence CIS : CIS Ubuntu 24.04 1.1.2.11-2.13 Profil : Niveau 2 (L2) — Serveur MITRE ATT&CK : T1055.009 (Process Injection: Proc Memory) NIST SP 800-53 : CM-6 (Configuration Settings), SC-39 (Process Isolation) ANSSI : R28 — Partitionnement du système de fichiers

Description : Le système de fichiers /dev/shm (mémoire partagée) est souvent exploité par les attaquants pour stocker et exécuter du code malveillant car il réside en mémoire. L’application des options nodev, nosuid et noexec sur /dev/shm est une mesure de sécurité critique qui empêche l’exécution de code depuis la mémoire partagée.

Vérification :

# Vérifier le montage
findmnt --kernel /dev/shm | grep -E 'nodev|nosuid|noexec'
  • Fichier : /etc/fstab
  • Valeur attendue : Options : nodev,nosuid,noexec

Remédiation :

# Ajouter ou modifier dans /etc/fstab :
tmpfs /dev/shm tmpfs defaults,nodev,nosuid,noexec 0 0
sudo mount -o remount,nodev,nosuid,noexec /dev/shm

Valeur par défaut : Non configuré par défaut — nécessite un partitionnement manuel lors de l’installation

Résultat : ☐ ✅ Conforme ☐ ❌ Non conforme ☐ ⚠️ Partiel ☐ N/A Commentaire de l’auditeur : _______________________________________________

1.3.1 — Vérifier que le mot de passe du chargeur de démarrage GRUB est configuré

Niveau : 🔴 Référence CIS : CIS Ubuntu 24.04 1.4.1 Profil : Niveau 1 (L1) — Serveur MITRE ATT&CK : T1542.003 (Pre-OS Boot: Bootkit) NIST SP 800-53 : SI-7 (Software, Firmware, and Information Integrity) ANSSI : R5 — Protection du chargeur de démarrage

Description : Le chargeur de démarrage GRUB permet de modifier les paramètres de démarrage du noyau, ce qui peut être exploité pour obtenir un accès root en mode mono-utilisateur ou pour démarrer avec des paramètres dangereux (init=/bin/bash). Un mot de passe GRUB empêche les modifications non autorisées du menu de démarrage.

Vérification :

sudo grep -E '^set superusers' /boot/grub/grub.cfg 2>/dev/null
sudo grep -E '^password_pbkdf2' /boot/grub/grub.cfg 2>/dev/null
  • Fichier : /boot/grub/grub.cfg, /etc/grub.d/40_custom
  • Valeur attendue : Présence de 'set superusers' et 'password_pbkdf2'

Remédiation :

# Générer le hash du mot de passe GRUB
sudo grub-mkpasswd-pbkdf2
# Copier le hash généré

# Ajouter dans /etc/grub.d/40_custom :
cat << 'EOF' | sudo tee -a /etc/grub.d/40_custom
set superusers="grubadmin"
password_pbkdf2 grubadmin grub.pbkdf2.sha512.10000.<HASH>
EOF

# Mettre à jour GRUB
sudo update-grub

Valeur par défaut : Non configuré par défaut sur Ubuntu 24.04 LTS

Résultat : ☐ ✅ Conforme ☐ ❌ Non conforme ☐ ⚠️ Partiel ☐ N/A Commentaire de l’auditeur : _______________________________________________

1.3.2 — Vérifier les permissions du fichier de configuration GRUB

Niveau : 🔴 Référence CIS : CIS Ubuntu 24.04 1.4.2 Profil : Niveau 1 (L1) — Serveur MITRE ATT&CK : T1542.003 (Pre-OS Boot: Bootkit) NIST SP 800-53 : SI-7 (Software, Firmware, and Information Integrity) ANSSI : R5 — Protection du chargeur de démarrage

Description : Le fichier /boot/grub/grub.cfg contient la configuration du chargeur de démarrage, y compris les mots de passe hashés. Les permissions doivent être restrictives (600 ou plus strict) et le propriétaire doit être root:root pour empêcher tout utilisateur non privilégié de lire ou modifier la configuration de démarrage.

Vérification :

stat -c '%a %U %G' /boot/grub/grub.cfg
  • Fichier : /boot/grub/grub.cfg
  • Valeur attendue : Permissions : 600, Propriétaire : root:root

Remédiation :

sudo chown root:root /boot/grub/grub.cfg
sudo chmod 600 /boot/grub/grub.cfg

Valeur par défaut : Non configuré par défaut sur Ubuntu 24.04 LTS

Résultat : ☐ ✅ Conforme ☐ ❌ Non conforme ☐ ⚠️ Partiel ☐ N/A Commentaire de l’auditeur : _______________________________________________

1.3.3 — Vérifier que l’authentification est requise pour le mode mono-utilisateur (single user)

Niveau : 🔴 Référence CIS : CIS Ubuntu 24.04 1.4.3 Profil : Niveau 1 (L1) — Serveur MITRE ATT&CK : T1548.001 (Abuse Elevation Control: Setuid and Setgid) NIST SP 800-53 : SI-7 (Software, Firmware, and Information Integrity) ANSSI : R5 — Protection du chargeur de démarrage

Description : Le mode mono-utilisateur (single user mode / recovery mode) donne un accès root sans authentification par défaut. Il est impératif de configurer un mot de passe root pour empêcher l’accès non autorisé via le mode de récupération. Un attaquant ayant un accès physique pourrait sinon obtenir un shell root.

Vérification :

sudo grep -E '^root:\$' /etc/shadow | cut -d: -f2 | head -c 3
  • Fichier : /etc/shadow
  • Valeur attendue : Le champ mot de passe de root ne doit pas être vide ou contenir '!' ou '*'

Remédiation :

# Définir un mot de passe root fort
sudo passwd root

# Vérifier que le service rescue requiert l'authentification
sudo systemctl show rescue.service | grep ExecStart

Valeur par défaut : Non configuré par défaut sur Ubuntu 24.04 LTS

Résultat : ☐ ✅ Conforme ☐ ❌ Non conforme ☐ ⚠️ Partiel ☐ N/A Commentaire de l’auditeur : _______________________________________________

1.3.4 — Vérifier que Secure Boot est activé (si UEFI)

Niveau : 🟠 Référence CIS : CIS Ubuntu 24.04 1.4.4 Profil : Niveau 1 (L1) — Serveur MITRE ATT&CK : T1542.003 (Pre-OS Boot: Bootkit) NIST SP 800-53 : SI-7 (Software, Firmware, and Information Integrity) ANSSI : R5 — Protection du chargeur de démarrage

Description : Secure Boot est une fonctionnalité UEFI qui vérifie la signature cryptographique du chargeur de démarrage et du noyau avant leur exécution. Cela empêche le chargement de code non signé ou modifié au niveau du démarrage, protégeant contre les rootkits et bootkits. Secure Boot doit être activé sur tous les serveurs UEFI.

Vérification :

mokutil --sb-state 2>/dev/null || echo 'mokutil non disponible'
# Alternative
dmesg | grep -i 'secure boot'
  • Fichier : Firmware UEFI
  • Valeur attendue : SecureBoot enabled

Remédiation :

# Secure Boot s'active dans le firmware UEFI/BIOS
# 1. Redémarrer le serveur et accéder au firmware UEFI
# 2. Activer Secure Boot dans les paramètres de sécurité
# 3. S'assurer que les clés Microsoft sont inscrites
# Sur Ubuntu, installer shim-signed :
sudo apt install shim-signed grub-efi-amd64-signed linux-signed-generic

Valeur par défaut : Non configuré par défaut sur Ubuntu 24.04 LTS

Résultat : ☐ ✅ Conforme ☐ ❌ Non conforme ☐ ⚠️ Partiel ☐ N/A Commentaire de l’auditeur : _______________________________________________

1.4.1 — Vérifier que AppArmor est installé

Niveau : 🔴 Référence CIS : CIS Ubuntu 24.04 1.3.1.1 Profil : Niveau 1 (L1) — Serveur MITRE ATT&CK : T1068 (Exploitation for Privilege Escalation) NIST SP 800-53 : AC-3 (Access Enforcement), AC-6 (Least Privilege) ANSSI : R4 — Activer et configurer le contrôle d’accès obligatoire

Description : AppArmor est le système de contrôle d’accès obligatoire (MAC — Mandatory Access Control) par défaut sur Ubuntu. Il confine les applications dans des profils de sécurité qui restreignent leurs capacités (accès fichiers, réseau, capabilities). AppArmor est essentiel pour limiter les dégâts en cas de compromission d’un service.

Vérification :

dpkg -l | grep -E '^ii.*apparmor\b'
apt list --installed 2>/dev/null | grep apparmor
  • Fichier / Composant : apparmor, apparmor-utils
  • Valeur attendue : Les paquets apparmor et apparmor-utils doivent être installés

Remédiation :

sudo apt update && sudo apt install -y apparmor apparmor-utils apparmor-profiles

Valeur par défaut : AppArmor est installé et activé par défaut sur Ubuntu 24.04 LTS, la plupart des profils sont en mode enforce

Résultat : ☐ ✅ Conforme ☐ ❌ Non conforme ☐ ⚠️ Partiel ☐ N/A Commentaire de l’auditeur : _______________________________________________

1.4.2 — Vérifier que AppArmor est activé dans la configuration du chargeur de démarrage

Niveau : 🔴 Référence CIS : CIS Ubuntu 24.04 1.3.1.2 Profil : Niveau 1 (L1) — Serveur MITRE ATT&CK : T1068 (Exploitation for Privilege Escalation) NIST SP 800-53 : AC-3 (Access Enforcement), AC-6 (Least Privilege) ANSSI : R4 — Activer et configurer le contrôle d’accès obligatoire

Description : AppArmor doit être activé au niveau du noyau via les paramètres de démarrage GRUB. Les paramètres apparmor=1 et security=apparmor doivent être présents dans la ligne de commande du noyau. Sans ces paramètres, AppArmor ne sera pas actif même s’il est installé.

Vérification :

grep -E 'apparmor=1|security=apparmor' /proc/cmdline
  • Fichier / Composant : /etc/default/grub
  • Valeur attendue : GRUB_CMDLINE_LINUX contient 'apparmor=1 security=apparmor'

Remédiation :

# Modifier /etc/default/grub
sudo sed -i 's/^GRUB_CMDLINE_LINUX="/GRUB_CMDLINE_LINUX="apparmor=1 security=apparmor /' /etc/default/grub
sudo update-grub
# Redémarrer le serveur pour appliquer

Valeur par défaut : AppArmor est installé et activé par défaut sur Ubuntu 24.04 LTS, la plupart des profils sont en mode enforce

Résultat : ☐ ✅ Conforme ☐ ❌ Non conforme ☐ ⚠️ Partiel ☐ N/A Commentaire de l’auditeur : _______________________________________________

1.4.3 — Vérifier que tous les profils AppArmor sont en mode enforce ou complain

Niveau : 🔴 Référence CIS : CIS Ubuntu 24.04 1.3.1.3 Profil : Niveau 1 (L1) — Serveur MITRE ATT&CK : T1068 (Exploitation for Privilege Escalation) NIST SP 800-53 : AC-3 (Access Enforcement), AC-6 (Least Privilege) ANSSI : R4 — Activer et configurer le contrôle d’accès obligatoire

Description : Les profils AppArmor définissent les permissions de chaque application confinée. En mode ’enforce’, les violations sont bloquées et journalisées. En mode ‘complain’, les violations sont uniquement journalisées. L’objectif est d’avoir tous les profils en mode enforce. Aucun profil ne doit être en mode ‘unconfined’.

Vérification :

sudo apparmor_status
# Ou
sudo aa-status --json 2>/dev/null | python3 -m json.tool
  • Fichier / Composant : Profils AppArmor
  • Valeur attendue : 0 profils en mode unconfined, maximum de profils en mode enforce

Remédiation :

# Passer tous les profils en mode enforce
sudo aa-enforce /etc/apparmor.d/*

# Vérifier le statut
sudo aa-status

# Pour un profil spécifique en mode complain (debug) :
# sudo aa-complain /etc/apparmor.d/<profil>

Valeur par défaut : AppArmor est installé et activé par défaut sur Ubuntu 24.04 LTS, la plupart des profils sont en mode enforce

Résultat : ☐ ✅ Conforme ☐ ❌ Non conforme ☐ ⚠️ Partiel ☐ N/A Commentaire de l’auditeur : _______________________________________________

1.4.4 — Vérifier qu’aucun profil AppArmor n’est déchargé (unconfined)

Niveau : 🟠 Référence CIS : CIS Ubuntu 24.04 1.3.1.4 Profil : Niveau 1 (L1) — Serveur MITRE ATT&CK : T1068 (Exploitation for Privilege Escalation) NIST SP 800-53 : AC-3 (Access Enforcement), AC-6 (Least Privilege) ANSSI : R4 — Activer et configurer le contrôle d’accès obligatoire

Description : Un processus ‘unconfined’ n’est soumis à aucune restriction AppArmor. Tous les processus qui disposent d’un profil AppArmor doivent être en mode enforce ou complain. Les processus critiques sans profil doivent faire l’objet d’un profil personnalisé.

Vérification :

sudo aa-status | grep -c 'processes are unconfined'
sudo aa-unconfined --paranoid 2>/dev/null
  • Fichier / Composant : Profils AppArmor
  • Valeur attendue : 0 processus unconfined (ou minimum possible)

Remédiation :

# Identifier les processus non confinés
sudo aa-unconfined

# Créer un profil pour un processus non confiné
sudo aa-genprof /chemin/vers/programme
# Suivre les instructions interactives

# Activer le nouveau profil
sudo aa-enforce /etc/apparmor.d/<nouveau_profil>

Valeur par défaut : AppArmor est installé et activé par défaut sur Ubuntu 24.04 LTS, la plupart des profils sont en mode enforce

Résultat : ☐ ✅ Conforme ☐ ❌ Non conforme ☐ ⚠️ Partiel ☐ N/A Commentaire de l’auditeur : _______________________________________________

1.5.1 — Vérifier que les mises à jour de sécurité sont installées

Niveau : 🔴 Référence CIS : CIS Ubuntu 24.04 1.2.1 Profil : Niveau 1 (L1) — Serveur MITRE ATT&CK : T1190 (Exploit Public-Facing Application) NIST SP 800-53 : CM-6 (Configuration Settings) ANSSI : R1 — Maintenir le système à jour

Description : Les correctifs de sécurité doivent être appliqués en temps opportun pour protéger le système contre les vulnérabilités connues. Ubuntu 24.04 LTS utilise APT et le dépôt security.ubuntu.com pour les mises à jour de sécurité. Un retard dans l’application des correctifs expose le serveur aux exploits publics.

Vérification :

sudo apt update && apt list --upgradable 2>/dev/null | grep -i security
# Nombre de mises à jour de sécurité en attente
sudo unattended-upgrade --dry-run -d 2>/dev/null | grep 'Checking' | wc -l
  • Fichier / Composant : /etc/apt/sources.list.d/ubuntu.sources
  • Valeur attendue : Aucune mise à jour de sécurité en attente

Remédiation :

# Installer toutes les mises à jour de sécurité
sudo apt update
sudo apt upgrade -y

# Installer uniquement les mises à jour de sécurité
sudo unattended-upgrade -d

# Vérifier la date de dernière mise à jour
ls -la /var/log/apt/history.log

Valeur par défaut : Variable selon l’installation Ubuntu 24.04 LTS

Résultat : ☐ ✅ Conforme ☐ ❌ Non conforme ☐ ⚠️ Partiel ☐ N/A Commentaire de l’auditeur : _______________________________________________

1.5.2 — Vérifier que les dépôts de paquets sont configurés et authentifiés (GPG)

Niveau : 🟠 Référence CIS : CIS Ubuntu 24.04 1.2.2 Profil : Niveau 1 (L1) — Serveur MITRE ATT&CK : T1195.002 (Supply Chain Compromise: Software Supply Chain) NIST SP 800-53 : CM-6 (Configuration Settings) ANSSI : R1 — Maintenir le système à jour

Description : Les dépôts de paquets doivent être configurés avec des sources officielles et authentifiés par des clés GPG pour garantir l’intégrité et l’authenticité des paquets installés. L’utilisation de dépôts non signés ou de sources tierces non vérifiées constitue un risque de compromission de la chaîne d’approvisionnement.

Vérification :

apt-key list 2>/dev/null
grep -r 'deb ' /etc/apt/sources.list /etc/apt/sources.list.d/ 2>/dev/null | grep -v '^#'
apt-config dump | grep -i 'AllowUnauthenticated'
  • Fichier / Composant : /etc/apt/sources.list, /etc/apt/sources.list.d/
  • Valeur attendue : Tous les dépôts doivent utiliser des clés GPG valides, AllowUnauthenticated=false

Remédiation :

# Vérifier les clés GPG
apt-key list

# S'assurer que les dépôts non authentifiés sont refusés
echo 'APT::Get::AllowUnauthenticated "false";' | sudo tee /etc/apt/apt.conf.d/99auth
echo 'Acquire::AllowInsecureRepositories "false";' | sudo tee -a /etc/apt/apt.conf.d/99auth

Valeur par défaut : Variable selon l’installation Ubuntu 24.04 LTS

Résultat : ☐ ✅ Conforme ☐ ❌ Non conforme ☐ ⚠️ Partiel ☐ N/A Commentaire de l’auditeur : _______________________________________________

1.5.3 — Vérifier que AIDE (Advanced Intrusion Detection Environment) est installé

Niveau : 🔴 Référence CIS : CIS Ubuntu 24.04 1.3.1 Profil : Niveau 1 (L1) — Serveur MITRE ATT&CK : T1565.001 (Data Manipulation: Stored Data Manipulation) NIST SP 800-53 : SI-7 (Software, Firmware, and Information Integrity) ANSSI : R67 — Mettre en place un contrôle d’intégrité des fichiers

Description : AIDE est un outil de vérification d’intégrité des fichiers qui compare l’état actuel du système de fichiers avec une base de référence. Il détecte toute modification non autorisée des fichiers système critiques, des binaires et des fichiers de configuration. AIDE est essentiel pour détecter les rootkits et les modifications malveillantes.

Vérification :

dpkg -l | grep -E '^ii.*aide\b'
aide --version 2>/dev/null
  • Fichier / Composant : aide, aide-common
  • Valeur attendue : Le paquet aide doit être installé

Remédiation :

# Installer AIDE
sudo apt install -y aide aide-common

# Initialiser la base de données AIDE
sudo aideinit
# Copier la base de données
sudo cp /var/lib/aide/aide.db.new /var/lib/aide/aide.db

# Configurer la vérification quotidienne via cron
echo '0 5 * * * root /usr/bin/aide.wrapper --config /etc/aide/aide.conf --check' | sudo tee /etc/cron.d/aide

Valeur par défaut : Variable selon l’installation Ubuntu 24.04 LTS

Résultat : ☐ ✅ Conforme ☐ ❌ Non conforme ☐ ⚠️ Partiel ☐ N/A Commentaire de l’auditeur : _______________________________________________

1.5.4 — Vérifier que la vérification d’intégrité AIDE est planifiée

Niveau : 🟠 Référence CIS : CIS Ubuntu 24.04 1.3.2 Profil : Niveau 1 (L1) — Serveur MITRE ATT&CK : T1565.001 (Data Manipulation: Stored Data Manipulation) NIST SP 800-53 : SI-7 (Software, Firmware, and Information Integrity) ANSSI : R67 — Mettre en place un contrôle d’intégrité des fichiers

Description : La vérification d’intégrité AIDE doit être exécutée régulièrement (au minimum quotidiennement) pour détecter rapidement les modifications non autorisées. Un cron job ou un timer systemd doit être configuré pour automatiser cette vérification. Les résultats doivent être envoyés à un système de journalisation centralisé.

Vérification :

sudo crontab -u root -l 2>/dev/null | grep aide
systemctl is-enabled aidecheck.timer 2>/dev/null
systemctl is-enabled aidecheck.service 2>/dev/null
  • Fichier / Composant : /etc/cron.d/aide ou aidecheck.timer
  • Valeur attendue : Une entrée cron ou un timer systemd planifiant aide --check

Remédiation :

# Option 1 : Cron job
echo '0 5 * * * root /usr/bin/aide.wrapper --config /etc/aide/aide.conf --check' | sudo tee /etc/cron.d/aide

# Option 2 : Timer systemd
sudo systemctl enable aidecheck.timer
sudo systemctl start aidecheck.timer

Valeur par défaut : Variable selon l’installation Ubuntu 24.04 LTS

Résultat : ☐ ✅ Conforme ☐ ❌ Non conforme ☐ ⚠️ Partiel ☐ N/A Commentaire de l’auditeur : _______________________________________________

1.5.5 — Vérifier que les privilèges de core dump sont restreints

Niveau : 🟠 Référence CIS : CIS Ubuntu 24.04 1.5.1 Profil : Niveau 1 (L1) — Serveur MITRE ATT&CK : T1003.007 (OS Credential Dumping: Proc Filesystem) NIST SP 800-53 : SI-16 (Memory Protection) ANSSI : R14 — Durcissement du noyau Linux

Description : Les core dumps contiennent une image mémoire du processus au moment du crash, pouvant inclure des informations sensibles telles que des mots de passe, des clés de chiffrement ou des données confidentielles. La restriction des core dumps empêche la fuite d’informations sensibles et réduit la surface d’attaque.

Vérification :

grep -E '^\*.*hard.*core' /etc/security/limits.conf /etc/security/limits.d/*.conf 2>/dev/null
sysctl fs.suid_dumpable
grep -r 'Storage=none' /etc/systemd/coredump.conf /etc/systemd/coredump.conf.d/ 2>/dev/null
  • Fichier / Composant : /etc/security/limits.conf, /etc/sysctl.d/, /etc/systemd/coredump.conf
  • Valeur attendue : '* hard core 0', fs.suid_dumpable=0, Storage=none

Remédiation :

# Désactiver les core dumps
echo '* hard core 0' | sudo tee -a /etc/security/limits.conf

# Configurer sysctl
echo 'fs.suid_dumpable = 0' | sudo tee /etc/sysctl.d/50-coredump.conf
sudo sysctl -w fs.suid_dumpable=0

# Configurer systemd
sudo mkdir -p /etc/systemd/coredump.conf.d
cat << EOF | sudo tee /etc/systemd/coredump.conf.d/disable.conf
[Coredump]
Storage=none
ProcessSizeMax=0
EOF
sudo systemctl daemon-reload

Valeur par défaut : Variable selon l’installation Ubuntu 24.04 LTS

Résultat : ☐ ✅ Conforme ☐ ❌ Non conforme ☐ ⚠️ Partiel ☐ N/A Commentaire de l’auditeur : _______________________________________________

1.5.6 — Vérifier que la randomisation de l’espace d’adressage (ASLR) est activée

Niveau : 🔴 Référence CIS : CIS Ubuntu 24.04 1.5.2 Profil : Niveau 1 (L1) — Serveur MITRE ATT&CK : T1055 (Process Injection) NIST SP 800-53 : SI-16 (Memory Protection) ANSSI : R14 — Durcissement du noyau Linux

Description : L’ASLR (Address Space Layout Randomization) randomise l’emplacement mémoire des bibliothèques, de la pile, du tas et du code exécutable. Cela rend l’exploitation de vulnérabilités de type buffer overflow significativement plus difficile. La valeur 2 active la randomisation complète.

Vérification :

sysctl kernel.randomize_va_space
  • Fichier / Composant : /etc/sysctl.d/
  • Valeur attendue : kernel.randomize_va_space = 2

Remédiation :

echo 'kernel.randomize_va_space = 2' | sudo tee /etc/sysctl.d/50-aslr.conf
sudo sysctl -w kernel.randomize_va_space=2

Valeur par défaut : Variable selon l’installation Ubuntu 24.04 LTS

Résultat : ☐ ✅ Conforme ☐ ❌ Non conforme ☐ ⚠️ Partiel ☐ N/A Commentaire de l’auditeur : _______________________________________________

1.5.7 — Vérifier que le support de la fonctionnalité ptrace est restreint

Niveau : 🟠 Référence CIS : CIS Ubuntu 24.04 1.5.3 Profil : Niveau 1 (L1) — Serveur MITRE ATT&CK : T1055.008 (Process Injection: Ptrace System Calls) NIST SP 800-53 : SI-16 (Memory Protection) ANSSI : R14 — Durcissement du noyau Linux

Description : La fonctionnalité ptrace permet à un processus de surveiller et contrôler l’exécution d’un autre processus. Un attaquant peut utiliser ptrace pour injecter du code malveillant dans un processus en cours d’exécution. La restriction de ptrace à 1 (processus enfants uniquement) limite ce vecteur d’attaque.

Vérification :

sysctl kernel.yama.ptrace_scope
  • Fichier / Composant : /etc/sysctl.d/
  • Valeur attendue : kernel.yama.ptrace_scope = 1 (ou plus restrictif : 2 ou 3)

Remédiation :

echo 'kernel.yama.ptrace_scope = 1' | sudo tee /etc/sysctl.d/50-ptrace.conf
sudo sysctl -w kernel.yama.ptrace_scope=1
# Valeurs possibles :
# 0 = pas de restriction (dangereux)
# 1 = processus enfants uniquement (recommandé)
# 2 = admin uniquement (CAP_SYS_PTRACE)
# 3 = totalement désactivé

Valeur par défaut : Variable selon l’installation Ubuntu 24.04 LTS

Résultat : ☐ ✅ Conforme ☐ ❌ Non conforme ☐ ⚠️ Partiel ☐ N/A Commentaire de l’auditeur : _______________________________________________

1.5.8 — Vérifier que la bannière d’avertissement pré-connexion est configurée (/etc/issue)

Niveau : �� Référence CIS : CIS Ubuntu 24.04 1.7.1 Profil : Niveau 1 (L1) — Serveur MITRE ATT&CK : T1082 (System Information Discovery) NIST SP 800-53 : AC-8 (System Use Notification) ANSSI : R6 — Afficher une bannière d’avertissement

Description : Le fichier /etc/issue affiche un message avant l’invite de connexion sur les consoles locales. Ce message doit contenir un avertissement légal indiquant que l’accès est réservé aux utilisateurs autorisés et que toute activité est surveillée. Il ne doit pas contenir d’informations système (\m, \r, \s, \v).

Vérification :

cat /etc/issue
  • Fichier / Composant : /etc/issue
  • Valeur attendue : Message d'avertissement sans informations système (\m, \r, \s, \v)

Remédiation :

cat << 'EOF' | sudo tee /etc/issue
*************************************************************
*                    AVERTISSEMENT                          *
*  L'accès à ce système est réservé aux utilisateurs        *
*  autorisés. Toute activité est surveillée et enregistrée. *
*  Tout accès non autorisé sera poursuivi conformément      *
*  à la législation en vigueur.                             *
*************************************************************
EOF

Valeur par défaut : Variable selon l’installation Ubuntu 24.04 LTS

Résultat : ☐ ✅ Conforme ☐ ❌ Non conforme ☐ ⚠️ Partiel ☐ N/A Commentaire de l’auditeur : _______________________________________________

1.5.9 — Vérifier que la bannière d’avertissement réseau est configurée (/etc/issue.net)

Niveau : 🟡 Référence CIS : CIS Ubuntu 24.04 1.7.2 Profil : Niveau 1 (L1) — Serveur MITRE ATT&CK : T1082 (System Information Discovery) NIST SP 800-53 : AC-8 (System Use Notification) ANSSI : R6 — Afficher une bannière d’avertissement

Description : Le fichier /etc/issue.net est affiché pour les connexions réseau (SSH, telnet). Comme /etc/issue, il doit contenir un message d’avertissement légal et ne pas divulguer d’informations système. Ce message est utilisé par le paramètre SSH Banner.

Vérification :

cat /etc/issue.net
  • Fichier / Composant : /etc/issue.net
  • Valeur attendue : Message d'avertissement sans informations système

Remédiation :

cat << 'EOF' | sudo tee /etc/issue.net
*************************************************************
*                    AVERTISSEMENT                          *
*  L'accès à ce système est réservé aux utilisateurs        *
*  autorisés. Toute activité est surveillée et enregistrée. *
*  Tout accès non autorisé sera poursuivi conformément      *
*  à la législation en vigueur.                             *
*************************************************************
EOF

Valeur par défaut : Variable selon l’installation Ubuntu 24.04 LTS

Résultat : ☐ ✅ Conforme ☐ ❌ Non conforme ☐ ⚠️ Partiel ☐ N/A Commentaire de l’auditeur : _______________________________________________

1.5.10 — Vérifier les permissions du fichier /etc/motd

Niveau : 🟢 Référence CIS : CIS Ubuntu 24.04 1.7.3 Profil : Niveau 1 (L1) — Serveur MITRE ATT&CK : T1082 (System Information Discovery) NIST SP 800-53 : AC-8 (System Use Notification) ANSSI : R6 — Afficher une bannière d’avertissement

Description : Le fichier /etc/motd (Message of the Day) est affiché après une connexion réussie. Il ne doit pas contenir d’informations sensibles sur le système et ses permissions doivent être restrictives pour empêcher les utilisateurs non privilégiés de le modifier.

Vérification :

stat -c '%a %U %G' /etc/motd 2>/dev/null || echo 'Fichier non trouvé'
  • Fichier / Composant : /etc/motd
  • Valeur attendue : Permissions : 644, Propriétaire : root:root

Remédiation :

sudo chown root:root /etc/motd 2>/dev/null
sudo chmod 644 /etc/motd 2>/dev/null
# Supprimer les informations système du motd
sudo chmod -x /etc/update-motd.d/* 2>/dev/null

Valeur par défaut : Variable selon l’installation Ubuntu 24.04 LTS

Résultat : ☐ ✅ Conforme ☐ ❌ Non conforme ☐ ⚠️ Partiel ☐ N/A Commentaire de l’auditeur : _______________________________________________

1.5.11 — Vérifier les permissions du fichier /etc/issue

Niveau : 🟢 Référence CIS : CIS Ubuntu 24.04 1.7.4 Profil : Niveau 1 (L1) — Serveur MITRE ATT&CK : T1082 (System Information Discovery) NIST SP 800-53 : AC-8 (System Use Notification) ANSSI : R6 — Afficher une bannière d’avertissement

Description : Les permissions du fichier /etc/issue doivent garantir que seul root peut modifier le message d’avertissement pré-connexion. Des permissions trop permissives permettraient à un attaquant de modifier ou supprimer le message d’avertissement légal.

Vérification :

stat -c '%a %U %G' /etc/issue
  • Fichier / Composant : /etc/issue
  • Valeur attendue : Permissions : 644, Propriétaire : root:root

Remédiation :

sudo chown root:root /etc/issue
sudo chmod 644 /etc/issue

Valeur par défaut : Variable selon l’installation Ubuntu 24.04 LTS

Résultat : ☐ ✅ Conforme ☐ ❌ Non conforme ☐ ⚠️ Partiel ☐ N/A Commentaire de l’auditeur : _______________________________________________

1.5.12 — Vérifier les permissions du fichier /etc/issue.net

Niveau : 🟢 Référence CIS : CIS Ubuntu 24.04 1.7.5 Profil : Niveau 1 (L1) — Serveur MITRE ATT&CK : T1082 (System Information Discovery) NIST SP 800-53 : AC-8 (System Use Notification) ANSSI : R6 — Afficher une bannière d’avertissement

Description : Les permissions du fichier /etc/issue.net doivent garantir que seul root peut modifier le message d’avertissement réseau. Ce fichier est particulièrement important car il est affiché aux connexions distantes.

Vérification :

stat -c '%a %U %G' /etc/issue.net
  • Fichier / Composant : /etc/issue.net
  • Valeur attendue : Permissions : 644, Propriétaire : root:root

Remédiation :

sudo chown root:root /etc/issue.net
sudo chmod 644 /etc/issue.net

Valeur par défaut : Variable selon l’installation Ubuntu 24.04 LTS

Résultat : ☐ ✅ Conforme ☐ ❌ Non conforme ☐ ⚠️ Partiel ☐ N/A Commentaire de l’auditeur : _______________________________________________

1.5.13 — Vérifier que le gestionnaire d’affichage GDM est absent ou sécurisé

Niveau : 🟠 Référence CIS : CIS Ubuntu 24.04 1.8.1-1.8.10 Profil : Niveau 1 (L1) — Serveur MITRE ATT&CK : T1078.001 (Valid Accounts: Default Accounts) NIST SP 800-53 : CM-6 (Configuration Settings) ANSSI : R1 — Maintenir le système à jour

Description : Sur un serveur, aucun environnement graphique ne devrait être installé. Si GDM (GNOME Display Manager) est présent, il doit être sécurisé : bannière configurée, verrouillage automatique, désactivation de la liste des utilisateurs, et désactivation du login automatique. Idéalement, GDM et GNOME doivent être supprimés.

Vérification :

dpkg -l | grep -E 'gdm3|gnome-shell|xorg' | head -5
systemctl get-default
  • Fichier / Composant : Environnement graphique
  • Valeur attendue : Aucun environnement graphique installé, default target = multi-user.target

Remédiation :

# Vérifier et supprimer l'environnement graphique si présent
sudo systemctl set-default multi-user.target
sudo apt purge -y gdm3 gnome-shell ubuntu-desktop 2>/dev/null
sudo apt autoremove -y

Valeur par défaut : Variable selon l’installation Ubuntu 24.04 LTS

Résultat : ☐ ✅ Conforme ☐ ❌ Non conforme ☐ ⚠️ Partiel ☐ N/A Commentaire de l’auditeur : _______________________________________________

SECTION 2 — SERVICES RÉSEAU ET DÉMONS

Objectif : Désactiver tous les services réseau non essentiels pour minimiser la surface d’attaque. Chaque service actif représente un vecteur d’attaque potentiel. Seuls les services strictement nécessaires au rôle du serveur doivent être activés.

Références : CIS Ubuntu 24.04 LTS Benchmark v1.0.0 — Sections 2.1 à 2.4 | ANSSI-BP-028 R17-R22 | NIST SP 800-53 CM-7, AC-17 | DISA STIG Ubuntu

2.1.1 — Vérifier que le service xinetd n’est pas installé

Niveau : 🔴 Référence CIS : CIS Ubuntu 24.04 2.1.1 Profil : Niveau 1 (L1) — Serveur MITRE ATT&CK : T1203 (Exploitation for Client Execution) NIST SP 800-53 : CM-7 (Least Functionality) ANSSI : R17 — Réduire la surface réseau

Description : xinetd (Extended Internet Services Daemon) est un super-démon qui écoute les connexions réseau et lance les services configurés à la demande. Il est considéré comme obsolète et insécurisé car il ne supporte pas les mécanismes de sécurité modernes. xinetd ne doit pas être installé sur un serveur Ubuntu 24.04.

Vérification :

dpkg -l | grep xinetd
systemctl is-enabled xinetd 2>/dev/null
  • Fichier / Composant : xinetd
  • Valeur attendue : Le paquet ne doit pas être installé

Remédiation :

sudo apt purge -y xinetd
sudo apt autoremove -y

Valeur par défaut : Non installé par défaut sur Ubuntu 24.04 LTS

Résultat : ☐ ✅ Conforme ☐ ❌ Non conforme ☐ ⚠️ Partiel ☐ N/A Commentaire de l’auditeur : _______________________________________________

2.1.2 — Vérifier que le service openbsd-inetd n’est pas installé

Niveau : 🔴 Référence CIS : CIS Ubuntu 24.04 2.1.2 Profil : Niveau 1 (L1) — Serveur MITRE ATT&CK : T1203 (Exploitation for Client Execution) NIST SP 800-53 : CM-7 (Least Functionality) ANSSI : R17 — Réduire la surface réseau

Description : openbsd-inetd est un autre super-démon réseau qui, comme xinetd, lance des services à la demande. Il est obsolète et constitue un risque de sécurité. Les services modernes utilisent systemd pour la gestion des sockets et des services.

Vérification :

dpkg -l | grep openbsd-inetd
systemctl is-enabled inetd 2>/dev/null
  • Fichier / Composant : openbsd-inetd
  • Valeur attendue : Le paquet ne doit pas être installé

Remédiation :

sudo apt purge -y openbsd-inetd
sudo apt autoremove -y

Valeur par défaut : Non installé par défaut sur Ubuntu 24.04 LTS

Résultat : ☐ ✅ Conforme ☐ ❌ Non conforme ☐ ⚠️ Partiel ☐ N/A Commentaire de l’auditeur : _______________________________________________

2.1.3 — Vérifier que le service avahi-daemon n’est pas installé ou est désactivé

Niveau : 🟠 Référence CIS : CIS Ubuntu 24.04 2.1.3 Profil : Niveau 1 (L1) — Serveur MITRE ATT&CK : T1557 (Adversary-in-the-Middle) NIST SP 800-53 : CM-7 (Least Functionality) ANSSI : R17 — Réduire la surface réseau

Description : Avahi est une implémentation de mDNS/DNS-SD (Zeroconf) qui permet la découverte automatique de services sur le réseau local. Sur un serveur, cette fonctionnalité est rarement nécessaire et expose le système à des attaques de type man-in-the-middle et d’empoisonnement DNS. Avahi doit être désactivé ou supprimé.

Vérification :

dpkg -l | grep avahi-daemon
systemctl is-enabled avahi-daemon 2>/dev/null
ss -tlnp | grep avahi
  • Fichier / Composant : avahi-daemon
  • Valeur attendue : Le service ne doit pas être actif ni installé

Remédiation :

sudo systemctl stop avahi-daemon
sudo systemctl disable avahi-daemon
sudo apt purge -y avahi-daemon
sudo apt autoremove -y

Valeur par défaut : Peut être installé par défaut selon le profil d’installation

Résultat : ☐ ✅ Conforme ☐ ❌ Non conforme ☐ ⚠️ Partiel ☐ N/A Commentaire de l’auditeur : _______________________________________________

2.1.4 — Vérifier que le service CUPS n’est pas installé (sauf si nécessaire)

Niveau : 🟠 Référence CIS : CIS Ubuntu 24.04 2.1.4 Profil : Niveau 1 (L1) — Serveur MITRE ATT&CK : T1210 (Exploitation of Remote Services) NIST SP 800-53 : CM-7 (Least Functionality) ANSSI : R17 — Réduire la surface réseau

Description : CUPS (Common UNIX Printing System) est le système d’impression standard. Sur un serveur qui ne gère pas d’impression, CUPS représente une surface d’attaque inutile avec un historique de vulnérabilités critiques (CVE). Le service doit être supprimé si l’impression n’est pas requise.

Vérification :

dpkg -l | grep cups
systemctl is-enabled cups 2>/dev/null
ss -tlnp | grep ':631'
  • Fichier / Composant : cups, cups-daemon
  • Valeur attendue : Le service ne doit pas être installé sur un serveur

Remédiation :

sudo systemctl stop cups
sudo systemctl disable cups
sudo apt purge -y cups cups-daemon cups-server-common
sudo apt autoremove -y

Valeur par défaut : Non installé par défaut en mode serveur

Résultat : ☐ ✅ Conforme ☐ ❌ Non conforme ☐ ⚠️ Partiel ☐ N/A Commentaire de l’auditeur : _______________________________________________

2.1.5 — Vérifier que le serveur DHCP n’est pas installé (sauf si requis)

Niveau : 🟠 Référence CIS : CIS Ubuntu 24.04 2.1.5 Profil : Niveau 1 (L1) — Serveur MITRE ATT&CK : T1557.002 (DHCP Spoofing) NIST SP 800-53 : CM-7 (Least Functionality) ANSSI : R17 — Réduire la surface réseau

Description : Le serveur DHCP (isc-dhcp-server ou kea-dhcp4-server) attribue automatiquement des adresses IP aux clients réseau. Un serveur DHCP non autorisé peut être exploité pour des attaques de type DHCP spoofing, permettant la redirection du trafic réseau. Ce service ne doit être installé que sur les serveurs désignés comme serveurs DHCP.

Vérification :

dpkg -l | grep -E 'isc-dhcp-server|kea-dhcp'
systemctl is-enabled isc-dhcp-server 2>/dev/null
systemctl is-enabled kea-dhcp4-server 2>/dev/null
ss -ulnp | grep ':67'
  • Fichier / Composant : isc-dhcp-server, kea-dhcp4-server
  • Valeur attendue : Non installé sauf si le serveur est un serveur DHCP dédié

Remédiation :

sudo systemctl stop isc-dhcp-server 2>/dev/null
sudo systemctl disable isc-dhcp-server 2>/dev/null
sudo apt purge -y isc-dhcp-server 2>/dev/null
sudo apt purge -y kea-dhcp4-server 2>/dev/null
sudo apt autoremove -y

Valeur par défaut : Non installé par défaut

Résultat : ☐ ✅ Conforme ☐ ❌ Non conforme ☐ ⚠️ Partiel ☐ N/A Commentaire de l’auditeur : _______________________________________________

2.1.6 — Vérifier que le serveur LDAP (slapd) n’est pas installé (sauf si requis)

Niveau : 🟠 Référence CIS : CIS Ubuntu 24.04 2.1.6 Profil : Niveau 1 (L1) — Serveur MITRE ATT&CK : T1210 (Exploitation of Remote Services) NIST SP 800-53 : CM-7 (Least Functionality) ANSSI : R17 — Réduire la surface réseau

Description : slapd (OpenLDAP Server Daemon) est le serveur d’annuaire LDAP. Un serveur LDAP expose des informations d’annuaire sensibles et peut être ciblé pour des attaques d’énumération d’utilisateurs ou d’injection LDAP. Ce service ne doit être installé que sur les serveurs d’annuaire dédiés.

Vérification :

dpkg -l | grep slapd
systemctl is-enabled slapd 2>/dev/null
ss -tlnp | grep ':389\|:636'
  • Fichier / Composant : slapd
  • Valeur attendue : Non installé sauf si serveur LDAP dédié

Remédiation :

sudo systemctl stop slapd 2>/dev/null
sudo systemctl disable slapd 2>/dev/null
sudo apt purge -y slapd
sudo apt autoremove -y

Valeur par défaut : Non installé par défaut

Résultat : ☐ ✅ Conforme ☐ ❌ Non conforme ☐ ⚠️ Partiel ☐ N/A Commentaire de l’auditeur : _______________________________________________

2.1.7 — Vérifier que le serveur NFS n’est pas installé (sauf si requis)

Niveau : 🟠 Référence CIS : CIS Ubuntu 24.04 2.1.7 Profil : Niveau 1 (L1) — Serveur MITRE ATT&CK : T1021.002 (Remote Services: SMB/Windows Admin Shares) NIST SP 800-53 : CM-7 (Least Functionality) ANSSI : R17 — Réduire la surface réseau

Description : NFS (Network File System) permet le partage de fichiers entre systèmes Unix/Linux. Le protocole NFS, particulièrement les versions anciennes, présente des vulnérabilités connues et peut exposer des données sensibles. Le serveur NFS ne doit être activé que si le partage de fichiers est strictement nécessaire.

Vérification :

dpkg -l | grep nfs-kernel-server
systemctl is-enabled nfs-server 2>/dev/null
ss -tlnp | grep ':2049'
  • Fichier / Composant : nfs-kernel-server
  • Valeur attendue : Non installé sauf si serveur NFS dédié

Remédiation :

sudo systemctl stop nfs-server 2>/dev/null
sudo systemctl disable nfs-server 2>/dev/null
sudo apt purge -y nfs-kernel-server
sudo apt autoremove -y

Valeur par défaut : Non installé par défaut

Résultat : ☐ ✅ Conforme ☐ ❌ Non conforme ☐ ⚠️ Partiel ☐ N/A Commentaire de l’auditeur : _______________________________________________

2.1.8 — Vérifier que rpcbind n’est pas installé ou est masqué

Niveau : 🟠 Référence CIS : CIS Ubuntu 24.04 2.1.8 Profil : Niveau 1 (L1) — Serveur MITRE ATT&CK : T1210 (Exploitation of Remote Services) NIST SP 800-53 : CM-7 (Least Functionality) ANSSI : R17 — Réduire la surface réseau

Description : rpcbind convertit les numéros de programme RPC en adresses réseau. Il est nécessaire pour NFS et d’autres services RPC. En l’absence de services RPC, rpcbind doit être désactivé car il peut fournir des informations sur les services actifs à un attaquant.

Vérification :

dpkg -l | grep rpcbind
systemctl is-enabled rpcbind 2>/dev/null
systemctl is-enabled rpcbind.socket 2>/dev/null
ss -tlnp | grep ':111'
  • Fichier / Composant : rpcbind
  • Valeur attendue : Non installé ou masqué si NFS n'est pas utilisé

Remédiation :

sudo systemctl stop rpcbind rpcbind.socket
sudo systemctl disable rpcbind rpcbind.socket
sudo systemctl mask rpcbind rpcbind.socket
sudo apt purge -y rpcbind 2>/dev/null

Valeur par défaut : Peut être installé comme dépendance

Résultat : ☐ ✅ Conforme ☐ ❌ Non conforme ☐ ⚠️ Partiel ☐ N/A Commentaire de l’auditeur : _______________________________________________

2.1.9 — Vérifier que le serveur DNS (bind9) n’est pas installé (sauf si requis)

Niveau : 🟠 Référence CIS : CIS Ubuntu 24.04 2.1.9 Profil : Niveau 1 (L1) — Serveur MITRE ATT&CK : T1584.002 (Compromise Infrastructure: DNS Server) NIST SP 800-53 : CM-7 (Least Functionality) ANSSI : R17 — Réduire la surface réseau

Description : BIND9 est le serveur DNS le plus utilisé. Un serveur DNS mal configuré peut être exploité pour des attaques d’amplification DNS, d’empoisonnement de cache ou de fuite d’informations de zone. Ce service ne doit être installé que sur les serveurs DNS dédiés.

Vérification :

dpkg -l | grep bind9
systemctl is-enabled named 2>/dev/null
systemctl is-enabled bind9 2>/dev/null
ss -tulnp | grep ':53'
  • Fichier / Composant : bind9
  • Valeur attendue : Non installé sauf si serveur DNS dédié

Remédiation :

sudo systemctl stop bind9 2>/dev/null
sudo systemctl disable bind9 2>/dev/null
sudo apt purge -y bind9
sudo apt autoremove -y

Valeur par défaut : Non installé par défaut

Résultat : ☐ ✅ Conforme ☐ ❌ Non conforme ☐ ⚠️ Partiel ☐ N/A Commentaire de l’auditeur : _______________________________________________

2.1.10 — Vérifier que le serveur FTP (vsftpd) n’est pas installé

Niveau : 🔴 Référence CIS : CIS Ubuntu 24.04 2.1.10 Profil : Niveau 1 (L1) — Serveur MITRE ATT&CK : T1071.002 (Application Layer Protocol: File Transfer Protocols) NIST SP 800-53 : CM-7 (Least Functionality) ANSSI : R17 — Réduire la surface réseau

Description : FTP (File Transfer Protocol) transmet les identifiants et les données en clair sur le réseau. Ce protocole est intrinsèquement insécurisé et doit être remplacé par SFTP (SSH File Transfer Protocol) ou SCP. Aucun serveur FTP ne doit être installé sur un serveur Ubuntu sécurisé.

Vérification :

dpkg -l | grep -E 'vsftpd|proftpd|pure-ftpd'
systemctl is-enabled vsftpd 2>/dev/null
ss -tlnp | grep ':21'
  • Fichier / Composant : vsftpd, proftpd, pure-ftpd
  • Valeur attendue : Aucun serveur FTP ne doit être installé

Remédiation :

sudo systemctl stop vsftpd 2>/dev/null
sudo systemctl disable vsftpd 2>/dev/null
sudo apt purge -y vsftpd proftpd pure-ftpd 2>/dev/null
sudo apt autoremove -y

Valeur par défaut : Non installé par défaut

Résultat : ☐ ✅ Conforme ☐ ❌ Non conforme ☐ ⚠️ Partiel ☐ N/A Commentaire de l’auditeur : _______________________________________________

2.1.11 — Vérifier que le serveur HTTP (Apache/Nginx) n’est pas installé (sauf si requis)

Niveau : 🟠 Référence CIS : CIS Ubuntu 24.04 2.1.11 Profil : Niveau 1 (L1) — Serveur MITRE ATT&CK : T1190 (Exploit Public-Facing Application) NIST SP 800-53 : CM-7 (Least Functionality) ANSSI : R17 — Réduire la surface réseau

Description : Les serveurs web (Apache2, Nginx) sont des cibles fréquentes d’attaques. Un serveur web ne doit être installé que si le rôle du serveur l’exige. Si un serveur web est nécessaire, il doit être durci conformément aux recommandations de la section 10 de cette checklist.

Vérification :

dpkg -l | grep -E 'apache2|nginx'
systemctl is-enabled apache2 2>/dev/null
systemctl is-enabled nginx 2>/dev/null
ss -tlnp | grep -E ':80|:443'
  • Fichier / Composant : apache2, nginx
  • Valeur attendue : Non installé sauf si serveur web dédié

Remédiation :

sudo systemctl stop apache2 nginx 2>/dev/null
sudo systemctl disable apache2 nginx 2>/dev/null
sudo apt purge -y apache2 nginx 2>/dev/null
sudo apt autoremove -y

Valeur par défaut : Non installé par défaut en mode serveur

Résultat : ☐ ✅ Conforme ☐ ❌ Non conforme ☐ ⚠️ Partiel ☐ N/A Commentaire de l’auditeur : _______________________________________________

2.1.12 — Vérifier que le serveur Samba n’est pas installé (sauf si requis)

Niveau : 🟠 Référence CIS : CIS Ubuntu 24.04 2.1.12 Profil : Niveau 1 (L1) — Serveur MITRE ATT&CK : T1021.002 (Remote Services: SMB/Windows Admin Shares) NIST SP 800-53 : CM-7 (Least Functionality) ANSSI : R17 — Réduire la surface réseau

Description : Samba fournit le partage de fichiers et d’imprimantes compatibles Windows via le protocole SMB/CIFS. Le protocole SMB a un historique de vulnérabilités critiques (EternalBlue, WannaCry). Samba ne doit être installé que si l’interopérabilité avec des clients Windows est strictement nécessaire.

Vérification :

dpkg -l | grep -E 'samba\b'
systemctl is-enabled smbd 2>/dev/null
systemctl is-enabled nmbd 2>/dev/null
ss -tlnp | grep -E ':139|:445'
  • Fichier / Composant : samba
  • Valeur attendue : Non installé sauf si partage SMB nécessaire

Remédiation :

sudo systemctl stop smbd nmbd 2>/dev/null
sudo systemctl disable smbd nmbd 2>/dev/null
sudo apt purge -y samba samba-common
sudo apt autoremove -y

Valeur par défaut : Non installé par défaut

Résultat : ☐ ✅ Conforme ☐ ❌ Non conforme ☐ ⚠️ Partiel ☐ N/A Commentaire de l’auditeur : _______________________________________________

2.1.13 — Vérifier que le proxy Squid n’est pas installé (sauf si requis)

Niveau : 🟡 Référence CIS : CIS Ubuntu 24.04 2.1.13 Profil : Niveau 1 (L1) — Serveur MITRE ATT&CK : T1090 (Proxy) NIST SP 800-53 : CM-7 (Least Functionality) ANSSI : R17 — Réduire la surface réseau

Description : Squid est un serveur proxy cache web. Un proxy mal configuré peut être utilisé comme relais pour des attaques ou pour contourner les contrôles de sécurité réseau. Ce service ne doit être installé que sur les serveurs proxy dédiés et correctement configuré.

Vérification :

dpkg -l | grep squid
systemctl is-enabled squid 2>/dev/null
ss -tlnp | grep ':3128'
  • Fichier / Composant : squid
  • Valeur attendue : Non installé sauf si serveur proxy dédié

Remédiation :

sudo systemctl stop squid 2>/dev/null
sudo systemctl disable squid 2>/dev/null
sudo apt purge -y squid
sudo apt autoremove -y

Valeur par défaut : Non installé par défaut

Résultat : ☐ ✅ Conforme ☐ ❌ Non conforme ☐ ⚠️ Partiel ☐ N/A Commentaire de l’auditeur : _______________________________________________

2.1.14 — Vérifier que le serveur SNMP n’est pas installé (sauf si requis)

Niveau : 🟠 Référence CIS : CIS Ubuntu 24.04 2.1.14 Profil : Niveau 1 (L1) — Serveur MITRE ATT&CK : T1602.001 (Data from Configuration Repository: SNMP) NIST SP 800-53 : CM-7 (Least Functionality) ANSSI : R17 — Réduire la surface réseau

Description : SNMP (Simple Network Management Protocol) est utilisé pour la supervision réseau. Les versions SNMPv1 et SNMPv2c transmettent les community strings en clair. Si SNMP est nécessaire, seul SNMPv3 avec authentification et chiffrement doit être utilisé.

Vérification :

dpkg -l | grep snmpd
systemctl is-enabled snmpd 2>/dev/null
ss -ulnp | grep ':161'
  • Fichier / Composant : snmpd
  • Valeur attendue : Non installé ou uniquement SNMPv3 configuré

Remédiation :

sudo systemctl stop snmpd 2>/dev/null
sudo systemctl disable snmpd 2>/dev/null
sudo apt purge -y snmpd
sudo apt autoremove -y
# Si SNMPv3 requis, configurer avec authentification et chiffrement

Valeur par défaut : Non installé par défaut

Résultat : ☐ ✅ Conforme ☐ ❌ Non conforme ☐ ⚠️ Partiel ☐ N/A Commentaire de l’auditeur : _______________________________________________

2.1.15 — Vérifier que le serveur de messagerie est en mode local uniquement

Niveau : �� Référence CIS : CIS Ubuntu 24.04 2.1.15 Profil : Niveau 1 (L1) — Serveur MITRE ATT&CK : T1071.003 (Application Layer Protocol: Mail Protocols) NIST SP 800-53 : CM-7 (Least Functionality) ANSSI : R17 — Réduire la surface réseau

Description : Le serveur de messagerie (MTA — Mail Transfer Agent) tel que Postfix ne doit écouter que sur l’interface locale (127.0.0.1) si le serveur n’est pas un relais de messagerie. Un MTA écoutant sur toutes les interfaces peut être exploité comme relais de spam ou pour des attaques par injection de courrier.

Vérification :

ss -tlnp | grep ':25'
postconf inet_interfaces 2>/dev/null
cat /etc/postfix/main.cf 2>/dev/null | grep inet_interfaces
  • Fichier / Composant : /etc/postfix/main.cf
  • Valeur attendue : inet_interfaces = loopback-only ou inet_interfaces = 127.0.0.1

Remédiation :

# Configurer Postfix en mode local uniquement
sudo postconf -e 'inet_interfaces = loopback-only'
sudo systemctl restart postfix

# Ou supprimer Postfix si non nécessaire
# sudo apt purge -y postfix

Valeur par défaut : Postfix peut être installé par défaut, inet_interfaces = all

Résultat : ☐ ✅ Conforme ☐ ❌ Non conforme ☐ ⚠️ Partiel ☐ N/A Commentaire de l’auditeur : _______________________________________________

2.1.16 — Vérifier que rsync n’est pas installé ou est correctement configuré

Niveau : 🟡 Référence CIS : CIS Ubuntu 24.04 2.1.16 Profil : Niveau 1 (L1) — Serveur MITRE ATT&CK : T1105 (Ingress Tool Transfer) NIST SP 800-53 : CM-7 (Least Functionality) ANSSI : R17 — Réduire la surface réseau

Description : rsync est un outil de synchronisation de fichiers qui peut fonctionner en mode démon. Le démon rsync écoute sur le port 873 et peut exposer des fichiers sensibles si mal configuré. Le service rsync doit être désactivé s’il n’est pas nécessaire.

Vérification :

dpkg -l | grep rsync
systemctl is-enabled rsync 2>/dev/null
ss -tlnp | grep ':873'
  • Fichier / Composant : rsync
  • Valeur attendue : Le service rsync (démon) ne doit pas être actif

Remédiation :

sudo systemctl stop rsync 2>/dev/null
sudo systemctl disable rsync 2>/dev/null
sudo systemctl mask rsync

Valeur par défaut : rsync est installé mais le démon n’est pas activé par défaut

Résultat : ☐ ✅ Conforme ☐ ❌ Non conforme ☐ ⚠️ Partiel ☐ N/A Commentaire de l’auditeur : _______________________________________________

2.1.17 — Vérifier que le service NIS (ypserv) n’est pas installé

Niveau : 🔴 Référence CIS : CIS Ubuntu 24.04 2.1.17 Profil : Niveau 1 (L1) — Serveur MITRE ATT&CK : T1557 (Adversary-in-the-Middle) NIST SP 800-53 : CM-7 (Least Functionality) ANSSI : R17 — Réduire la surface réseau

Description : NIS (Network Information Service, anciennement Yellow Pages) est un protocole d’authentification réseau obsolète et intrinsèquement insécurisé. NIS transmet les informations d’authentification en clair et est vulnérable à de nombreuses attaques. Il doit être remplacé par LDAP/Kerberos.

Vérification :

dpkg -l | grep -E 'nis\b|ypserv'
systemctl is-enabled ypserv 2>/dev/null
  • Fichier / Composant : nis, ypserv
  • Valeur attendue : Non installé

Remédiation :

sudo apt purge -y nis ypserv 2>/dev/null
sudo apt autoremove -y

Valeur par défaut : Non installé par défaut

Résultat : ☐ ✅ Conforme ☐ ❌ Non conforme ☐ ⚠️ Partiel ☐ N/A Commentaire de l’auditeur : _______________________________________________

2.1.18 — Vérifier que le client rsh n’est pas installé

Niveau : 🔴 Référence CIS : CIS Ubuntu 24.04 2.1.18 Profil : Niveau 1 (L1) — Serveur MITRE ATT&CK : T1021.004 (Remote Services: SSH) NIST SP 800-53 : CM-7 (Least Functionality) ANSSI : R17 — Réduire la surface réseau

Description : Les clients rsh (remote shell), rlogin et rcp sont des protocoles d’accès distant obsolètes qui transmettent tout le trafic (y compris les mots de passe) en clair. Ces outils doivent être remplacés par SSH, SCP et SFTP.

Vérification :

dpkg -l | grep -E 'rsh-client|rsh-redone-client'
which rsh rlogin rcp 2>/dev/null
  • Fichier / Composant : rsh-client
  • Valeur attendue : Non installé

Remédiation :

sudo apt purge -y rsh-client rsh-redone-client 2>/dev/null
sudo apt autoremove -y

Valeur par défaut : Non installé par défaut

Résultat : ☐ ✅ Conforme ☐ ❌ Non conforme ☐ ⚠️ Partiel ☐ N/A Commentaire de l’auditeur : _______________________________________________

2.1.19 — Vérifier que le client talk n’est pas installé

Niveau : 🟡 Référence CIS : CIS Ubuntu 24.04 2.1.19 Profil : Niveau 1 (L1) — Serveur MITRE ATT&CK : T1071 (Application Layer Protocol) NIST SP 800-53 : CM-7 (Least Functionality) ANSSI : R17 — Réduire la surface réseau

Description : talk est un protocole de communication en temps réel obsolète. Le client et le serveur talk transmettent les données en clair et sont rarement utilisés sur les serveurs modernes. Ils doivent être supprimés pour réduire la surface d’attaque.

Vérification :

dpkg -l | grep talk
which talk 2>/dev/null
  • Fichier / Composant : talk, talkd
  • Valeur attendue : Non installé

Remédiation :

sudo apt purge -y talk talkd 2>/dev/null
sudo apt autoremove -y

Valeur par défaut : Non installé par défaut

Résultat : ☐ ✅ Conforme ☐ ❌ Non conforme ☐ ⚠️ Partiel ☐ N/A Commentaire de l’auditeur : _______________________________________________

2.1.20 — Vérifier que le client telnet n’est pas installé

Niveau : 🔴 Référence CIS : CIS Ubuntu 24.04 2.1.20 Profil : Niveau 1 (L1) — Serveur MITRE ATT&CK : T1021.004 (Remote Services: SSH) NIST SP 800-53 : CM-7 (Least Functionality) ANSSI : R17 — Réduire la surface réseau

Description : Le client telnet transmet toutes les données, y compris les identifiants, en texte clair sur le réseau. Il doit être remplacé par SSH pour toute connexion distante. La présence du client telnet sur un serveur peut indiquer des pratiques d’administration insécurisées.

Vérification :

dpkg -l | grep telnet
which telnet 2>/dev/null
  • Fichier / Composant : telnet
  • Valeur attendue : Non installé

Remédiation :

sudo apt purge -y telnet
sudo apt autoremove -y
# Utiliser SSH à la place

Valeur par défaut : Peut être installé par défaut

Résultat : ☐ ✅ Conforme ☐ ❌ Non conforme ☐ ⚠️ Partiel ☐ N/A Commentaire de l’auditeur : _______________________________________________

2.1.21 — Vérifier que le client LDAP n’est pas installé (sauf si requis)

Niveau : 🟡 Référence CIS : CIS Ubuntu 24.04 2.1.21 Profil : Niveau 1 (L1) — Serveur MITRE ATT&CK : T1018 (Remote System Discovery) NIST SP 800-53 : CM-7 (Least Functionality) ANSSI : R17 — Réduire la surface réseau

Description : Le client LDAP (ldap-utils) peut être utilisé pour interroger des annuaires LDAP. Sur un serveur qui n’a pas besoin d’intégration LDAP, le client doit être supprimé pour empêcher les attaques d’énumération et réduire la surface d’attaque.

Vérification :

dpkg -l | grep ldap-utils
  • Fichier / Composant : ldap-utils
  • Valeur attendue : Non installé sauf si intégration LDAP requise

Remédiation :

sudo apt purge -y ldap-utils 2>/dev/null
sudo apt autoremove -y

Valeur par défaut : Non installé par défaut

Résultat : ☐ ✅ Conforme ☐ ❌ Non conforme ☐ ⚠️ Partiel ☐ N/A Commentaire de l’auditeur : _______________________________________________

2.1.22 — Vérifier que la synchronisation horaire (chrony ou systemd-timesyncd) est configurée

Niveau : 🔴 Référence CIS : CIS Ubuntu 24.04 2.2.1 Profil : Niveau 1 (L1) — Serveur MITRE ATT&CK : T1070.006 (Indicator Removal: Timestomp) NIST SP 800-53 : CM-7 (Least Functionality) ANSSI : R17 — Réduire la surface réseau

Description : La synchronisation horaire est critique pour la corrélation des journaux de sécurité, la validité des certificats TLS et l’authentification Kerberos. Ubuntu 24.04 utilise systemd-timesyncd par défaut, mais chrony est recommandé pour les serveurs car il offre une meilleure précision et plus d’options de configuration.

Vérification :

systemctl is-enabled systemd-timesyncd chrony 2>/dev/null
timedatectl status
chronyc tracking 2>/dev/null || timedatectl show-timesync 2>/dev/null
  • Fichier / Composant : /etc/chrony/chrony.conf ou /etc/systemd/timesyncd.conf
  • Valeur attendue : Service actif et synchronisé avec des serveurs NTP fiables

Remédiation :

# Option recommandée : chrony
sudo apt install -y chrony
sudo systemctl enable chrony
sudo systemctl start chrony

# Configurer les serveurs NTP dans /etc/chrony/chrony.conf :
# pool ntp.ubuntu.com iburst maxsources 4
# pool 0.ubuntu.pool.ntp.org iburst maxsources 1
# pool 1.ubuntu.pool.ntp.org iburst maxsources 1

sudo systemctl restart chrony
chronyc tracking

Valeur par défaut : systemd-timesyncd est activé par défaut

Résultat : ☐ ✅ Conforme ☐ ❌ Non conforme ☐ ⚠️ Partiel ☐ N/A Commentaire de l’auditeur : _______________________________________________

2.1.23 — Vérifier que chrony/NTP est configuré avec des sources autorisées uniquement

Niveau : 🟠 Référence CIS : CIS Ubuntu 24.04 2.2.2 Profil : Niveau 1 (L1) — Serveur MITRE ATT&CK : T1557 (Adversary-in-the-Middle) NIST SP 800-53 : CM-7 (Least Functionality) ANSSI : R17 — Réduire la surface réseau

Description : Les sources NTP doivent être des serveurs de confiance pour empêcher les attaques de type NTP amplification ou de manipulation horaire. L’utilisation de pools NTP publics non vérifiés peut exposer le système à des attaques temporelles qui affectent la validité des certificats et la corrélation des journaux.

Vérification :

grep -E '^(server|pool)' /etc/chrony/chrony.conf 2>/dev/null
grep -E '^NTP=' /etc/systemd/timesyncd.conf 2>/dev/null
chronyc sources 2>/dev/null
  • Fichier / Composant : /etc/chrony/chrony.conf
  • Valeur attendue : Serveurs NTP de confiance configurés (ex: ntp.ubuntu.com, pool.ntp.org)

Remédiation :

# Éditer /etc/chrony/chrony.conf
sudo cat << EOF > /etc/chrony/chrony.conf
pool ntp.ubuntu.com iburst maxsources 4
pool 0.ubuntu.pool.ntp.org iburst maxsources 2
keyfile /etc/chrony/chrony.keys
driftfile /var/lib/chrony/chrony.drift
logdir /var/log/chrony
maxupdateskew 100.0
rtcsync
makestep 1 3
EOF
sudo systemctl restart chrony

Valeur par défaut : Pools NTP Ubuntu configurés par défaut

Résultat : ☐ ✅ Conforme ☐ ❌ Non conforme ☐ ⚠️ Partiel ☐ N/A Commentaire de l’auditeur : _______________________________________________

2.1.24 — Vérifier que chrony s’exécute en tant qu’utilisateur non privilégié

Niveau : 🟡 Référence CIS : CIS Ubuntu 24.04 2.2.3 Profil : Niveau 1 (L1) — Serveur MITRE ATT&CK : T1068 (Exploitation for Privilege Escalation) NIST SP 800-53 : CM-7 (Least Functionality) ANSSI : R17 — Réduire la surface réseau

Description : Le démon chrony doit s’exécuter sous un compte utilisateur non privilégié dédié (_chrony) pour limiter l’impact d’une éventuelle compromission du service. Cela applique le principe du moindre privilège à la synchronisation horaire.

Vérification :

ps -ef | grep chronyd | grep -v grep
grep '^user' /etc/chrony/chrony.conf 2>/dev/null
  • Fichier / Composant : /etc/chrony/chrony.conf
  • Valeur attendue : chronyd s'exécute en tant que _chrony

Remédiation :

# Vérifier que chrony s'exécute en tant que _chrony
# Le fichier de service systemd devrait contenir User=_chrony
systemctl show chronyd | grep -i user

Valeur par défaut : chrony s’exécute en tant que _chrony par défaut

Résultat : ☐ ✅ Conforme ☐ ❌ Non conforme ☐ ⚠️ Partiel ☐ N/A Commentaire de l’auditeur : _______________________________________________

2.1.25 — Vérifier que le client NFS n’est pas installé (sauf si requis)

Niveau : 🟡 Référence CIS : CIS Ubuntu 24.04 2.3.5 Profil : Niveau 1 (L1) — Serveur MITRE ATT&CK : T1021.002 (Remote Services: SMB/Windows Admin Shares) NIST SP 800-53 : CM-7 (Least Functionality) ANSSI : R17 — Réduire la surface réseau

Description : Le client NFS (nfs-common) permet de monter des partages NFS distants. Si le serveur n’a pas besoin d’accéder à des partages NFS, le client doit être supprimé pour réduire la surface d’attaque et empêcher le montage de partages malveillants.

Vérification :

dpkg -l | grep nfs-common
  • Fichier / Composant : nfs-common
  • Valeur attendue : Non installé sauf si montage NFS requis

Remédiation :

sudo apt purge -y nfs-common
sudo apt autoremove -y

Valeur par défaut : Peut être installé comme dépendance

Résultat : ☐ ✅ Conforme ☐ ❌ Non conforme ☐ ⚠️ Partiel ☐ N/A Commentaire de l’auditeur : _______________________________________________

2.1.26 — Vérifier que le client Samba (smbclient/cifs-utils) n’est pas installé (sauf si requis)

Niveau : 🟡 Référence CIS : CIS Ubuntu 24.04 2.3.6 Profil : Niveau 1 (L1) — Serveur MITRE ATT&CK : T1021.002 (Remote Services: SMB/Windows Admin Shares) NIST SP 800-53 : CM-7 (Least Functionality) ANSSI : R17 — Réduire la surface réseau

Description : Les utilitaires client Samba (smbclient, cifs-utils) permettent d’accéder aux partages SMB/CIFS. Sur un serveur qui n’a pas besoin d’accéder aux partages Windows, ces paquets doivent être supprimés pour réduire la surface d’attaque.

Vérification :

dpkg -l | grep -E 'smbclient|cifs-utils'
  • Fichier / Composant : smbclient, cifs-utils
  • Valeur attendue : Non installé sauf si accès SMB requis

Remédiation :

sudo apt purge -y smbclient cifs-utils 2>/dev/null
sudo apt autoremove -y

Valeur par défaut : Non installé par défaut

Résultat : ☐ ✅ Conforme ☐ ❌ Non conforme ☐ ⚠️ Partiel ☐ N/A Commentaire de l’auditeur : _______________________________________________

2.1.27 — Vérifier que le service dnsmasq n’est pas installé (sauf si requis)

Niveau : 🟠 Référence CIS : CIS Ubuntu 24.04 2.1.20 Profil : Niveau 1 (L1) — Serveur MITRE ATT&CK : T1584.002 (Compromise Infrastructure: DNS Server) NIST SP 800-53 : CM-7 (Least Functionality) ANSSI : R17 — Réduire la surface réseau

Description : dnsmasq est un serveur DNS/DHCP léger souvent utilisé pour le cache DNS et le service DHCP sur les petits réseaux. Sur un serveur de production, dnsmasq peut entrer en conflit avec systemd-resolved et présente des risques de sécurité si mal configuré.

Vérification :

dpkg -l | grep dnsmasq
systemctl is-enabled dnsmasq 2>/dev/null
  • Fichier / Composant : dnsmasq
  • Valeur attendue : Non installé sauf si explicitement requis

Remédiation :

sudo systemctl stop dnsmasq 2>/dev/null
sudo systemctl disable dnsmasq 2>/dev/null
sudo apt purge -y dnsmasq dnsmasq-base 2>/dev/null
sudo apt autoremove -y

Valeur par défaut : Non installé par défaut sur le serveur

Résultat : ☐ ✅ Conforme ☐ ❌ Non conforme ☐ ⚠️ Partiel ☐ N/A Commentaire de l’auditeur : _______________________________________________

2.1.28 — Vérifier que le service de base de données (MySQL/PostgreSQL/MariaDB) est sécurisé ou absent

Niveau : 🟠 Référence CIS : DISA STIG Ubuntu — SV-260584r999321 Profil : Niveau 1 (L1) — Serveur MITRE ATT&CK : T1190 (Exploit Public-Facing Application) NIST SP 800-53 : CM-7 (Least Functionality) ANSSI : R17 — Réduire la surface réseau

Description : Les serveurs de base de données sont des cibles de haute valeur pour les attaquants. Si un SGBD est installé, il doit être correctement durci (suppression des bases de test, désactivation des accès distants non nécessaires, utilisation de mots de passe forts). S’il n’est pas nécessaire, il doit être supprimé.

Vérification :

dpkg -l | grep -E 'mysql-server|mariadb-server|postgresql'
systemctl is-enabled mysql 2>/dev/null
systemctl is-enabled mariadb 2>/dev/null
systemctl is-enabled postgresql 2>/dev/null
ss -tlnp | grep -E ':3306|:5432'
  • Fichier / Composant : mysql-server, mariadb-server, postgresql
  • Valeur attendue : Non installé ou correctement durci

Remédiation :

# Si MySQL est installé et requis :
sudo mysql_secure_installation

# Si non requis :
sudo apt purge -y mysql-server mariadb-server postgresql 2>/dev/null
sudo apt autoremove -y

Valeur par défaut : Non installé par défaut

Résultat : ☐ ✅ Conforme ☐ ❌ Non conforme ☐ ⚠️ Partiel ☐ N/A Commentaire de l’auditeur : _______________________________________________

2.1.29 — Vérifier qu’aucun service en écoute non autorisé n’est présent

Niveau : 🔴 Référence CIS : ANSSI R17 — Réduire la surface d’attaque réseau Profil : Niveau 1 (L1) — Serveur MITRE ATT&CK : T1046 (Network Service Discovery) NIST SP 800-53 : CM-7 (Least Functionality) ANSSI : R17 — Réduire la surface réseau

Description : Chaque port en écoute sur le serveur représente un point d’entrée potentiel pour un attaquant. Un audit régulier des services en écoute permet de détecter les services non autorisés ou les portes dérobées. Seuls les services strictement nécessaires doivent écouter sur des interfaces réseau.

Vérification :

ss -tlnp
ss -ulnp
# Liste complète des ports en écoute
ss -tulnp | grep LISTEN
# Comparer avec la liste des services autorisés
  • Fichier / Composant : Tous les ports en écoute
  • Valeur attendue : Seuls les ports autorisés doivent être en écoute

Remédiation :

# Identifier et arrêter les services non autorisés
# Pour chaque service non autorisé :
sudo systemctl stop <service_name>
sudo systemctl disable <service_name>
sudo systemctl mask <service_name>

# Vérifier après correction
ss -tulnp | grep LISTEN

Valeur par défaut : Variable selon les paquets installés

Résultat : ☐ ✅ Conforme ☐ ❌ Non conforme ☐ ⚠️ Partiel ☐ N/A Commentaire de l’auditeur : _______________________________________________

2.1.30 — Vérifier que le service snapd est désactivé (si les snaps ne sont pas utilisés)

Niveau : 🟡 Référence CIS : ANSSI R1 — Minimiser les services installés Profil : Niveau 1 (L1) — Serveur MITRE ATT&CK : T1072 (Software Deployment Tools) NIST SP 800-53 : CM-7 (Least Functionality) ANSSI : R17 — Réduire la surface réseau

Description : snapd est le service qui gère les paquets Snap sur Ubuntu. Si les paquets Snap ne sont pas utilisés, snapd doit être désactivé pour réduire la surface d’attaque et la consommation de ressources. Note : la désactivation de snapd empêchera l’installation de paquets Snap.

Vérification :

systemctl is-enabled snapd 2>/dev/null
systemctl is-active snapd 2>/dev/null
snap list 2>/dev/null
  • Fichier / Composant : snapd
  • Valeur attendue : Désactivé si les snaps ne sont pas utilisés

Remédiation :

# Supprimer tous les snaps installés
for snap in $(snap list 2>/dev/null | awk 'NR>1{print $1}'); do
  sudo snap remove --purge "$snap"
done

# Désactiver et supprimer snapd
sudo systemctl stop snapd snapd.socket
sudo systemctl disable snapd snapd.socket
sudo systemctl mask snapd
sudo apt purge -y snapd
sudo rm -rf /snap /var/snap /var/lib/snapd /var/cache/snapd

Valeur par défaut : snapd est installé et activé par défaut sur Ubuntu 24.04

Résultat : ☐ ✅ Conforme ☐ ❌ Non conforme ☐ ⚠️ Partiel ☐ N/A Commentaire de l’auditeur : _______________________________________________

SECTION 3 — CONFIGURATION RÉSEAU ET PARE-FEU

Objectif : Configurer les paramètres réseau du noyau pour désactiver les fonctionnalités dangereuses (IP forwarding, source routing, ICMP redirects), désactiver les protocoles réseau inutiles et configurer un pare-feu robuste.

Références : CIS Ubuntu 24.04 LTS Benchmark v1.0.0 — Sections 3.1 à 3.5 | ANSSI-BP-028 R12-R16 | NIST SP 800-53 SC-7, SC-5 | DISA STIG Ubuntu

3.1.1 — Désactiver le transfert de paquets IPv4 (IP forwarding)

Niveau : 🔴 Référence CIS : CIS Ubuntu 24.04 3.1.1 Profil : Niveau 1 (L1) — Serveur MITRE ATT&CK : T1557 (Adversary-in-the-Middle) NIST SP 800-53 : SC-7 (Boundary Protection) ANSSI : R12 — Durcissement de la pile réseau

Description : Le transfert de paquets IP (IP forwarding) permet au serveur de router les paquets entre interfaces réseau. Sauf si le serveur est configuré comme routeur ou passerelle, cette fonctionnalité doit être désactivée pour empêcher le détournement de trafic réseau et les attaques man-in-the-middle.

Vérification :

sysctl net.ipv4.ip_forward
grep -r 'net.ipv4.ip_forward' /etc/sysctl.conf /etc/sysctl.d/ 2>/dev/null
  • Fichier / Composant : /etc/sysctl.d/60-network-hardening.conf
  • Valeur attendue : net.ipv4.ip_forward = 0

Remédiation :

echo 'net.ipv4.ip_forward = 0' | sudo tee /etc/sysctl.d/60-network-hardening.conf
sudo sysctl -w net.ipv4.ip_forward=0
sudo sysctl -w net.ipv4.route.flush=1

Valeur par défaut : net.ipv4.ip_forward = 0 (par défaut)

Résultat : ☐ ✅ Conforme ☐ ❌ Non conforme ☐ ⚠️ Partiel ☐ N/A Commentaire de l’auditeur : _______________________________________________

3.1.2 — Désactiver le transfert de paquets IPv6

Niveau : 🔴 Référence CIS : CIS Ubuntu 24.04 3.1.2 Profil : Niveau 1 (L1) — Serveur MITRE ATT&CK : T1557 (Adversary-in-the-Middle) NIST SP 800-53 : SC-7 (Boundary Protection) ANSSI : R12 — Durcissement de la pile réseau

Description : Comme pour IPv4, le transfert IPv6 doit être désactivé sauf si le serveur est un routeur IPv6. Le transfert IPv6 actif peut être exploité pour des attaques de routage malveillant dans un environnement dual-stack.

Vérification :

sysctl net.ipv6.conf.all.forwarding
grep -r 'net.ipv6.conf.all.forwarding' /etc/sysctl.conf /etc/sysctl.d/ 2>/dev/null
  • Fichier / Composant : /etc/sysctl.d/60-network-hardening.conf
  • Valeur attendue : net.ipv6.conf.all.forwarding = 0

Remédiation :

echo 'net.ipv6.conf.all.forwarding = 0' | sudo tee -a /etc/sysctl.d/60-network-hardening.conf
sudo sysctl -w net.ipv6.conf.all.forwarding=0
sudo sysctl -w net.ipv6.route.flush=1

Valeur par défaut : net.ipv6.conf.all.forwarding = 0 (par défaut)

Résultat : ☐ ✅ Conforme ☐ ❌ Non conforme ☐ ⚠️ Partiel ☐ N/A Commentaire de l’auditeur : _______________________________________________

3.1.3 — Vérifier que les redirections ICMP ne sont pas acceptées (IPv4)

Niveau : 🔴 Référence CIS : CIS Ubuntu 24.04 3.2.2 Profil : Niveau 1 (L1) — Serveur MITRE ATT&CK : T1557.001 (LLMNR/NBT-NS Poisoning and SMB Relay) NIST SP 800-53 : SC-7 (Boundary Protection) ANSSI : R12 — Durcissement de la pile réseau

Description : Les redirections ICMP permettent à un routeur d’informer un hôte d’une meilleure route. Un attaquant peut envoyer de fausses redirections ICMP pour détourner le trafic réseau. La désactivation des redirections ICMP empêche ces attaques de routage malveillant.

Vérification :

sysctl net.ipv4.conf.all.accept_redirects
sysctl net.ipv4.conf.default.accept_redirects
grep -r 'accept_redirects' /etc/sysctl.conf /etc/sysctl.d/ 2>/dev/null
  • Fichier / Composant : /etc/sysctl.d/60-network-hardening.conf
  • Valeur attendue : net.ipv4.conf.all.accept_redirects = 0, net.ipv4.conf.default.accept_redirects = 0

Remédiation :

cat << EOF | sudo tee -a /etc/sysctl.d/60-network-hardening.conf
net.ipv4.conf.all.accept_redirects = 0
net.ipv4.conf.default.accept_redirects = 0
EOF
sudo sysctl -w net.ipv4.conf.all.accept_redirects=0
sudo sysctl -w net.ipv4.conf.default.accept_redirects=0

Valeur par défaut : Activé par défaut (valeur 1)

Résultat : ☐ ✅ Conforme ☐ ❌ Non conforme ☐ ⚠️ Partiel ☐ N/A Commentaire de l’auditeur : _______________________________________________

3.1.4 — Vérifier que les redirections ICMP ne sont pas envoyées

Niveau : 🔴 Référence CIS : CIS Ubuntu 24.04 3.2.1 Profil : Niveau 1 (L1) — Serveur MITRE ATT&CK : T1557 (Adversary-in-the-Middle) NIST SP 800-53 : SC-7 (Boundary Protection) ANSSI : R12 — Durcissement de la pile réseau

Description : Un serveur ne doit pas envoyer de redirections ICMP car cela peut être exploité pour manipuler les tables de routage des hôtes du réseau. Seuls les routeurs légitimes devraient envoyer des redirections ICMP.

Vérification :

sysctl net.ipv4.conf.all.send_redirects
sysctl net.ipv4.conf.default.send_redirects
  • Fichier / Composant : /etc/sysctl.d/60-network-hardening.conf
  • Valeur attendue : net.ipv4.conf.all.send_redirects = 0, net.ipv4.conf.default.send_redirects = 0

Remédiation :

cat << EOF | sudo tee -a /etc/sysctl.d/60-network-hardening.conf
net.ipv4.conf.all.send_redirects = 0
net.ipv4.conf.default.send_redirects = 0
EOF
sudo sysctl -w net.ipv4.conf.all.send_redirects=0
sudo sysctl -w net.ipv4.conf.default.send_redirects=0

Valeur par défaut : Activé par défaut (valeur 1)

Résultat : ☐ ✅ Conforme ☐ ❌ Non conforme ☐ ⚠️ Partiel ☐ N/A Commentaire de l’auditeur : _______________________________________________

3.1.5 — Vérifier que le source routing est désactivé (IPv4)

Niveau : 🔴 Référence CIS : CIS Ubuntu 24.04 3.2.3 Profil : Niveau 1 (L1) — Serveur MITRE ATT&CK : T1557 (Adversary-in-the-Middle) NIST SP 800-53 : SC-7 (Boundary Protection) ANSSI : R12 — Durcissement de la pile réseau

Description : Le source routing permet à un paquet de spécifier sa propre route à travers le réseau, contournant les tables de routage normales. Un attaquant peut utiliser le source routing pour diriger le trafic à travers un hôte malveillant. Cette fonctionnalité doit être désactivée.

Vérification :

sysctl net.ipv4.conf.all.accept_source_route
sysctl net.ipv4.conf.default.accept_source_route
  • Fichier / Composant : /etc/sysctl.d/60-network-hardening.conf
  • Valeur attendue : net.ipv4.conf.all.accept_source_route = 0

Remédiation :

cat << EOF | sudo tee -a /etc/sysctl.d/60-network-hardening.conf
net.ipv4.conf.all.accept_source_route = 0
net.ipv4.conf.default.accept_source_route = 0
EOF
sudo sysctl -w net.ipv4.conf.all.accept_source_route=0
sudo sysctl -w net.ipv4.conf.default.accept_source_route=0

Valeur par défaut : Désactivé par défaut (valeur 0) sur Ubuntu 24.04

Résultat : ☐ ✅ Conforme ☐ ❌ Non conforme ☐ ⚠️ Partiel ☐ N/A Commentaire de l’auditeur : _______________________________________________

3.1.6 — Vérifier que le source routing est désactivé (IPv6)

Niveau : 🔴 Référence CIS : CIS Ubuntu 24.04 3.2.4 Profil : Niveau 1 (L1) — Serveur MITRE ATT&CK : T1557 (Adversary-in-the-Middle) NIST SP 800-53 : SC-7 (Boundary Protection) ANSSI : R12 — Durcissement de la pile réseau

Description : Comme pour IPv4, le source routing IPv6 permet aux paquets de spécifier leur propre route. Cette fonctionnalité doit être désactivée pour les mêmes raisons de sécurité que pour IPv4.

Vérification :

sysctl net.ipv6.conf.all.accept_source_route
sysctl net.ipv6.conf.default.accept_source_route
  • Fichier / Composant : /etc/sysctl.d/60-network-hardening.conf
  • Valeur attendue : net.ipv6.conf.all.accept_source_route = 0

Remédiation :

cat << EOF | sudo tee -a /etc/sysctl.d/60-network-hardening.conf
net.ipv6.conf.all.accept_source_route = 0
net.ipv6.conf.default.accept_source_route = 0
EOF
sudo sysctl -w net.ipv6.conf.all.accept_source_route=0
sudo sysctl -w net.ipv6.conf.default.accept_source_route=0

Valeur par défaut : Désactivé par défaut (valeur 0)

Résultat : ☐ ✅ Conforme ☐ ❌ Non conforme ☐ ⚠️ Partiel ☐ N/A Commentaire de l’auditeur : _______________________________________________

3.1.7 — Activer la validation de la source par chemin inverse (Reverse Path Filtering)

Niveau : �� Référence CIS : CIS Ubuntu 24.04 3.2.7 Profil : Niveau 1 (L1) — Serveur MITRE ATT&CK : T1557 (Adversary-in-the-Middle) NIST SP 800-53 : SC-7 (Boundary Protection) ANSSI : R12 — Durcissement de la pile réseau

Description : Le Reverse Path Filtering (rp_filter) vérifie que l’adresse source de chaque paquet entrant est accessible via l’interface sur laquelle il a été reçu. Cela empêche les attaques par usurpation d’adresse IP (IP spoofing). La valeur 1 (strict) est recommandée.

Vérification :

sysctl net.ipv4.conf.all.rp_filter
sysctl net.ipv4.conf.default.rp_filter
  • Fichier / Composant : /etc/sysctl.d/60-network-hardening.conf
  • Valeur attendue : net.ipv4.conf.all.rp_filter = 1, net.ipv4.conf.default.rp_filter = 1

Remédiation :

cat << EOF | sudo tee -a /etc/sysctl.d/60-network-hardening.conf
net.ipv4.conf.all.rp_filter = 1
net.ipv4.conf.default.rp_filter = 1
EOF
sudo sysctl -w net.ipv4.conf.all.rp_filter=1
sudo sysctl -w net.ipv4.conf.default.rp_filter=1

Valeur par défaut : rp_filter = 2 (loose) par défaut sur Ubuntu 24.04

Résultat : ☐ ✅ Conforme ☐ ❌ Non conforme ☐ ⚠️ Partiel ☐ N/A Commentaire de l’auditeur : _______________________________________________

3.1.8 — Activer la journalisation des paquets suspects (martians)

Niveau : 🟠 Référence CIS : CIS Ubuntu 24.04 3.2.5 Profil : Niveau 1 (L1) — Serveur MITRE ATT&CK : T1040 (Network Sniffing) NIST SP 800-53 : SC-7 (Boundary Protection) ANSSI : R12 — Durcissement de la pile réseau

Description : La journalisation des paquets martiens (paquets avec des adresses source impossibles) aide à détecter les tentatives d’usurpation d’adresse IP et les anomalies réseau. Ces journaux sont essentiels pour l’analyse forensique et la détection d’intrusion.

Vérification :

sysctl net.ipv4.conf.all.log_martians
sysctl net.ipv4.conf.default.log_martians
  • Fichier / Composant : /etc/sysctl.d/60-network-hardening.conf
  • Valeur attendue : net.ipv4.conf.all.log_martians = 1

Remédiation :

cat << EOF | sudo tee -a /etc/sysctl.d/60-network-hardening.conf
net.ipv4.conf.all.log_martians = 1
net.ipv4.conf.default.log_martians = 1
EOF
sudo sysctl -w net.ipv4.conf.all.log_martians=1
sudo sysctl -w net.ipv4.conf.default.log_martians=1

Valeur par défaut : Désactivé par défaut (valeur 0)

Résultat : ☐ ✅ Conforme ☐ ❌ Non conforme ☐ ⚠️ Partiel ☐ N/A Commentaire de l’auditeur : _______________________________________________

3.1.9 — Activer les SYN cookies TCP

Niveau : 🔴 Référence CIS : CIS Ubuntu 24.04 3.2.8 Profil : Niveau 1 (L1) — Serveur MITRE ATT&CK : T1498.001 (Network Denial of Service: Direct Network Flood) NIST SP 800-53 : SC-7 (Boundary Protection) ANSSI : R12 — Durcissement de la pile réseau

Description : Les SYN cookies permettent au noyau de gérer les connexions TCP semi-ouvertes sans allouer de ressources, protégeant contre les attaques SYN flood. Lorsque la file d’attente SYN est pleine, le serveur utilise des cookies cryptographiques au lieu de conserver l’état de chaque connexion en attente.

Vérification :

sysctl net.ipv4.tcp_syncookies
  • Fichier / Composant : /etc/sysctl.d/60-network-hardening.conf
  • Valeur attendue : net.ipv4.tcp_syncookies = 1

Remédiation :

echo 'net.ipv4.tcp_syncookies = 1' | sudo tee -a /etc/sysctl.d/60-network-hardening.conf
sudo sysctl -w net.ipv4.tcp_syncookies=1

Valeur par défaut : Activé par défaut (valeur 1) sur Ubuntu 24.04

Résultat : ☐ ✅ Conforme ☐ ❌ Non conforme ☐ ⚠️ Partiel ☐ N/A Commentaire de l’auditeur : _______________________________________________

3.1.10 — Désactiver les réponses ICMP Broadcast (Smurf protection)

Niveau : 🟠 Référence CIS : CIS Ubuntu 24.04 3.2.6 Profil : Niveau 1 (L1) — Serveur MITRE ATT&CK : T1498 (Network Denial of Service) NIST SP 800-53 : SC-7 (Boundary Protection) ANSSI : R12 — Durcissement de la pile réseau

Description : La réponse aux requêtes ICMP echo envoyées à l’adresse broadcast peut être exploitée dans les attaques Smurf, où un attaquant envoie des paquets ICMP avec une adresse source usurpée à l’adresse broadcast, provoquant un déni de service sur la victime.

Vérification :

sysctl net.ipv4.icmp_echo_ignore_broadcasts
  • Fichier / Composant : /etc/sysctl.d/60-network-hardening.conf
  • Valeur attendue : net.ipv4.icmp_echo_ignore_broadcasts = 1

Remédiation :

echo 'net.ipv4.icmp_echo_ignore_broadcasts = 1' | sudo tee -a /etc/sysctl.d/60-network-hardening.conf
sudo sysctl -w net.ipv4.icmp_echo_ignore_broadcasts=1

Valeur par défaut : Activé par défaut (valeur 1)

Résultat : ☐ ✅ Conforme ☐ ❌ Non conforme ☐ ⚠️ Partiel ☐ N/A Commentaire de l’auditeur : _______________________________________________

3.1.11 — Ignorer les messages ICMP bogus error responses

Niveau : 🟡 Référence CIS : CIS Ubuntu 24.04 3.2.9 Profil : Niveau 1 (L1) — Serveur MITRE ATT&CK : T1498 (Network Denial of Service) NIST SP 800-53 : SC-7 (Boundary Protection) ANSSI : R12 — Durcissement de la pile réseau

Description : Les réponses ICMP erronées (bogus) peuvent être utilisées pour des attaques de déni de service ou pour perturber les communications réseau. L’activation de icmp_ignore_bogus_error_responses empêche la journalisation excessive de ces messages erronés.

Vérification :

sysctl net.ipv4.icmp_ignore_bogus_error_responses
  • Fichier / Composant : /etc/sysctl.d/60-network-hardening.conf
  • Valeur attendue : net.ipv4.icmp_ignore_bogus_error_responses = 1

Remédiation :

echo 'net.ipv4.icmp_ignore_bogus_error_responses = 1' | sudo tee -a /etc/sysctl.d/60-network-hardening.conf
sudo sysctl -w net.ipv4.icmp_ignore_bogus_error_responses=1

Valeur par défaut : Activé par défaut (valeur 1)

Résultat : ☐ ✅ Conforme ☐ ❌ Non conforme ☐ ⚠️ Partiel ☐ N/A Commentaire de l’auditeur : _______________________________________________

3.1.12 — Désactiver les redirections ICMP sécurisées

Niveau : 🟠 Référence CIS : CIS Ubuntu 24.04 3.2.10 Profil : Niveau 1 (L1) — Serveur MITRE ATT&CK : T1557 (Adversary-in-the-Middle) NIST SP 800-53 : SC-7 (Boundary Protection) ANSSI : R12 — Durcissement de la pile réseau

Description : Les redirections ICMP sécurisées (secure_redirects) sont des redirections provenant de passerelles par défaut. Même si elles sont considérées plus sûres que les redirections standard, elles peuvent toujours être exploitées pour manipuler les tables de routage.

Vérification :

sysctl net.ipv4.conf.all.secure_redirects
sysctl net.ipv4.conf.default.secure_redirects
  • Fichier / Composant : /etc/sysctl.d/60-network-hardening.conf
  • Valeur attendue : net.ipv4.conf.all.secure_redirects = 0

Remédiation :

cat << EOF | sudo tee -a /etc/sysctl.d/60-network-hardening.conf
net.ipv4.conf.all.secure_redirects = 0
net.ipv4.conf.default.secure_redirects = 0
EOF
sudo sysctl -w net.ipv4.conf.all.secure_redirects=0
sudo sysctl -w net.ipv4.conf.default.secure_redirects=0

Valeur par défaut : Activé par défaut (valeur 1)

Résultat : ☐ ✅ Conforme ☐ ❌ Non conforme ☐ ⚠️ Partiel ☐ N/A Commentaire de l’auditeur : _______________________________________________

3.1.13 — Désactiver les redirections ICMP IPv6

Niveau : 🟠 Référence CIS : CIS Ubuntu 24.04 3.2.11 Profil : Niveau 1 (L1) — Serveur MITRE ATT&CK : T1557 (Adversary-in-the-Middle) NIST SP 800-53 : SC-7 (Boundary Protection) ANSSI : R12 — Durcissement de la pile réseau

Description : Les redirections ICMP IPv6 peuvent être exploitées pour détourner le trafic dans un réseau IPv6. La désactivation des redirections IPv6 est nécessaire pour compléter la protection du routage réseau.

Vérification :

sysctl net.ipv6.conf.all.accept_redirects
sysctl net.ipv6.conf.default.accept_redirects
  • Fichier / Composant : /etc/sysctl.d/60-network-hardening.conf
  • Valeur attendue : net.ipv6.conf.all.accept_redirects = 0

Remédiation :

cat << EOF | sudo tee -a /etc/sysctl.d/60-network-hardening.conf
net.ipv6.conf.all.accept_redirects = 0
net.ipv6.conf.default.accept_redirects = 0
EOF
sudo sysctl -w net.ipv6.conf.all.accept_redirects=0
sudo sysctl -w net.ipv6.conf.default.accept_redirects=0

Valeur par défaut : Activé par défaut (valeur 1)

Résultat : ☐ ✅ Conforme ☐ ❌ Non conforme ☐ ⚠️ Partiel ☐ N/A Commentaire de l’auditeur : _______________________________________________

3.1.14 — Désactiver les annonces de routeur IPv6

Niveau : 🟠 Référence CIS : CIS Ubuntu 24.04 3.2.12 Profil : Niveau 1 (L1) — Serveur MITRE ATT&CK : T1557 (Adversary-in-the-Middle) NIST SP 800-53 : SC-7 (Boundary Protection) ANSSI : R12 — Durcissement de la pile réseau

Description : L’acceptation des annonces de routeur IPv6 (Router Advertisements) peut permettre à un attaquant de se faire passer pour un routeur IPv6 légitime (attaque de type rogue router advertisement). Sur un serveur avec une configuration réseau statique, cette fonctionnalité doit être désactivée.

Vérification :

sysctl net.ipv6.conf.all.accept_ra
sysctl net.ipv6.conf.default.accept_ra
  • Fichier / Composant : /etc/sysctl.d/60-network-hardening.conf
  • Valeur attendue : net.ipv6.conf.all.accept_ra = 0

Remédiation :

cat << EOF | sudo tee -a /etc/sysctl.d/60-network-hardening.conf
net.ipv6.conf.all.accept_ra = 0
net.ipv6.conf.default.accept_ra = 0
EOF
sudo sysctl -w net.ipv6.conf.all.accept_ra=0
sudo sysctl -w net.ipv6.conf.default.accept_ra=0

Valeur par défaut : Activé par défaut (valeur 1) — peut être nécessaire pour SLAAC

Résultat : ☐ ✅ Conforme ☐ ❌ Non conforme ☐ ⚠️ Partiel ☐ N/A Commentaire de l’auditeur : _______________________________________________

3.1.15 — Désactiver IPv6 si non utilisé

Niveau : 🟡 Référence CIS : CIS Ubuntu 24.04 3.1.3 Profil : Niveau 1 (L1) — Serveur MITRE ATT&CK : T1095 (Non-Application Layer Protocol) NIST SP 800-53 : SC-7 (Boundary Protection) ANSSI : R12 — Durcissement de la pile réseau

Description : Si IPv6 n’est pas utilisé dans l’infrastructure réseau, il doit être complètement désactivé pour éliminer un vecteur d’attaque potentiel. IPv6 peut être exploité pour contourner les règles de pare-feu IPv4 si les règles IPv6 ne sont pas correctement configurées.

Vérification :

ip -6 addr show
sysctl net.ipv6.conf.all.disable_ipv6
grep -r 'ipv6.disable' /proc/cmdline
  • Fichier / Composant : /etc/sysctl.d/60-network-hardening.conf ou /etc/default/grub
  • Valeur attendue : net.ipv6.conf.all.disable_ipv6 = 1 (si IPv6 non utilisé)

Remédiation :

# Option 1 : Via sysctl
cat << EOF | sudo tee /etc/sysctl.d/60-disable-ipv6.conf
net.ipv6.conf.all.disable_ipv6 = 1
net.ipv6.conf.default.disable_ipv6 = 1
net.ipv6.conf.lo.disable_ipv6 = 1
EOF
sudo sysctl --system

# Option 2 : Via GRUB (plus fiable)
# Ajouter ipv6.disable=1 dans GRUB_CMDLINE_LINUX de /etc/default/grub
sudo update-grub

Valeur par défaut : IPv6 est activé par défaut

Résultat : ☐ ✅ Conforme ☐ ❌ Non conforme ☐ ⚠️ Partiel ☐ N/A Commentaire de l’auditeur : _______________________________________________

3.2.1 — Vérifier que ufw (Uncomplicated Firewall) est installé

Niveau : 🔴 Référence CIS : CIS Ubuntu 24.04 3.5.1.1 Profil : Niveau 1 (L1) — Serveur MITRE ATT&CK : T1046 (Network Service Discovery) NIST SP 800-53 : SC-7 (Boundary Protection), AC-4 (Information Flow Enforcement) ANSSI : R12 — Configurer un pare-feu local

Description : ufw est l’interface de gestion simplifiée du pare-feu iptables/nftables sur Ubuntu. Il fournit une couche d’abstraction qui facilite la création et la gestion des règles de filtrage. ufw doit être installé comme couche de gestion du pare-feu.

Vérification :

dpkg -l | grep ufw
ufw version 2>/dev/null
  • Fichier / Composant : ufw
  • Valeur attendue : Le paquet ufw doit être installé

Remédiation :

sudo apt install -y ufw

Valeur par défaut : ufw est installé par défaut sur Ubuntu 24.04

Résultat : ☐ ✅ Conforme ☐ ❌ Non conforme ☐ ⚠️ Partiel ☐ N/A Commentaire de l’auditeur : _______________________________________________

3.2.2 — Vérifier que le service iptables-persistent n’est pas installé avec ufw

Niveau : 🟡 Référence CIS : CIS Ubuntu 24.04 3.5.1.2 Profil : Niveau 1 (L1) — Serveur MITRE ATT&CK : T1562.004 (Impair Defenses: Disable or Modify System Firewall) NIST SP 800-53 : SC-7 (Boundary Protection), AC-4 (Information Flow Enforcement) ANSSI : R12 — Configurer un pare-feu local

Description : iptables-persistent et ufw ne doivent pas être utilisés simultanément car ils peuvent entrer en conflit. Si ufw est choisi comme solution de pare-feu, iptables-persistent doit être supprimé pour éviter les conflits de règles.

Vérification :

dpkg -l | grep iptables-persistent
  • Fichier / Composant : iptables-persistent
  • Valeur attendue : Non installé si ufw est utilisé

Remédiation :

sudo apt purge -y iptables-persistent netfilter-persistent 2>/dev/null
sudo apt autoremove -y

Valeur par défaut : Non installé par défaut

Résultat : ☐ ✅ Conforme ☐ ❌ Non conforme ☐ ⚠️ Partiel ☐ N/A Commentaire de l’auditeur : _______________________________________________

3.2.3 — Vérifier que ufw est activé et en cours d’exécution

Niveau : 🔴 Référence CIS : CIS Ubuntu 24.04 3.5.1.3 Profil : Niveau 1 (L1) — Serveur MITRE ATT&CK : T1562.004 (Impair Defenses: Disable or Modify System Firewall) NIST SP 800-53 : SC-7 (Boundary Protection), AC-4 (Information Flow Enforcement) ANSSI : R12 — Configurer un pare-feu local

Description : Le pare-feu ufw doit être activé et en cours d’exécution pour protéger le serveur. Un pare-feu inactif laisse tous les ports ouverts et exposés. La politique par défaut doit être de refuser tout trafic entrant non explicitement autorisé.

Vérification :

sudo ufw status verbose
systemctl is-enabled ufw
  • Fichier / Composant : ufw
  • Valeur attendue : Status: active, Default: deny (incoming), allow (outgoing)

Remédiation :

# Configurer la politique par défaut
sudo ufw default deny incoming
sudo ufw default allow outgoing
sudo ufw default deny routed

# Autoriser SSH avant d'activer (pour ne pas perdre l'accès)
sudo ufw allow ssh

# Activer ufw
sudo ufw --force enable
sudo systemctl enable ufw

Valeur par défaut : ufw est installé mais désactivé par défaut

Résultat : ☐ ✅ Conforme ☐ ❌ Non conforme ☐ ⚠️ Partiel ☐ N/A Commentaire de l’auditeur : _______________________________________________

3.2.4 — Vérifier que la politique par défaut de ufw refuse le trafic entrant

Niveau : 🔴 Référence CIS : CIS Ubuntu 24.04 3.5.1.4 Profil : Niveau 1 (L1) — Serveur MITRE ATT&CK : T1190 (Exploit Public-Facing Application) NIST SP 800-53 : SC-7 (Boundary Protection), AC-4 (Information Flow Enforcement) ANSSI : R12 — Configurer un pare-feu local

Description : La politique par défaut du pare-feu doit être ‘deny’ pour le trafic entrant, ce qui signifie que tout trafic non explicitement autorisé par une règle est bloqué. Cette approche de liste blanche (whitelist) est la seule approche de sécurité acceptable pour un pare-feu.

Vérification :

sudo ufw status verbose | grep 'Default:'
sudo ufw show raw | head -20
  • Fichier / Composant : ufw
  • Valeur attendue : Default: deny (incoming), allow (outgoing)

Remédiation :

sudo ufw default deny incoming
sudo ufw default allow outgoing
sudo ufw default deny routed

Valeur par défaut : deny incoming par défaut (quand ufw est activé)

Résultat : ☐ ✅ Conforme ☐ ❌ Non conforme ☐ ⚠️ Partiel ☐ N/A Commentaire de l’auditeur : _______________________________________________

3.2.5 — Vérifier que les règles ufw sont configurées pour les services autorisés

Niveau : 🔴 Référence CIS : CIS Ubuntu 24.04 3.5.1.5 Profil : Niveau 1 (L1) — Serveur MITRE ATT&CK : T1046 (Network Service Discovery) NIST SP 800-53 : SC-7 (Boundary Protection), AC-4 (Information Flow Enforcement) ANSSI : R12 — Configurer un pare-feu local

Description : Chaque service réseau nécessaire doit avoir une règle de pare-feu explicite. Les règles doivent être aussi restrictives que possible, en limitant l’accès par adresse IP source et port de destination. La documentation des règles est essentielle pour l’audit.

Vérification :

sudo ufw status numbered
sudo ufw show added
  • Fichier / Composant : ufw
  • Valeur attendue : Seuls les services nécessaires sont autorisés (SSH minimum)

Remédiation :

# Exemple de règles pour un serveur web
sudo ufw allow from any to any port 22 proto tcp comment 'SSH'
sudo ufw allow from any to any port 80 proto tcp comment 'HTTP'
sudo ufw allow from any to any port 443 proto tcp comment 'HTTPS'

# Règle restrictive par IP source
sudo ufw allow from 192.168.1.0/24 to any port 22 proto tcp comment 'SSH LAN'

Valeur par défaut : Aucune règle configurée par défaut

Résultat : ☐ ✅ Conforme ☐ ❌ Non conforme ☐ ⚠️ Partiel ☐ N/A Commentaire de l’auditeur : _______________________________________________

3.2.6 — Vérifier que les règles de pare-feu pour le trafic de loopback sont configurées

Niveau : 🟠 Référence CIS : CIS Ubuntu 24.04 3.5.1.6 Profil : Niveau 1 (L1) — Serveur MITRE ATT&CK : T1090.001 (Proxy: Internal Proxy) NIST SP 800-53 : SC-7 (Boundary Protection), AC-4 (Information Flow Enforcement) ANSSI : R12 — Configurer un pare-feu local

Description : Le trafic de l’interface loopback (127.0.0.1/lo) doit être autorisé car de nombreux services communiquent via localhost. Cependant, le trafic entrant avec une adresse source 127.0.0.0/8 sur une interface autre que lo doit être bloqué pour empêcher l’usurpation d’adresse loopback.

Vérification :

sudo ufw status verbose | grep -E '127|lo|Anywhere'
sudo iptables -L INPUT -v -n | grep lo
sudo iptables -L OUTPUT -v -n | grep lo
  • Fichier / Composant : ufw / iptables
  • Valeur attendue : Trafic loopback autorisé entrant et sortant, paquets 127.0.0.0/8 sur interfaces non-lo bloqués

Remédiation :

sudo ufw allow in on lo
sudo ufw allow out on lo
sudo ufw deny in from 127.0.0.0/8
sudo ufw deny in from ::1

Valeur par défaut : Non configuré par défaut

Résultat : ☐ ✅ Conforme ☐ ❌ Non conforme ☐ ⚠️ Partiel ☐ N/A Commentaire de l’auditeur : _______________________________________________

3.2.7 — Vérifier que la journalisation du pare-feu ufw est activée

Niveau : 🟠 Référence CIS : CIS Ubuntu 24.04 3.5.1.7 Profil : Niveau 1 (L1) — Serveur MITRE ATT&CK : T1562.004 (Impair Defenses: Disable or Modify System Firewall) NIST SP 800-53 : SC-7 (Boundary Protection), AC-4 (Information Flow Enforcement) ANSSI : R12 — Configurer un pare-feu local

Description : La journalisation du pare-feu est essentielle pour détecter les tentatives d’intrusion et les anomalies réseau. Les journaux du pare-feu fournissent des preuves forensiques précieuses et alimentent les systèmes SIEM pour la corrélation d’événements de sécurité.

Vérification :

sudo ufw status verbose | grep Logging
grep -r 'LOGLEVEL' /etc/ufw/ufw.conf
  • Fichier / Composant : /etc/ufw/ufw.conf
  • Valeur attendue : Logging: on (medium ou high)

Remédiation :

sudo ufw logging medium
# Niveaux disponibles : off, low, medium, high, full
# 'medium' journalise les paquets bloqués et les connexions autorisées
# 'high' journalise également les paquets avec rate limiting

Valeur par défaut : Logging désactivé par défaut

Résultat : ☐ ✅ Conforme ☐ ❌ Non conforme ☐ ⚠️ Partiel ☐ N/A Commentaire de l’auditeur : _______________________________________________

3.2.8 — Vérifier que nftables est installé comme backend de ufw

Niveau : 🟡 Référence CIS : CIS Ubuntu 24.04 3.5.2.1 Profil : Niveau 1 (L1) — Serveur MITRE ATT&CK : T1562.004 (Impair Defenses: Disable or Modify System Firewall) NIST SP 800-53 : SC-7 (Boundary Protection), AC-4 (Information Flow Enforcement) ANSSI : R12 — Configurer un pare-feu local

Description : nftables est le successeur d’iptables et fournit un cadre de filtrage de paquets plus performant et plus flexible. Ubuntu 24.04 utilise nftables comme backend par défaut pour ufw. La présence de nftables assure la compatibilité et les performances du pare-feu.

Vérification :

dpkg -l | grep nftables
nft list tables 2>/dev/null
grep -i 'ipt_backend' /etc/default/ufw
  • Fichier / Composant : /etc/default/ufw
  • Valeur attendue : IPT_BACKEND=nftables

Remédiation :

sudo apt install -y nftables
# Configurer ufw pour utiliser nftables
sudo sed -i 's/IPT_BACKEND=iptables/IPT_BACKEND=nftables/' /etc/default/ufw

Valeur par défaut : nftables est le backend par défaut sur Ubuntu 24.04

Résultat : ☐ ✅ Conforme ☐ ❌ Non conforme ☐ ⚠️ Partiel ☐ N/A Commentaire de l’auditeur : _______________________________________________

3.2.9 — Désactiver le protocole DCCP

Niveau : 🟡 Référence CIS : CIS Ubuntu 24.04 3.4.1 Profil : Niveau 1 (L1) — Serveur MITRE ATT&CK : T1095 (Non-Application Layer Protocol) NIST SP 800-53 : SC-7 (Boundary Protection), AC-4 (Information Flow Enforcement) ANSSI : R12 — Configurer un pare-feu local

Description : Le protocole DCCP (Datagram Congestion Control Protocol) est rarement utilisé et peut représenter une surface d’attaque. La désactivation des protocoles réseau inutilisés fait partie de la stratégie de minimisation de la surface d’attaque du noyau.

Vérification :

modprobe -n -v dccp 2>/dev/null | grep -E '(install|/bin/(true|false))'
lsmod | grep dccp
  • Fichier / Composant : /etc/modprobe.d/dccp.conf
  • Valeur attendue : install /bin/false

Remédiation :

echo 'install dccp /bin/false' | sudo tee /etc/modprobe.d/dccp.conf
echo 'blacklist dccp' | sudo tee -a /etc/modprobe.d/dccp.conf

Valeur par défaut : Module disponible mais non chargé

Résultat : ☐ ✅ Conforme ☐ ❌ Non conforme ☐ ⚠️ Partiel ☐ N/A Commentaire de l’auditeur : _______________________________________________

3.2.10 — Désactiver le protocole SCTP

Niveau : 🟡 Référence CIS : CIS Ubuntu 24.04 3.4.2 Profil : Niveau 1 (L1) — Serveur MITRE ATT&CK : T1095 (Non-Application Layer Protocol) NIST SP 800-53 : SC-7 (Boundary Protection), AC-4 (Information Flow Enforcement) ANSSI : R12 — Configurer un pare-feu local

Description : Le protocole SCTP (Stream Control Transmission Protocol) est utilisé principalement dans les réseaux de télécommunication. Sur un serveur standard, ce protocole n’est pas nécessaire et doit être désactivé pour réduire la surface d’attaque.

Vérification :

modprobe -n -v sctp 2>/dev/null | grep -E '(install|/bin/(true|false))'
lsmod | grep sctp
  • Fichier / Composant : /etc/modprobe.d/sctp.conf
  • Valeur attendue : install /bin/false

Remédiation :

echo 'install sctp /bin/false' | sudo tee /etc/modprobe.d/sctp.conf
echo 'blacklist sctp' | sudo tee -a /etc/modprobe.d/sctp.conf

Valeur par défaut : Module disponible mais non chargé

Résultat : ☐ ✅ Conforme ☐ ❌ Non conforme ☐ ⚠️ Partiel ☐ N/A Commentaire de l’auditeur : _______________________________________________

3.2.11 — Désactiver le protocole RDS

Niveau : 🟡 Référence CIS : CIS Ubuntu 24.04 3.4.3 Profil : Niveau 1 (L1) — Serveur MITRE ATT&CK : T1095 (Non-Application Layer Protocol) NIST SP 800-53 : SC-7 (Boundary Protection), AC-4 (Information Flow Enforcement) ANSSI : R12 — Configurer un pare-feu local

Description : Le protocole RDS (Reliable Datagram Sockets) est un protocole de transport conçu pour les clusters Oracle. Il n’est pas nécessaire sur les serveurs standard et peut être désactivé pour réduire la surface d’attaque du noyau.

Vérification :

modprobe -n -v rds 2>/dev/null | grep -E '(install|/bin/(true|false))'
lsmod | grep rds
  • Fichier / Composant : /etc/modprobe.d/rds.conf
  • Valeur attendue : install /bin/false

Remédiation :

echo 'install rds /bin/false' | sudo tee /etc/modprobe.d/rds.conf
echo 'blacklist rds' | sudo tee -a /etc/modprobe.d/rds.conf

Valeur par défaut : Module disponible mais non chargé

Résultat : ☐ ✅ Conforme ☐ ❌ Non conforme ☐ ⚠️ Partiel ☐ N/A Commentaire de l’auditeur : _______________________________________________

3.2.12 — Désactiver le protocole TIPC

Niveau : 🟡 Référence CIS : CIS Ubuntu 24.04 3.4.4 Profil : Niveau 1 (L1) — Serveur MITRE ATT&CK : T1095 (Non-Application Layer Protocol) NIST SP 800-53 : SC-7 (Boundary Protection), AC-4 (Information Flow Enforcement) ANSSI : R12 — Configurer un pare-feu local

Description : Le protocole TIPC (Transparent Inter-Process Communication) est utilisé pour la communication inter-nœuds dans les clusters. Sur un serveur non clusterisé, ce protocole n’est pas nécessaire et doit être désactivé.

Vérification :

modprobe -n -v tipc 2>/dev/null | grep -E '(install|/bin/(true|false))'
lsmod | grep tipc
  • Fichier / Composant : /etc/modprobe.d/tipc.conf
  • Valeur attendue : install /bin/false

Remédiation :

echo 'install tipc /bin/false' | sudo tee /etc/modprobe.d/tipc.conf
echo 'blacklist tipc' | sudo tee -a /etc/modprobe.d/tipc.conf

Valeur par défaut : Module disponible mais non chargé

Résultat : ☐ ✅ Conforme ☐ ❌ Non conforme ☐ ⚠️ Partiel ☐ N/A Commentaire de l’auditeur : _______________________________________________

3.2.13 — Désactiver les interfaces sans fil (Wi-Fi)

Niveau : 🟠 Référence CIS : CIS Ubuntu 24.04 3.1.4 Profil : Niveau 1 (L1) — Serveur MITRE ATT&CK : T1200 (Hardware Additions) NIST SP 800-53 : SC-7 (Boundary Protection), AC-4 (Information Flow Enforcement) ANSSI : R12 — Configurer un pare-feu local

Description : Les interfaces sans fil sur un serveur représentent un risque de sécurité majeur car elles permettent des attaques sans accès physique au câblage réseau. Sur un serveur, toutes les interfaces sans fil doivent être désactivées sauf si explicitement requises et sécurisées.

Vérification :

ip link show | grep -i wlan
iwconfig 2>/dev/null
nmcli radio wifi 2>/dev/null
rfkill list all 2>/dev/null
  • Fichier / Composant : Interfaces réseau
  • Valeur attendue : Aucune interface sans fil active

Remédiation :

# Désactiver le Wi-Fi
sudo rfkill block wifi 2>/dev/null
sudo nmcli radio wifi off 2>/dev/null

# Désactiver les modules sans fil
echo 'install cfg80211 /bin/false' | sudo tee /etc/modprobe.d/disable-wireless.conf
echo 'install mac80211 /bin/false' | sudo tee -a /etc/modprobe.d/disable-wireless.conf
echo 'install iwlwifi /bin/false' | sudo tee -a /etc/modprobe.d/disable-wireless.conf

Valeur par défaut : Le Wi-Fi peut être activé si du matériel sans fil est détecté

Résultat : ☐ ✅ Conforme ☐ ❌ Non conforme ☐ ⚠️ Partiel ☐ N/A Commentaire de l’auditeur : _______________________________________________

3.2.14 — Vérifier la configuration de TCP Wrappers (hosts.allow / hosts.deny)

Niveau : 🟡 Référence CIS : ANSSI R16 — Filtrage au niveau applicatif Profil : Niveau 1 (L1) — Serveur MITRE ATT&CK : T1046 (Network Service Discovery) NIST SP 800-53 : SC-7 (Boundary Protection), AC-4 (Information Flow Enforcement) ANSSI : R12 — Configurer un pare-feu local

Description : TCP Wrappers fournit une couche de filtrage d’accès réseau au niveau applicatif via les fichiers /etc/hosts.allow et /etc/hosts.deny. Bien que remplacé par le pare-feu pour le filtrage principal, TCP Wrappers fournit une défense en profondeur supplémentaire pour les services qui le supportent.

Vérification :

cat /etc/hosts.allow 2>/dev/null
cat /etc/hosts.deny 2>/dev/null
ldd /usr/sbin/sshd | grep libwrap 2>/dev/null
  • Fichier / Composant : /etc/hosts.allow, /etc/hosts.deny
  • Valeur attendue : hosts.deny contient 'ALL: ALL' et hosts.allow liste les accès autorisés

Remédiation :

# Politique restrictive : tout bloquer par défaut
echo 'ALL: ALL' | sudo tee /etc/hosts.deny

# Autoriser les accès nécessaires
echo 'sshd: 192.168.1.0/24' | sudo tee /etc/hosts.allow
echo 'sshd: 10.0.0.0/8' | sudo tee -a /etc/hosts.allow

Valeur par défaut : hosts.allow et hosts.deny sont vides par défaut

Résultat : ☐ ✅ Conforme ☐ ❌ Non conforme ☐ ⚠️ Partiel ☐ N/A Commentaire de l’auditeur : _______________________________________________

3.2.15 — Vérifier qu’aucune règle de pare-feu en double ou contradictoire n’existe

Niveau : 🟡 Référence CIS : ANSSI R12 — Cohérence des règles de filtrage Profil : Niveau 1 (L1) — Serveur MITRE ATT&CK : T1562.004 (Impair Defenses: Disable or Modify System Firewall) NIST SP 800-53 : SC-7 (Boundary Protection), AC-4 (Information Flow Enforcement) ANSSI : R12 — Configurer un pare-feu local

Description : Les règles de pare-feu en double ou contradictoires peuvent créer des failles de sécurité ou rendre le pare-feu inefficace. Un audit régulier des règles de pare-feu est nécessaire pour maintenir une politique de filtrage cohérente et optimale.

Vérification :

sudo ufw status numbered
sudo iptables -L -n --line-numbers 2>/dev/null | head -50
sudo ip6tables -L -n --line-numbers 2>/dev/null | head -50
sudo nft list ruleset 2>/dev/null | head -50
  • Fichier / Composant : Règles de pare-feu
  • Valeur attendue : Aucune règle en double, aucune contradiction, politique cohérente

Remédiation :

# Examiner les règles et supprimer les doublons
sudo ufw status numbered
# Supprimer une règle par son numéro
sudo ufw delete <numéro>

# Réinitialiser si nécessaire
# sudo ufw reset

Valeur par défaut : Aucune règle configurée par défaut

Résultat : ☐ ✅ Conforme ☐ ❌ Non conforme ☐ ⚠️ Partiel ☐ N/A Commentaire de l’auditeur : _______________________________________________

S4 — PARE-FEU UFW/NFTABLES (15 contrôles)

4.1.1 — Vérifier qu’UFW est installé et activé

Niveau : 🔴 Référence CIS : CIS Ubuntu 24.04 3.5.1.1 MITRE ATT&CK : T1562.004 (Impair Defenses: Disable or Modify System Firewall)

Description : UFW (Uncomplicated Firewall) est l’interface recommandée pour gérer les règles de pare-feu sur Ubuntu. Il doit être installé, activé et configuré pour filtrer le trafic réseau entrant et sortant selon les besoins de l’organisation.

Vérification :

sudo ufw status verbose
systemctl is-enabled ufw
dpkg -s ufw | grep -E '^Status|^Version'

Remédiation :

  1. Installer UFW si nécessaire :
sudo apt update && sudo apt install ufw
  1. Activer UFW :
sudo ufw enable
sudo systemctl enable ufw

Valeur par défaut : UFW installé mais inactif sur Ubuntu 24.04 LTS

Résultat : ☐ ✅ Conforme ☐ ❌ Non conforme ☐ ⚠️ Partiel ☐ N/A Commentaire de l’auditeur : _______________________________________________

4.1.2 — Configurer la politique par défaut UFW (deny incoming, allow outgoing)

Niveau : 🔴 Référence CIS : CIS Ubuntu 24.04 3.5.1.2 MITRE ATT&CK : T1090 (Proxy)

Description : La politique par défaut d’UFW doit être configurée pour refuser tout le trafic entrant non autorisé et permettre le trafic sortant. Cette approche ‘deny by default’ réduit la surface d’attaque en ne permettant que les connexions explicitement autorisées.

Vérification :

sudo ufw status verbose | grep -E 'Default:'

Remédiation :

sudo ufw default deny incoming
sudo ufw default allow outgoing
sudo ufw default deny forward

Valeur par défaut : Policies par défaut non restrictives

Résultat : ☐ ✅ Conforme ☐ ❌ Non conforme ☐ ⚠️ Partiel ☐ N/A Commentaire de l’auditeur : _______________________________________________

4.1.3 — Autoriser uniquement les services réseau nécessaires dans UFW

Niveau : 🔴 Référence CIS : CIS Ubuntu 24.04 3.5.1.3 MITRE ATT&CK : T1046 (Network Service Discovery)

Description : Seuls les services réseau requis pour les fonctions métier doivent être autorisés par le pare-feu. Chaque règle d’autorisation doit être justifiée et documentée. Les services non nécessaires exposent des surfaces d’attaque supplémentaires.

Vérification :

sudo ufw status numbered
sudo ss -tuln | grep LISTEN
sudo netstat -tuln 2>/dev/null | grep LISTEN

Remédiation :

# Exemple : autoriser SSH depuis un réseau spécifique
sudo ufw allow from 192.168.1.0/24 to any port 22

# Autoriser HTTP/HTTPS
sudo ufw allow 80/tcp
sudo ufw allow 443/tcp

# Supprimer les règles inutiles
sudo ufw delete <numéro_règle>

Valeur par défaut : Aucune règle d’autorisation configurée

Résultat : ☐ ✅ Conforme ☐ ❌ Non conforme ☐ ⚠️ Partiel ☐ N/A Commentaire de l’auditeur : _______________________________________________

4.1.4 — Vérifier la journalisation UFW

Niveau : 🟠 Référence CIS : CIS Ubuntu 24.04 3.5.1.4 MITRE ATT&CK : T1562.006 (Impair Defenses: Indicator Blocking)

Description : La journalisation UFW doit être activée pour permettre la surveillance des tentatives de connexion et la détection d’activités suspectes. Les logs doivent être configurés à un niveau approprié et régulièrement analysés.

Vérification :

sudo ufw status verbose | grep -i logging
grep -E '^[[:space:]]*LOGLEVEL=' /etc/ufw/ufw.conf
tail -20 /var/log/ufw.log 2>/dev/null

Remédiation :

# Activer la journalisation (niveau low recommandé)
sudo ufw logging on
sudo ufw logging low

# Configuration avancée dans /etc/ufw/ufw.conf
sudo sed -i 's/^LOGLEVEL=.*/LOGLEVEL=low/' /etc/ufw/ufw.conf

Valeur par défaut : Journalisation désactivée

Résultat : ☐ ✅ Conforme ☐ ❌ Non conforme ☐ ⚠️ Partiel ☐ N/A Commentaire de l’auditeur : _______________________________________________

4.2.1 — Vérifier la configuration nftables comme backend

Niveau : 🟡 Référence CIS : CIS Ubuntu 24.04 3.5.2.1 MITRE ATT&CK : T1562.004 (Impair Defenses: Disable or Modify System Firewall)

Description : nftables est le framework de filtrage réseau moderne du noyau Linux, remplaçant iptables. UFW peut utiliser nftables comme backend pour améliorer les performances et la gestion des règles. La configuration doit être vérifiée pour s’assurer de la cohérence.

Vérification :

sudo nft list tables
sudo nft list ruleset | head -20
cat /etc/ufw/ufw.conf | grep -i backend

Remédiation :

# Configurer UFW pour utiliser nftables
sudo sed -i 's/^IPT_BACKEND=.*/IPT_BACKEND=nftables/' /etc/ufw/ufw.conf

# Redémarrer UFW
sudo ufw reload

Valeur par défaut : Backend iptables par défaut

Résultat : ☐ ✅ Conforme ☐ ❌ Non conforme ☐ ⚠️ Partiel ☐ N/A Commentaire de l’auditeur : _______________________________________________

4.2.2 — Configurer des règles de limitation de débit (rate limiting)

Niveau : 🟡 Référence CIS : ANSSI R12 — Protection contre les attaques DoS MITRE ATT&CK : T1499 (Endpoint Denial of Service)

Description : Les règles de limitation de débit protègent contre les attaques par déni de service et les tentatives de brute force. UFW permet de configurer des limites sur les connexions par seconde pour certains services critiques comme SSH.

Vérification :

sudo ufw status | grep -i limit
sudo nft list ruleset | grep -A5 -B5 limit 2>/dev/null

Remédiation :

# Limiter les connexions SSH (6 tentatives par 30 secondes)
sudo ufw limit ssh

# Ou pour un port spécifique
sudo ufw limit 22/tcp

# Vérifier la règle
sudo ufw status numbered

Valeur par défaut : Aucune limitation configurée

Résultat : ☐ ✅ Conforme ☐ ❌ Non conforme ☐ ⚠️ Partiel ☐ N/A Commentaire de l’auditeur : _______________________________________________

4.3.1 — Bloquer les adresses IP et réseaux malveillants

Niveau : 🟠 Référence CIS : ANSSI R12 — Filtrage réseau avancé MITRE ATT&CK : T1071 (Application Layer Protocol)

Description : Le pare-feu doit être configuré pour bloquer automatiquement les adresses IP et réseaux connus comme malveillants. Cette protection proactive réduit les risques d’intrusion et d’attaques automatisées.

Vérification :

sudo ufw status | grep -E 'DENY|REJECT'
grep -c 'DENY' /etc/ufw/user.rules 2>/dev/null

Remédiation :

# Bloquer des réseaux suspects (exemple)
sudo ufw deny from 10.0.0.0/8
sudo ufw deny from 169.254.0.0/16
sudo ufw deny from 224.0.0.0/3

# Bloquer une IP spécifique
sudo ufw deny from 192.0.2.1

Valeur par défaut : Aucun blocage proactif configuré

Résultat : ☐ ✅ Conforme ☐ ❌ Non conforme ☐ ⚠️ Partiel ☐ N/A Commentaire de l’auditeur : _______________________________________________

4.3.2 — Configurer des règles de sortie restrictives

Niveau : 🟡 Référence CIS : ANSSI R12 — Filtrage du trafic sortant MITRE ATT&CK : T1041 (Exfiltration Over C2 Channel)

Description : Le trafic sortant doit être filtré pour empêcher l’exfiltration de données et les communications non autorisées vers l’extérieur. Seuls les protocoles et destinations nécessaires doivent être autorisés en sortie.

Vérification :

sudo ufw status | grep -i out
cat /etc/ufw/user6.rules | grep OUTPUT 2>/dev/null

Remédiation :

# Changer la politique par défaut sortante (après configuration des règles nécessaires)
# sudo ufw default deny outgoing

# Autoriser uniquement le trafic nécessaire
sudo ufw allow out 53    # DNS
sudo ufw allow out 80    # HTTP
sudo ufw allow out 443   # HTTPS
sudo ufw allow out 123   # NTP

Valeur par défaut : Trafic sortant autorisé par défaut

Résultat : ☐ ✅ Conforme ☐ ❌ Non conforme ☐ ⚠️ Partiel ☐ N/A Commentaire de l’auditeur : _______________________________________________

4.4.1 — Vérifier la protection contre l’IP spoofing

Niveau : 🟠 Référence CIS : CIS Ubuntu 24.04 3.3.1 MITRE ATT&CK : T1557 (Adversary-in-the-Middle)

Description : La protection contre l’IP spoofing empêche les attaques où un attaquant usurpe l’adresse IP d’une source de confiance. Cette protection doit être activée au niveau du noyau et renforcée par les règles de pare-feu.

Vérification :

sysctl net.ipv4.conf.all.rp_filter
sysctl net.ipv4.conf.default.rp_filter
grep -r 'rp_filter' /etc/sysctl.conf /etc/sysctl.d/ 2>/dev/null

Remédiation :

# Activer la protection rp_filter
echo 'net.ipv4.conf.all.rp_filter = 1' | sudo tee -a /etc/sysctl.d/60-netipv4_sysctl.conf
echo 'net.ipv4.conf.default.rp_filter = 1' | sudo tee -a /etc/sysctl.d/60-netipv4_sysctl.conf

# Appliquer immédiatement
sudo sysctl -p /etc/sysctl.d/60-netipv4_sysctl.conf

Valeur par défaut : rp_filter peut être désactivé selon la distribution

Résultat : ☐ ✅ Conforme ☐ ❌ Non conforme ☐ ⚠️ Partiel ☐ N/A Commentaire de l’auditeur : _______________________________________________

4.4.2 — Configurer la protection DDoS basique

Niveau : 🟡 Référence CIS : ANSSI R12 — Protection DDoS MITRE ATT&CK : T1499 (Endpoint Denial of Service)

Description : Des mécanismes de protection basique contre les attaques DDoS doivent être configurés au niveau du pare-feu et du noyau. Cela inclut la limitation des connexions simultanées et la protection contre les attaques SYN flood.

Vérification :

sysctl net.ipv4.tcp_syncookies
sysctl net.ipv4.tcp_max_syn_backlog
sysctl net.netfilter.nf_conntrack_max

Remédiation :

# Activer SYN cookies
echo 'net.ipv4.tcp_syncookies = 1' | sudo tee -a /etc/sysctl.d/60-netipv4_sysctl.conf

# Augmenter la taille du backlog SYN
echo 'net.ipv4.tcp_max_syn_backlog = 2048' | sudo tee -a /etc/sysctl.d/60-netipv4_sysctl.conf

# Limiter les connexions avec UFW
sudo ufw limit ssh

Valeur par défaut : Protection DDoS basique non optimisée

Résultat : ☐ ✅ Conforme ☐ ❌ Non conforme ☐ ⚠️ Partiel ☐ N/A Commentaire de l’auditeur : _______________________________________________

4.5.1 — Vérifier l’intégration avec fail2ban

Niveau : 🟡 Référence CIS : ANSSI R12 — Protection automatisée MITRE ATT&CK : T1110 (Brute Force)

Description : fail2ban doit être intégré avec UFW pour bloquer automatiquement les adresses IP qui effectuent des tentatives d’attaque répétées. Cette intégration fournit une protection proactive contre les attaques par brute force.

Vérification :

systemctl is-active fail2ban
sudo fail2ban-client status
grep -i ufw /etc/fail2ban/jail.conf /etc/fail2ban/jail.local 2>/dev/null

Remédiation :

# Installer fail2ban
sudo apt update && sudo apt install fail2ban

# Configurer pour UFW
sudo tee /etc/fail2ban/jail.local << 'EOF'
[DEFAULT]
banaction = ufw

[sshd]
enabled = true
port = ssh
filter = sshd
logpath = /var/log/auth.log
maxretry = 3
bantime = 3600
EOF

sudo systemctl enable fail2ban
sudo systemctl start fail2ban

Valeur par défaut : fail2ban non installé par défaut

Résultat : ☐ ✅ Conforme ☐ ❌ Non conforme ☐ ⚠️ Partiel ☐ N/A Commentaire de l’auditeur : _______________________________________________

4.5.2 — Tester et valider les règles de pare-feu

Niveau : 🟠 Référence CIS : ANSSI R12 — Validation des règles MITRE ATT&CK : T1562.004 (Impair Defenses: Disable or Modify System Firewall)

Description : Les règles de pare-feu doivent être régulièrement testées pour s’assurer qu’elles fonctionnent comme prévu. Des tests de connectivité et de blocage doivent être effectués pour valider la configuration.

Vérification :

sudo ufw status numbered
nmap localhost -p 1-65535 2>/dev/null | grep -E 'open|filtered' | head -10
sudo ss -tuln | grep LISTEN

Remédiation :

# Tests de connectivité (depuis un autre système)
# nmap -sS <ip_serveur> -p 22,80,443
# telnet <ip_serveur> 22

# Vérifier les logs
sudo tail -f /var/log/ufw.log &
# Effectuer des tests de connexion puis stopper le tail

Valeur par défaut : Aucune procédure de test systématique

Résultat : ☐ ✅ Conforme ☐ ❌ Non conforme ☐ ⚠️ Partiel ☐ N/A Commentaire de l’auditeur : _______________________________________________

4.6.1 — Documenter les règles de pare-feu et leur justification

Niveau : 🟢 Référence CIS : ANSSI — Documentation des règles de sécurité MITRE ATT&CK : T1562.004 (Impair Defenses: Disable or Modify System Firewall)

Description : Chaque règle de pare-feu doit être documentée avec sa justification métier, la date de création, et les critères de révision. Cette documentation facilite la maintenance et l’audit des règles de sécurité.

Vérification :

sudo ufw status numbered
# Vérifier l'existence d'une documentation des règles
ls -la /etc/ufw/ | grep -E 'doc|readme'

Remédiation :

# Créer un fichier de documentation
sudo tee /etc/ufw/rules-documentation.txt << 'EOF'
# UFW Rules Documentation
# Created: $(date)
# Maintainer: IT Security Team

Rule 1: Allow SSH from management network
- Justification: Administrative access required
- Source: 192.168.1.0/24
- Review: Quarterly

Rule 2: Allow HTTP/HTTPS for web service
- Justification: Public web server
- Ports: 80, 443
- Review: Monthly
EOF

Valeur par défaut : Aucune documentation standardisée

Résultat : ☐ ✅ Conforme ☐ ❌ Non conforme ☐ ⚠️ Partiel ☐ N/A Commentaire de l’auditeur : _______________________________________________

4.6.2 — Configurer la sauvegarde automatique des règles UFW

Niveau : 🟢 Référence CIS : ANSSI — Sauvegarde des configurations MITRE ATT&CK : T1485 (Data Destruction)

Description : Les règles de pare-feu doivent être sauvegardées automatiquement pour permettre une restauration rapide en cas de problème. La sauvegarde doit inclure tous les fichiers de configuration UFW et être stockée de manière sécurisée.

Vérification :

ls -la /etc/ufw/
crontab -l | grep -i ufw
ls -la /var/backups/ | grep -i ufw

Remédiation :

# Créer un script de sauvegarde
sudo tee /usr/local/bin/backup-ufw.sh << 'EOF'
BACKUP_DIR="/var/backups/ufw"
DATE=$(date +%Y%m%d-%H%M%S)

mkdir -p $BACKUP_DIR
tar czf $BACKUP_DIR/ufw-backup-$DATE.tar.gz /etc/ufw/
find $BACKUP_DIR -name "ufw-backup-*.tar.gz" -mtime +30 -delete
EOF

sudo chmod +x /usr/local/bin/backup-ufw.sh

# Programmer la sauvegarde quotidienne
echo "0 2 * * * /usr/local/bin/backup-ufw.sh" | sudo crontab -

Valeur par défaut : Aucune sauvegarde automatique configurée

Résultat : ☐ ✅ Conforme ☐ ❌ Non conforme ☐ ⚠️ Partiel ☐ N/A Commentaire de l’auditeur : _______________________________________________

S5 — JOURNALISATION & AUDIT (25 contrôles)

5.1.1 — Vérifier que rsyslog est installé et configuré

Niveau : 🔴 Référence CIS : CIS Ubuntu 24.04 4.1.1.1 MITRE ATT&CK : T1562.006 (Impair Defenses: Indicator Blocking)

Description : Le service rsyslog doit être installé et configuré pour centraliser la collecte des journaux système. Une journalisation appropriée est essentielle pour la surveillance de sécurité, la détection d’incidents et la conformité réglementaire.

Vérification :

dpkg -s rsyslog | grep Status
systemctl is-enabled rsyslog
systemctl is-active rsyslog
ls -la /etc/rsyslog.conf

Remédiation :

# Installer rsyslog si nécessaire
sudo apt update && sudo apt install rsyslog

# Activer et démarrer le service
sudo systemctl enable rsyslog
sudo systemctl start rsyslog

Valeur par défaut : rsyslog installé et activé par défaut sur Ubuntu 24.04 LTS

Résultat : ☐ ✅ Conforme ☐ ❌ Non conforme ☐ ⚠️ Partiel ☐ N/A Commentaire de l’auditeur : _______________________________________________

5.1.2 — Configurer la journalisation centralisée avec un serveur distant

Niveau : 🟡 Référence CIS : CIS Ubuntu 24.04 4.1.1.2 MITRE ATT&CK : T1070.002 (Indicator Removal on Host: Clear Linux or Mac System Logs)

Description : Les journaux doivent être envoyés vers un serveur de journalisation centralisé pour éviter leur perte en cas de compromission du système local. Cette centralisation améliore la surveillance et l’analyse de sécurité.

Vérification :

grep -E '^\*\.\*' /etc/rsyslog.conf
grep -E '@' /etc/rsyslog.conf /etc/rsyslog.d/*.conf 2>/dev/null
ss -tuln | grep :514

Remédiation :

# Configurer l'envoi vers un serveur syslog distant
echo '*.* @@log-server.domain.com:514' | sudo tee -a /etc/rsyslog.conf

# Ou pour UDP (moins sûr)
# echo '*.* @log-server.domain.com:514' | sudo tee -a /etc/rsyslog.conf

sudo systemctl restart rsyslog

Valeur par défaut : Journalisation locale uniquement

Résultat : ☐ ✅ Conforme ☐ ❌ Non conforme ☐ ⚠️ Partiel ☐ N/A Commentaire de l’auditeur : _______________________________________________

5.1.3 — Configurer la rotation et la rétention des journaux

Niveau : 🟠 Référence CIS : CIS Ubuntu 24.04 4.1.1.3 MITRE ATT&CK : T1070.002 (Indicator Removal on Host: Clear Linux or Mac System Logs)

Description : La rotation automatique des journaux doit être configurée pour éviter la saturation de l’espace disque tout en conservant suffisamment d’historique pour l’analyse de sécurité et la conformité réglementaire.

Vérification :

ls -la /etc/logrotate.d/rsyslog
cat /etc/logrotate.d/rsyslog
logrotate -d /etc/logrotate.d/rsyslog

Remédiation :

# Configurer la rotation des logs rsyslog
sudo tee /etc/logrotate.d/rsyslog << 'EOF'
/var/log/syslog
/var/log/mail.info
/var/log/mail.warn
/var/log/mail.err
/var/log/mail.log
/var/log/daemon.log
/var/log/kern.log
/var/log/auth.log
/var/log/user.log
/var/log/lpr.log
/var/log/cron.log
/var/log/debug
/var/log/messages
{
    rotate 52
    weekly
    missingok
    notifempty
    compress
    delaycompress
    sharedscripts
    postrotate
        /usr/lib/rsyslog/rsyslog-rotate
    endscript
}
EOF

Valeur par défaut : Rotation basique configurée

Résultat : ☐ ✅ Conforme ☐ ❌ Non conforme ☐ ⚠️ Partiel ☐ N/A Commentaire de l’auditeur : _______________________________________________

5.2.1 — Installer et configurer auditd

Niveau : 🔴 Référence CIS : CIS Ubuntu 24.04 4.1.2.1 MITRE ATT&CK : T1562.006 (Impair Defenses: Indicator Blocking)

Description : Le démon auditd doit être installé et configuré pour enregistrer les événements de sécurité critiques du système. L’audit permet de détecter les activités malveillantes et de maintenir la traçabilité des actions administratives.

Vérification :

dpkg -s auditd | grep Status
systemctl is-enabled auditd
systemctl is-active auditd
auditctl -s

Remédiation :

# Installer auditd
sudo apt update && sudo apt install auditd audispd-plugins

# Activer et démarrer auditd
sudo systemctl enable auditd
sudo systemctl start auditd

Valeur par défaut : auditd non installé par défaut

Résultat : ☐ ✅ Conforme ☐ ❌ Non conforme ☐ ⚠️ Partiel ☐ N/A Commentaire de l’auditeur : _______________________________________________

5.2.2 — Configurer les règles d’audit pour les fichiers sensibles

Niveau : 🔴 Référence CIS : CIS Ubuntu 24.04 4.1.2.2 MITRE ATT&CK : T1562.006 (Impair Defenses: Indicator Blocking)

Description : Des règles d’audit spécifiques doivent être configurées pour surveiller l’accès et la modification des fichiers sensibles comme /etc/passwd, /etc/shadow, et les fichiers de configuration système critiques.

Vérification :

auditctl -l | grep -E '/etc/passwd|/etc/shadow|/etc/group'
cat /etc/audit/audit.rules | grep -E '/etc/passwd|/etc/shadow'

Remédiation :

# Ajouter les règles d'audit pour les fichiers sensibles
sudo tee -a /etc/audit/audit.rules << 'EOF'
# Surveillance des fichiers de comptes utilisateurs
-w /etc/passwd -p wa -k passwd_changes
-w /etc/shadow -p wa -k shadow_changes
-w /etc/group -p wa -k group_changes
-w /etc/gshadow -p wa -k gshadow_changes
-w /etc/security/opasswd -p wa -k opasswd_changes

# Surveillance des fichiers de configuration réseau
-w /etc/network/interfaces -p wa -k network_changes
-w /etc/hosts -p wa -k hosts_changes
-w /etc/hostname -p wa -k hostname_changes

# Surveillance des configurations système critiques
-w /etc/sudoers -p wa -k sudoers_changes
-w /etc/sudoers.d/ -p wa -k sudoers_changes
EOF

sudo service auditd restart

Valeur par défaut : Aucune règle d’audit configurée

Résultat : ☐ ✅ Conforme ☐ ❌ Non conforme ☐ ⚠️ Partiel ☐ N/A Commentaire de l’auditeur : _______________________________________________

5.2.3 — Configurer l’audit des commandes privilégiées

Niveau : 🔴 Référence CIS : CIS Ubuntu 24.04 4.1.2.3 MITRE ATT&CK : T1548 (Abuse Elevation Control Mechanism)

Description : Toutes les commandes exécutées avec des privilèges élevés (sudo, su, setuid) doivent être auditées. Cette surveillance permet de détecter les abus de privilèges et les tentatives d’élévation non autorisées.

Vérification :

find /usr/bin /usr/sbin /bin /sbin -perm -4000 -type f | head -10
auditctl -l | grep -E 'sudo|su'
grep -E 'sudo|su' /etc/audit/audit.rules

Remédiation :

# Audit des commandes sudo et su
sudo tee -a /etc/audit/audit.rules << 'EOF'
# Surveillance des commandes privilégiées
-w /usr/bin/sudo -p x -k sudo_commands
-w /bin/su -p x -k su_commands
-w /usr/bin/su -p x -k su_commands

# Audit des binaires setuid
-a always,exit -F arch=b64 -S execve -F euid=0 -F auid>=1000 -F auid!=4294967295 -k privileged_commands
-a always,exit -F arch=b32 -S execve -F euid=0 -F auid>=1000 -F auid!=4294967295 -k privileged_commands
EOF

sudo service auditd restart

Valeur par défaut : Commandes privilégiées non auditées

Résultat : ☐ ✅ Conforme ☐ ❌ Non conforme ☐ ⚠️ Partiel ☐ N/A Commentaire de l’auditeur : _______________________________________________

5.2.4 — Configurer l’audit des modifications de temps système

Niveau : 🟡 Référence CIS : CIS Ubuntu 24.04 4.1.2.4 MITRE ATT&CK : T1070.006 (Indicator Removal on Host: Timestomp)

Description : Les modifications de l’heure système doivent être auditées car elles peuvent être utilisées pour masquer des activités malveillantes ou contourner les mécanismes de sécurité basés sur le temps.

Vérification :

auditctl -l | grep -E 'time|clock'
grep -E 'time|clock' /etc/audit/audit.rules

Remédiation :

# Audit des modifications de temps
sudo tee -a /etc/audit/audit.rules << 'EOF'
# Surveillance des modifications de temps système
-a always,exit -F arch=b64 -S adjtimex -S settimeofday -k time_change
-a always,exit -F arch=b32 -S adjtimex -S settimeofday -S stime -k time_change
-a always,exit -F arch=b64 -S clock_settime -k time_change
-a always,exit -F arch=b32 -S clock_settime -k time_change
-w /etc/localtime -p wa -k time_change
EOF

sudo service auditd restart

Valeur par défaut : Modifications de temps non auditées

Résultat : ☐ ✅ Conforme ☐ ❌ Non conforme ☐ ⚠️ Partiel ☐ N/A Commentaire de l’auditeur : _______________________________________________

5.3.1 — Configurer l’audit des connexions et authentifications

Niveau : 🟠 Référence CIS : CIS Ubuntu 24.04 4.1.2.5 MITRE ATT&CK : T1078 (Valid Accounts)

Description : Toutes les tentatives de connexion et d’authentification doivent être enregistrées pour permettre la détection des tentatives d’accès non autorisées et l’analyse des patterns de connexion suspects.

Vérification :

grep -E 'session|login' /etc/audit/audit.rules
tail -20 /var/log/auth.log
auditctl -l | grep -E 'session|login'

Remédiation :

# Audit des sessions et authentifications
sudo tee -a /etc/audit/audit.rules << 'EOF'
# Surveillance des sessions utilisateur
-w /var/log/faillog -p wa -k logins
-w /var/log/lastlog -p wa -k logins
-w /var/log/tallylog -p wa -k logins

# Surveillance des modifications PAM
-w /etc/pam.d/ -p wa -k pam_changes
-w /etc/security/limits.conf -p wa -k pam_changes
EOF

sudo service auditd restart

Valeur par défaut : Authentifications partiellement loggées

Résultat : ☐ ✅ Conforme ☐ ❌ Non conforme ☐ ⚠️ Partiel ☐ N/A Commentaire de l’auditeur : _______________________________________________

5.3.2 — Configurer l’immutabilité des règles d’audit

Niveau : 🟠 Référence CIS : CIS Ubuntu 24.04 4.1.2.6 MITRE ATT&CK : T1562.006 (Impair Defenses: Indicator Blocking)

Description : Les règles d’audit doivent être rendues immutables pour empêcher leur modification par des attaquants. Une fois immutables, les règles ne peuvent plus être modifiées jusqu’au redémarrage du système.

Vérification :

auditctl -s | grep enabled
tail -5 /etc/audit/audit.rules | grep -e '-e 2'

Remédiation :

# Ajouter la règle d'immutabilité à la fin du fichier
echo '-e 2' | sudo tee -a /etc/audit/audit.rules

# Redémarrer auditd pour appliquer
sudo service auditd restart

Valeur par défaut : Règles d’audit modifiables

Résultat : ☐ ✅ Conforme ☐ ❌ Non conforme ☐ ⚠️ Partiel ☐ N/A Commentaire de l’auditeur : _______________________________________________

5.4.1 — Configurer la surveillance des montages et démontages

Niveau : 🟡 Référence CIS : CIS Ubuntu 24.04 4.1.2.7 MITRE ATT&CK : T1005 (Data from Local System)

Description : Les opérations de montage et démontage de systèmes de fichiers doivent être auditées car elles peuvent indiquer des tentatives d’accès à des données non autorisées ou l’introduction de supports amovibles malveillants.

Vérification :

auditctl -l | grep -E 'mount|umount'
grep -E 'mount|umount' /etc/audit/audit.rules

Remédiation :

# Audit des opérations de montage
sudo tee -a /etc/audit/audit.rules << 'EOF'
# Surveillance des montages et démontages
-a always,exit -F arch=b64 -S mount -k mounts
-a always,exit -F arch=b32 -S mount -k mounts
-a always,exit -F arch=b64 -S umount2 -k mounts
-a always,exit -F arch=b32 -S umount -S umount2 -k mounts
EOF

sudo service auditd restart

Valeur par défaut : Montages non audités

Résultat : ☐ ✅ Conforme ☐ ❌ Non conforme ☐ ⚠️ Partiel ☐ N/A Commentaire de l’auditeur : _______________________________________________

5.4.2 — Configurer l’audit des suppressions de fichiers

Niveau : 🟡 Référence CIS : CIS Ubuntu 24.04 4.1.2.8 MITRE ATT&CK : T1070.004 (Indicator Removal on Host: File Deletion)

Description : Les suppressions de fichiers doivent être auditées pour détecter les tentatives de destruction de preuves ou les suppressions accidentelles de données critiques.

Vérification :

auditctl -l | grep -E 'unlink|rename'
grep -E 'unlink|rename' /etc/audit/audit.rules

Remédiation :

# Audit des suppressions de fichiers
sudo tee -a /etc/audit/audit.rules << 'EOF'
# Surveillance des suppressions et renommages
-a always,exit -F arch=b64 -S unlink -S unlinkat -S rename -S renameat -k delete
-a always,exit -F arch=b32 -S unlink -S unlinkat -S rename -S renameat -k delete
EOF

sudo service auditd restart

Valeur par défaut : Suppressions non auditées

Résultat : ☐ ✅ Conforme ☐ ❌ Non conforme ☐ ⚠️ Partiel ☐ N/A Commentaire de l’auditeur : _______________________________________________

5.5.1 — Configurer la protection des fichiers de logs

Niveau : 🟠 Référence CIS : ANSSI R27 — Protection des journaux MITRE ATT&CK : T1070 (Indicator Removal on Host)

Description : Les fichiers de journaux doivent être protégés contre la modification et la suppression non autorisées. Des permissions appropriées et des mécanismes de protection d’intégrité doivent être mis en place.

Vérification :

ls -la /var/log/ | head -10
stat /var/log/auth.log
find /var/log -type f -perm /o+w

Remédiation :

# Sécuriser les permissions des logs
sudo find /var/log -type f -exec chmod g-wx,o-rwx {} +
sudo find /var/log -type d -exec chmod g-w,o-rwx {} +

# Définir l'owner approprié
sudo chown -R root:adm /var/log/

# Protéger spécifiquement certains logs critiques
sudo chmod 600 /var/log/auth.log
sudo chmod 600 /var/log/secure 2>/dev/null || true

Valeur par défaut : Permissions par défaut potentiellement trop permissives

Résultat : ☐ ✅ Conforme ☐ ❌ Non conforme ☐ ⚠️ Partiel ☐ N/A Commentaire de l’auditeur : _______________________________________________

5.5.2 — Configurer la surveillance en temps réel des logs

Niveau : 🟡 Référence CIS : ANSSI R27 — Surveillance des journaux MITRE ATT&CK : T1562.006 (Impair Defenses: Indicator Blocking)

Description : Une surveillance en temps réel des logs critiques doit être mise en place pour détecter rapidement les incidents de sécurité. Des alertes automatiques doivent être configurées pour les événements suspects.

Vérification :

systemctl is-active rsyslog
ps aux | grep -E 'logwatch|logcheck'
crontab -l | grep -E 'logwatch|logcheck'

Remédiation :

# Installer logwatch pour la surveillance
sudo apt update && sudo apt install logwatch

# Configurer logwatch pour les rapports quotidiens
sudo sed -i 's/^Output = .*/Output = mail/' /usr/share/logwatch/default.conf/logwatch.conf
sudo sed -i 's/^Format = .*/Format = html/' /usr/share/logwatch/default.conf/logwatch.conf
sudo sed -i 's/^Detail = .*/Detail = Med/' /usr/share/logwatch/default.conf/logwatch.conf

# Programmer l'exécution quotidienne
echo '0 1 * * * /usr/sbin/logwatch --output mail --mailto admin@domain.com' | sudo tee -a /etc/cron.daily/00logwatch

Valeur par défaut : Aucune surveillance automatique configurée

Résultat : ☐ ✅ Conforme ☐ ❌ Non conforme ☐ ⚠️ Partiel ☐ N/A Commentaire de l’auditeur : _______________________________________________

5.6.1 — Configurer la rétention à long terme des logs d’audit

Niveau : 🟢 Référence CIS : ANSSI R27 — Archivage des journaux MITRE ATT&CK : T1070 (Indicator Removal on Host)

Description : Les logs d’audit doivent être conservés pendant une durée suffisante pour répondre aux exigences réglementaires et permettre les investigations de sécurité. Un système d’archivage sécurisé doit être mis en place.

Vérification :

grep 'max_log_file' /etc/audit/auditd.conf
grep 'num_logs' /etc/audit/auditd.conf
df -h /var/log/audit/

Remédiation :

# Configurer la rétention des logs d'audit
sudo sed -i 's/^max_log_file = .*/max_log_file = 100/' /etc/audit/auditd.conf
sudo sed -i 's/^num_logs = .*/num_logs = 10/' /etc/audit/auditd.conf
sudo sed -i 's/^max_log_file_action = .*/max_log_file_action = rotate/' /etc/audit/auditd.conf

# Créer un script d'archivage
sudo tee /usr/local/bin/archive-audit-logs.sh << 'EOF'
ARCHIVE_DIR="/var/log/audit/archive"
mkdir -p $ARCHIVE_DIR
find /var/log/audit/ -name "audit.log.*" -mtime +30 -exec gzip {} \;
find /var/log/audit/ -name "audit.log.*.gz" -mtime +90 -exec mv {} $ARCHIVE_DIR/ \;
EOF

sudo chmod +x /usr/local/bin/archive-audit-logs.sh

Valeur par défaut : Rétention limitée des logs d’audit

Résultat : ☐ ✅ Conforme ☐ ❌ Non conforme ☐ ⚠️ Partiel ☐ N/A Commentaire de l’auditeur : _______________________________________________

S6 — GESTION DES COMPTES (20 contrôles)

6.1.1 — Définir l’expiration par défaut des comptes utilisateurs

Niveau : 🟠 Référence CIS : CIS Ubuntu 24.04 5.4.1.1 MITRE ATT&CK : T1078.003 (Valid Accounts: Local Accounts)

Description : Les comptes utilisateurs doivent avoir une date d’expiration définie pour éviter l’accumulation de comptes dormants qui pourraient être compromis. Cette mesure réduit la surface d’attaque en désactivant automatiquement les comptes inutilisés.

Vérification :

grep INACTIVE /etc/default/useradd
grep EXPIRE /etc/default/useradd
chage -l root | grep 'Account expires'

Remédiation :

# Définir l'inactivité par défaut (30 jours après expiration du mot de passe)
sudo sed -i 's/^INACTIVE=.*/INACTIVE=30/' /etc/default/useradd

# Ou si la ligne n'existe pas
echo 'INACTIVE=30' | sudo tee -a /etc/default/useradd

# Appliquer aux comptes existants si nécessaire
# sudo chage -I 30 username

Valeur par défaut : INACTIVE=-1 (pas d’expiration automatique)

Résultat : ☐ ✅ Conforme ☐ ❌ Non conforme ☐ ⚠️ Partiel ☐ N/A Commentaire de l’auditeur : _______________________________________________

6.1.2 — Configurer l’âge minimum des mots de passe par défaut

Niveau : 🟡 Référence CIS : CIS Ubuntu 24.04 5.4.1.2 MITRE ATT&CK : T1110.001 (Brute Force: Password Guessing)

Description : Un âge minimum pour les mots de passe doit être configuré pour empêcher les utilisateurs de changer rapidement leur mot de passe pour revenir à l’ancien. Cette mesure renforce l’efficacité des politiques de rotation des mots de passe.

Vérification :

grep PASS_MIN_DAYS /etc/login.defs
chage -l root | grep 'Minimum number of days'

Remédiation :

# Définir l'âge minimum à 1 jour
sudo sed -i 's/^PASS_MIN_DAYS.*/PASS_MIN_DAYS 1/' /etc/login.defs

# Appliquer aux comptes existants
for user in $(getent passwd | awk -F: '$3 >= 1000 && $3 < 65534 {print $1}'); do
    sudo chage -m 1 $user
done

Valeur par défaut : PASS_MIN_DAYS 0

Résultat : ☐ ✅ Conforme ☐ ❌ Non conforme ☐ ⚠️ Partiel ☐ N/A Commentaire de l’auditeur : _______________________________________________

6.1.3 — Configurer l’âge maximum des mots de passe

Niveau : 🟠 Référence CIS : CIS Ubuntu 24.04 5.4.1.3 MITRE ATT&CK : T1110 (Brute Force)

Description : Les mots de passe doivent expirer après une période définie pour réduire le risque d’utilisation prolongée de mots de passe compromis. L’âge maximum doit être équilibré entre sécurité et utilisabilité.

Vérification :

grep PASS_MAX_DAYS /etc/login.defs
chage -l root | grep 'Maximum number of days'

Remédiation :

# Définir l'âge maximum à 90 jours
sudo sed -i 's/^PASS_MAX_DAYS.*/PASS_MAX_DAYS 90/' /etc/login.defs

# Appliquer aux comptes existants
for user in $(getent passwd | awk -F: '$3 >= 1000 && $3 < 65534 {print $1}'); do
    sudo chage -M 90 $user
done

Valeur par défaut : PASS_MAX_DAYS 99999

Résultat : ☐ ✅ Conforme ☐ ❌ Non conforme ☐ ⚠️ Partiel ☐ N/A Commentaire de l’auditeur : _______________________________________________

6.1.4 — Configurer l’avertissement d’expiration des mots de passe

Niveau : 🟢 Référence CIS : CIS Ubuntu 24.04 5.4.1.4 MITRE ATT&CK : T1078 (Valid Accounts)

Description : Les utilisateurs doivent être avertis avant l’expiration de leur mot de passe pour éviter le verrouillage de compte et encourager le renouvellement proactif des mots de passe.

Vérification :

grep PASS_WARN_AGE /etc/login.defs
chage -l root | grep 'Number of days of warning'

Remédiation :

# Configurer l'avertissement 7 jours avant expiration
sudo sed -i 's/^PASS_WARN_AGE.*/PASS_WARN_AGE 7/' /etc/login.defs

# Appliquer aux comptes existants
for user in $(getent passwd | awk -F: '$3 >= 1000 && $3 < 65534 {print $1}'); do
    sudo chage -W 7 $user
done

Valeur par défaut : PASS_WARN_AGE 7

Résultat : ☐ ✅ Conforme ☐ ❌ Non conforme ☐ ⚠️ Partiel ☐ N/A Commentaire de l’auditeur : _______________________________________________

6.2.1 — Verrouiller les comptes système inutilisés

Niveau : 🟠 Référence CIS : CIS Ubuntu 24.04 5.4.2.1 MITRE ATT&CK : T1078.003 (Valid Accounts: Local Accounts)

Description : Les comptes système non utilisés doivent être verrouillés ou supprimés pour réduire la surface d’attaque. Ces comptes peuvent être exploités par des attaquants pour obtenir un accès initial au système.

Vérification :

awk -F: '($3 < 1000) {print $1 " : " $7}' /etc/passwd
grep -E '^[^:]*:[^!*]' /etc/shadow | cut -d: -f1

Remédiation :

# Verrouiller les comptes système avec shell
for user in games news uucp proxy www-data backup list irc gnats; do
    if getent passwd $user > /dev/null; then
        sudo usermod -L -s /usr/sbin/nologin $user 2>/dev/null
    fi
done

# Vérifier que root est le seul compte avec UID 0
awk -F: '($3 == 0) { print $1 }' /etc/passwd

Valeur par défaut : Comptes système avec shells actifs

Résultat : ☐ ✅ Conforme ☐ ❌ Non conforme ☐ ⚠️ Partiel ☐ N/A Commentaire de l’auditeur : _______________________________________________

6.2.2 — Vérifier l’unicité des UID utilisateurs

Niveau : 🟡 Référence CIS : CIS Ubuntu 24.04 5.4.2.2 MITRE ATT&CK : T1078.003 (Valid Accounts: Local Accounts)

Description : Chaque utilisateur doit avoir un UID unique pour assurer une identification et une autorisation correctes. Des UID dupliqués peuvent conduire à des privilèges non intentionnels et des problèmes de sécurité.

Vérification :

cut -f3 -d":" /etc/passwd | sort -n | uniq -c | awk '$1 > 1 {print $2}'
awk -F":" '{print $3}' /etc/passwd | sort | uniq -d

Remédiation :

# Script pour détecter les UID dupliqués
echo "Recherche d'UID dupliqués..."
cut -f3 -d":" /etc/passwd | sort -n | uniq -c | while read count uid; do
    if [ $count -gt 1 ]; then
        echo "UID dupliqué trouvé: $uid"
        awk -F":" -v uid="$uid" '$3 == uid {print "  - Utilisateur: " $1}' /etc/passwd
    fi
done

# Corriger manuellement les UID dupliqués avec usermod
# sudo usermod -u <nouveau_uid> <nom_utilisateur>

Valeur par défaut : UIDs généralement uniques sur installation propre

Résultat : ☐ ✅ Conforme ☐ ❌ Non conforme ☐ ⚠️ Partiel ☐ N/A Commentaire de l’auditeur : _______________________________________________

6.2.3 — Vérifier l’unicité des GID groupes

Niveau : 🟡 Référence CIS : CIS Ubuntu 24.04 5.4.2.3 MITRE ATT&CK : T1078.003 (Valid Accounts: Local Accounts)

Description : Chaque groupe doit avoir un GID unique pour assurer une gestion correcte des permissions. Des GID dupliqués peuvent créer des conflits de permissions et des vulnérabilités de sécurité.

Vérification :

cut -f3 -d":" /etc/group | sort -n | uniq -c | awk '$1 > 1 {print $2}'
awk -F":" '{print $3}' /etc/group | sort | uniq -d

Remédiation :

# Script pour détecter les GID dupliqués
echo "Recherche de GID dupliqués..."
cut -f3 -d":" /etc/group | sort -n | uniq -c | while read count gid; do
    if [ $count -gt 1 ]; then
        echo "GID dupliqué trouvé: $gid"
        awk -F":" -v gid="$gid" '$3 == gid {print "  - Groupe: " $1}' /etc/group
    fi
done

# Corriger manuellement les GID dupliqués avec groupmod
# sudo groupmod -g <nouveau_gid> <nom_groupe>

Valeur par défaut : GIDs généralement uniques sur installation propre

Résultat : ☐ ✅ Conforme ☐ ❌ Non conforme ☐ ⚠️ Partiel ☐ N/A Commentaire de l’auditeur : _______________________________________________

6.3.1 — Vérifier l’existence des répertoires home des utilisateurs

Niveau : 🟡 Référence CIS : CIS Ubuntu 24.04 5.4.3.1 MITRE ATT&CK : T1083 (File and Directory Discovery)

Description : Tous les utilisateurs définis dans /etc/passwd doivent avoir un répertoire home existant et accessible. Les répertoires manquants peuvent indiquer des problèmes de configuration ou des comptes corrompus.

Vérification :

awk -F: '($3 >= 1000) && ($1 != "nobody") {print $1 " : " $6}' /etc/passwd | while IFS=':' read user home; do
    if [ ! -d "$home" ]; then
        echo "Répertoire home manquant pour $user: $home"
    fi
done

Remédiation :

# Créer les répertoires home manquants
awk -F: '($3 >= 1000) && ($1 != "nobody") {print $1 " " $6}' /etc/passwd | while read user home; do
    if [ ! -d "$home" ]; then
        sudo mkdir -p "$home"
        sudo chown $user:$user "$home"
        sudo chmod 750 "$home"
        
        # Copier les fichiers de squelette si nécessaire
        sudo cp -r /etc/skel/. "$home/"
        sudo chown -R $user:$user "$home"
    fi
done

Valeur par défaut : Répertoires home créés à la création du compte

Résultat : ☐ ✅ Conforme ☐ ❌ Non conforme ☐ ⚠️ Partiel ☐ N/A Commentaire de l’auditeur : _______________________________________________

6.3.2 — Vérifier les permissions des répertoires home

Niveau : 🟠 Référence CIS : CIS Ubuntu 24.04 5.4.3.2 MITRE ATT&CK : T1083 (File and Directory Discovery)

Description : Les répertoires home des utilisateurs doivent avoir des permissions appropriées pour empêcher l’accès non autorisé aux fichiers personnels. Les permissions trop permissives exposent les données sensibles des utilisateurs.

Vérification :

awk -F: '($3 >= 1000) && ($1 != "nobody") {print $6}' /etc/passwd | while read home; do
    if [ -d "$home" ]; then
        ls -ld "$home"
    fi
done

Remédiation :

# Corriger les permissions des répertoires home
awk -F: '($3 >= 1000) && ($1 != "nobody") {print $1 " " $6}' /etc/passwd | while read user home; do
    if [ -d "$home" ]; then
        # Retirer les permissions pour group et other
        sudo chmod g-w,o-rwx "$home"
        
        # S'assurer que l'utilisateur est propriétaire
        sudo chown $user:$user "$home"
    fi
done

Valeur par défaut : Permissions 755 par défaut (trop permissives)

Résultat : ☐ ✅ Conforme ☐ ❌ Non conforme ☐ ⚠️ Partiel ☐ N/A Commentaire de l’auditeur : _______________________________________________

6.4.1 — Vérifier les fichiers .netrc dans les répertoires home

Niveau : 🟡 Référence CIS : CIS Ubuntu 24.04 5.4.4.1 MITRE ATT&CK : T1552.001 (Unsecured Credentials: Credentials In Files)

Description : Les fichiers .netrc contiennent des identifiants en clair et présentent un risque de sécurité. Ils doivent être supprimés ou sécurisés avec des permissions appropriées s’ils sont nécessaires.

Vérification :

find /home -name ".netrc" -type f 2>/dev/null
awk -F: '($3 >= 1000) && ($1 != "nobody") {print $6}' /etc/passwd | while read home; do
    if [ -f "$home/.netrc" ]; then
        ls -la "$home/.netrc"
    fi
done

Remédiation :

# Supprimer ou sécuriser les fichiers .netrc
find /home -name ".netrc" -type f 2>/dev/null | while read netrc_file; do
    echo "Fichier .netrc trouvé: $netrc_file"
    
    # Option 1: Supprimer (recommandé)
    # sudo rm "$netrc_file"
    
    # Option 2: Sécuriser si nécessaire
    sudo chmod 600 "$netrc_file"
    
    # Avertir le propriétaire
    owner=$(stat -c %U "$netrc_file")
    echo "ATTENTION: $owner a un fichier .netrc avec des identifiants en clair"
done

Valeur par défaut : Pas de fichiers .netrc par défaut

Résultat : ☐ ✅ Conforme ☐ ❌ Non conforme ☐ ⚠️ Partiel ☐ N/A Commentaire de l’auditeur : _______________________________________________

6.4.2 — Vérifier les fichiers .rhosts dans les répertoires home

Niveau : 🔴 Référence CIS : CIS Ubuntu 24.04 5.4.4.2 MITRE ATT&CK : T1021.004 (Remote Services: SSH)

Description : Les fichiers .rhosts permettent l’authentification sans mot de passe et présentent un risque de sécurité majeur. Ils doivent être supprimés car ils peuvent être exploités pour des accès non autorisés.

Vérification :

find /home -name ".rhosts" -type f 2>/dev/null
awk -F: '($3 >= 1000) && ($1 != "nobody") {print $6}' /etc/passwd | while read home; do
    if [ -f "$home/.rhosts" ]; then
        ls -la "$home/.rhosts"
    fi
done

Remédiation :

# Supprimer tous les fichiers .rhosts
find /home -name ".rhosts" -type f -delete 2>/dev/null

# Rechercher aussi dans les répertoires système
find /root -name ".rhosts" -type f -delete 2>/dev/null

# Vérifier la suppression
find /home /root -name ".rhosts" -type f 2>/dev/null

Valeur par défaut : Pas de fichiers .rhosts par défaut

Résultat : ☐ ✅ Conforme ☐ ❌ Non conforme ☐ ⚠️ Partiel ☐ N/A Commentaire de l’auditeur : _______________________________________________

6.5.1 — Auditer les groupes dans /etc/passwd vs /etc/group

Niveau : 🟡 Référence CIS : CIS Ubuntu 24.04 5.4.5.1 MITRE ATT&CK : T1078 (Valid Accounts)

Description : Tous les groupes référencés dans /etc/passwd doivent exister dans /etc/group. Les références vers des groupes inexistants peuvent causer des problèmes de permissions et de sécurité.

Vérification :

for group in $(awk -F: '{print $4}' /etc/passwd | sort -u); do
    if ! getent group $group >/dev/null; then
        echo "Groupe manquant: $group"
    fi
done

Remédiation :

# Créer les groupes manquants ou corriger les références
for group in $(awk -F: '{print $4}' /etc/passwd | sort -u); do
    if ! getent group $group >/dev/null; then
        echo "Création du groupe manquant: $group"
        sudo groupadd -g $group $group 2>/dev/null || echo "Erreur lors de la création du groupe $group"
    fi
done

# Vérifier les utilisateurs affectés par des groupes manquants
awk -F: '{print $1 " : " $4}' /etc/passwd | while IFS=':' read user gid; do
    if ! getent group $gid >/dev/null; then
        echo "Utilisateur $user référence le groupe inexistant $gid"
    fi
done

Valeur par défaut : Cohérence généralement maintenue sur installation propre

Résultat : ☐ ✅ Conforme ☐ ❌ Non conforme ☐ ⚠️ Partiel ☐ N/A Commentaire de l’auditeur : _______________________________________________

6.5.2 — Vérifier l’absence de comptes avec des mots de passe vides

Niveau : 🔴 Référence CIS : CIS Ubuntu 24.04 5.4.5.2 MITRE ATT&CK : T1078.003 (Valid Accounts: Local Accounts)

Description : Aucun compte ne doit avoir un mot de passe vide. Les mots de passe vides permettent un accès non autorisé immédiat au système et représentent une vulnérabilité critique.

Vérification :

awk -F: '($2 == "") {print $1}' /etc/shadow
getent shadow | awk -F: '($2 == "") {print $1}'

Remédiation :

# Identifier et verrouiller les comptes avec mots de passe vides
awk -F: '($2 == "") {print $1}' /etc/shadow | while read user; do
    echo "ATTENTION: Utilisateur $user a un mot de passe vide"
    
    # Verrouiller le compte immédiatement
    sudo usermod -L $user
    
    # Forcer la définition d'un mot de passe au prochain login
    sudo chage -d 0 $user
done

# Vérifier qu'aucun compte n'a de mot de passe vide
if awk -F: '($2 == "") {print $1}' /etc/shadow | grep -q .; then
    echo "ERREUR: Des comptes avec mots de passe vides existent encore"
else
    echo "OK: Aucun compte avec mot de passe vide détecté"
fi

Valeur par défaut : Mots de passe requis lors de la création de comptes

Résultat : ☐ ✅ Conforme ☐ ❌ Non conforme ☐ ⚠️ Partiel ☐ N/A Commentaire de l’auditeur : _______________________________________________

6.6.1 — Configurer la politique de verrouillage de compte

Niveau : 🟠 Référence CIS : ANSSI R9 — Robustesse de l’authentification MITRE ATT&CK : T1110 (Brute Force)

Description : Une politique de verrouillage automatique des comptes doit être configurée pour protéger contre les attaques par brute force. Le verrouillage doit être temporaire et permettre le déverrouillage administratif.

Vérification :

grep pam_faillock /etc/pam.d/common-auth
grep pam_faillock /etc/pam.d/common-account
cat /etc/security/faillock.conf 2>/dev/null

Remédiation :

# Installer et configurer pam_faillock
sudo apt update && sudo apt install libpam-modules

# Configurer faillock dans common-auth
sudo sed -i '/^auth.*pam_unix.so/i auth required pam_faillock.so preauth' /etc/pam.d/common-auth
sudo sed -i '/^auth.*pam_unix.so/a auth [default=die] pam_faillock.so authfail' /etc/pam.d/common-auth

# Configurer faillock dans common-account
sudo sed -i '/^account.*pam_unix.so/i account required pam_faillock.so' /etc/pam.d/common-account

# Créer la configuration faillock
sudo tee /etc/security/faillock.conf << 'EOF'
# Politique de verrouillage de comptes
deny = 5
fail_interval = 900
unlock_time = 900
even_deny_root
root_unlock_time = 300
EOF

Valeur par défaut : Pas de politique de verrouillage configurée

Résultat : ☐ ✅ Conforme ☐ ❌ Non conforme ☐ ⚠️ Partiel ☐ N/A Commentaire de l’auditeur : _______________________________________________

6.6.2 — Surveiller et auditer les connexions utilisateurs

Niveau : 🟡 Référence CIS : ANSSI R27 — Journalisation des événements MITRE ATT&CK : T1078 (Valid Accounts)

Description : Toutes les connexions utilisateurs doivent être surveillées et auditées pour détecter les accès non autorisés et les patterns de connexion suspects. Un historique des connexions doit être maintenu.

Vérification :

last -n 20
lastlog | head -20
who -a
grep -i 'session opened' /var/log/auth.log | tail -10

Remédiation :

# Configurer la journalisation des connexions
echo 'session required pam_lastlog.so showfailed' | sudo tee -a /etc/pam.d/common-session

# Script de surveillance des connexions
sudo tee /usr/local/bin/monitor-logins.sh << 'EOF'
LOG_FILE="/var/log/login-monitor.log"

# Analyser les connexions des dernières 24h
echo "$(date): Analyse des connexions" >> $LOG_FILE
last -s -24hours | grep -v 'wtmp begins' >> $LOG_FILE

# Détecter les connexions suspectes (horaires inhabituels, IPs étrangères)
grep "$(date +%b' '%d)" /var/log/auth.log | grep 'session opened' | while read line; do
    if echo $line | grep -E '(0[0-5]:|2[2-3]:)' >/dev/null; then
        echo "Connexion hors heures détectée: $line" >> $LOG_FILE
    fi
done
EOF

sudo chmod +x /usr/local/bin/monitor-logins.sh

# Programmer l'exécution quotidienne
echo '0 6 * * * /usr/local/bin/monitor-logins.sh' | sudo tee -a /etc/crontab

Valeur par défaut : Journalisation basique des connexions

Résultat : ☐ ✅ Conforme ☐ ❌ Non conforme ☐ ⚠️ Partiel ☐ N/A Commentaire de l’auditeur : _______________________________________________

S7 — AUTHENTIFICATION PAM (20 contrôles)

7.1.1 — Configurer la politique de complexité des mots de passe avec pam_pwquality

Niveau : 🟠 Référence CIS : CIS Ubuntu 24.04 5.3.1 MITRE ATT&CK : T1110.001 (Brute Force: Password Guessing)

Description : Le module pam_pwquality doit être configuré pour imposer des mots de passe complexes et résistants aux attaques. Cette politique doit équilibrer sécurité et utilisabilité pour encourager l’adoption de mots de passe forts.

Vérification :

grep pam_pwquality /etc/pam.d/common-password
cat /etc/security/pwquality.conf | grep -v '^#' | grep -v '^$'

Remédiation :

# Installer pam_pwquality si nécessaire
sudo apt update && sudo apt install libpam-pwquality

# Configurer pam_pwquality dans common-password
sudo sed -i 's/^password.*pam_unix.so.*/password requisite pam_pwquality.so retry=3
password [success=1 default=ignore] pam_unix.so obscure use_authtok try_first_pass sha512/' /etc/pam.d/common-password

# Configurer la politique de complexité
sudo tee /etc/security/pwquality.conf << 'EOF'
# Politique de complexité des mots de passe
minlen = 12
minclass = 3
maxrepeat = 2
dcredit = -1
ucredit = -1
lcredit = -1
ocredit = -1
difok = 3
gecoscheck = 1
badwords = password 123456 qwerty admin root
dictcheck = 1
usercheck = 1
enforcing = 1
EOF

Valeur par défaut : Politique de complexité minimale

Résultat : ☐ ✅ Conforme ☐ ❌ Non conforme ☐ ⚠️ Partiel ☐ N/A Commentaire de l’auditeur : _______________________________________________

7.1.2 — Configurer l’historique des mots de passe avec pam_pwhistory

Niveau : 🟡 Référence CIS : CIS Ubuntu 24.04 5.3.2 MITRE ATT&CK : T1110 (Brute Force)

Description : Le module pam_pwhistory doit empêcher la réutilisation des anciens mots de passe pour éviter les cycles de mots de passe faibles. Un historique de 12-24 mots de passe précédents doit être maintenu.

Vérification :

grep pam_pwhistory /etc/pam.d/common-password
ls -la /etc/security/opasswd

Remédiation :

# Configurer pam_pwhistory
sudo sed -i '/pam_pwquality.so/a password required pam_pwhistory.so remember=12 use_authtok' /etc/pam.d/common-password

# Créer le fichier d'historique avec les bonnes permissions
sudo touch /etc/security/opasswd
sudo chmod 600 /etc/security/opasswd
sudo chown root:root /etc/security/opasswd

Valeur par défaut : Pas d’historique de mots de passe configuré

Résultat : ☐ ✅ Conforme ☐ ❌ Non conforme ☐ ⚠️ Partiel ☐ N/A Commentaire de l’auditeur : _______________________________________________

7.2.1 — Configurer les délais de verrouillage avec pam_faillock

Niveau : �� Référence CIS : CIS Ubuntu 24.04 5.3.3 MITRE ATT&CK : T1110 (Brute Force)

Description : Le module pam_faillock doit être configuré pour verrouiller temporairement les comptes après plusieurs tentatives d’authentification échouées. Cette protection est essentielle contre les attaques par brute force.

Vérification :

grep pam_faillock /etc/pam.d/common-auth
grep pam_faillock /etc/pam.d/common-account
cat /etc/security/faillock.conf

Remédiation :

# Configuration avancée de faillock
sudo tee /etc/security/faillock.conf << 'EOF'
# Configuration détaillée du verrouillage de comptes
audit
silent
no_log_info
local_users_only
deny = 5
fail_interval = 900
unlock_time = 900
even_deny_root
root_unlock_time = 300
admin_group = wheel
EOF

# Vérifier la configuration dans PAM
grep -q 'pam_faillock.so preauth' /etc/pam.d/common-auth ||     sudo sed -i '/^auth.*pam_unix.so/i auth required pam_faillock.so preauth' /etc/pam.d/common-auth

Valeur par défaut : Pas de verrouillage automatique configuré

Résultat : ☐ ✅ Conforme ☐ ❌ Non conforme ☐ ⚠️ Partiel ☐ N/A Commentaire de l’auditeur : _______________________________________________

7.2.2 — Configurer pam_tally2 comme protection supplémentaire

Niveau : 🟡 Référence CIS : ANSSI R9 — Robustesse de l’authentification MITRE ATT&CK : T1110 (Brute Force)

Description : En complément de pam_faillock, pam_tally2 peut fournir une protection additionnelle contre les attaques par brute force avec des fonctionnalités de comptage et de reset des tentatives.

Vérification :

grep pam_tally2 /etc/pam.d/common-auth 2>/dev/null
grep pam_tally2 /etc/pam.d/common-account 2>/dev/null

Remédiation :

# Note: pam_tally2 est dépréciée, utiliser pam_faillock à la place
# Cette configuration est montrée pour la compatibilité legacy

# Si pam_tally2 doit être utilisée (non recommandé)
# sudo sed -i '/^auth.*pam_unix.so/i auth required pam_tally2.so onerr=fail audit silent deny=5 unlock_time=900' /etc/pam.d/common-auth
# sudo sed -i '/^account.*pam_unix.so/i account required pam_tally2.so' /etc/pam.d/common-account

echo "RECOMMANDATION: Utiliser pam_faillock au lieu de pam_tally2"

Valeur par défaut : pam_tally2 non configuré (dépréciée)

Résultat : ☐ ✅ Conforme ☐ ❌ Non conforme ☐ ⚠️ Partiel ☐ N/A Commentaire de l’auditeur : _______________________________________________

7.3.1 — Configurer les limites de ressources avec pam_limits

Niveau : 🟡 Référence CIS : CIS Ubuntu 24.04 5.3.4 MITRE ATT&CK : T1499 (Endpoint Denial of Service)

Description : Le module pam_limits doit être configuré pour prévenir les attaques de déni de service en limitant les ressources système utilisables par chaque utilisateur ou groupe.

Vérification :

grep pam_limits /etc/pam.d/common-session
cat /etc/security/limits.conf | grep -v '^#' | grep -v '^$'
ls -la /etc/security/limits.d/

Remédiation :

# Activer pam_limits dans PAM
grep -q 'pam_limits.so' /etc/pam.d/common-session ||     echo 'session required pam_limits.so' | sudo tee -a /etc/pam.d/common-session

# Configurer les limites de ressources
sudo tee /etc/security/limits.d/90-security.conf << 'EOF'
# Limites de sécurité pour prévenir les attaques DoS

# Limites pour les utilisateurs normaux
*               soft    nproc           1024
*               hard    nproc           2048
*               soft    nofile          1024
*               hard    nofile          4096
*               soft    fsize           102400
*               hard    fsize           204800
*               soft    cpu             60
*               hard    cpu             120

# Limites spécifiques pour root
root            soft    nproc           unlimited
root            hard    nproc           unlimited
root            soft    nofile          unlimited
root            hard    nofile          unlimited

# Limites pour les services système
@users          hard    core            0
@users          soft    maxlogins       4
EOF

Valeur par défaut : Limites système par défaut généralement permissives

Résultat : ☐ ✅ Conforme ☐ ❌ Non conforme ☐ ⚠️ Partiel ☐ N/A Commentaire de l’auditeur : _______________________________________________

7.4.1 — Configurer pam_wheel pour restreindre l’accès su

Niveau : 🟠 Référence CIS : CIS Ubuntu 24.04 5.3.5 MITRE ATT&CK : T1548.003 (Abuse Elevation Control Mechanism: Sudo and Sudo Caching)

Description : Le module pam_wheel doit être configuré pour restreindre l’utilisation de la commande su aux seuls membres du groupe wheel, réduisant ainsi les risques d’élévation de privilèges non autorisée.

Vérification :

grep pam_wheel /etc/pam.d/su
getent group wheel
id root | grep wheel

Remédiation :

# Créer le groupe wheel s'il n'existe pas
sudo groupadd wheel 2>/dev/null || echo "Groupe wheel existe déjà"

# Ajouter root au groupe wheel
sudo usermod -aG wheel root

# Configurer pam_wheel dans su
sudo sed -i 's/^#.*auth.*required.*pam_wheel.so.*/auth required pam_wheel.so use_uid/' /etc/pam.d/su

# Ou ajouter la ligne si elle n'existe pas
grep -q 'pam_wheel.so' /etc/pam.d/su ||     sudo sed -i '/^auth.*sufficient.*pam_rootok.so/a auth required pam_wheel.so use_uid' /etc/pam.d/su

Valeur par défaut : su accessible à tous les utilisateurs

Résultat : ☐ ✅ Conforme ☐ ❌ Non conforme ☐ ⚠️ Partiel ☐N/A Commentaire de l’auditeur : _______________________________________________

7.4.2 — Configurer les restrictions de temps avec pam_time

Niveau : 🟡 Référence CIS : ANSSI R9 — Contrôle d’accès temporel MITRE ATT&CK : T1078 (Valid Accounts)

Description : Le module pam_time peut être utilisé pour restreindre les connexions selon des plages horaires spécifiques, ajoutant une couche de sécurité temporelle aux accès utilisateurs.

Vérification :

grep pam_time /etc/pam.d/common-account
cat /etc/security/time.conf | grep -v '^#' | grep -v '^$'

Remédiation :

# Activer pam_time
echo 'account required pam_time.so' | sudo tee -a /etc/pam.d/common-account

# Configurer les restrictions temporelles
sudo tee /etc/security/time.conf << 'EOF'
# Restrictions temporelles pour les connexions

# Exemple: utilisateurs normaux seulement en heures de bureau
services:*;*;users;Mo0800-1800|Tu0800-1800|We0800-1800|Th0800-1800|Fr0800-1800

# Admin toujours autorisé (exemple)
# services:*;*;wheel;Al0000-2400

# SSH restreint la nuit pour les utilisateurs normaux
EOF

Valeur par défaut : Aucune restriction temporelle configurée

Résultat : ☐ ✅ Conforme ☐ ❌ Non conforme ☐ ⚠️ Partiel ☐ N/A Commentaire de l’auditeur : _______________________________________________

7.5.1 — Configurer l’authentification à deux facteurs avec pam_google_authenticator

Niveau : 🟡 Référence CIS : ANSSI R9 — Authentification forte MITRE ATT&CK : T1078 (Valid Accounts)

Description : L’authentification à deux facteurs (2FA) avec Google Authenticator ajoute une couche de sécurité supplémentaire en requérant un code temporaire en plus du mot de passe traditionnel.

Vérification :

dpkg -l | grep google-authenticator
grep pam_google_authenticator /etc/pam.d/sshd 2>/dev/null

Remédiation :

# Installer Google Authenticator PAM
sudo apt update && sudo apt install libpam-google-authenticator

# Configurer pour SSH (optionnel, nécessite configuration utilisateur)
# sudo sed -i 's/^@include common-auth/auth required pam_google_authenticator.so
@include common-auth/' /etc/pam.d/sshd

# Configuration dans sshd_config (si activé)
# sudo sed -i 's/^ChallengeResponseAuthentication no/ChallengeResponseAuthentication yes/' /etc/ssh/sshd_config
# sudo sed -i 's/^AuthenticationMethods.*/AuthenticationMethods publickey,keyboard-interactive/' /etc/ssh/sshd_config

echo "CONFIGURATION MANUELLE REQUISE:"
echo "1. Chaque utilisateur doit exécuter: google-authenticator"
echo "2. Configurer l'application mobile"
echo "3. Ajuster /etc/pam.d/sshd selon les besoins"

Valeur par défaut : 2FA non configuré

Résultat : ☐ ✅ Conforme ☐ ❌ Non conforme ☐ ⚠️ Partiel ☐ N/A Commentaire de l’auditeur : _______________________________________________

7.6.1 — Auditer et nettoyer la configuration PAM

Niveau : 🟢 Référence CIS : ANSSI — Audit de configuration MITRE ATT&CK : T1556.003 (Modify Authentication Process: Pluggable Authentication Modules)

Description : La configuration PAM doit être régulièrement auditée pour identifier les modules inutiles, les configurations obsolètes ou les vulnérabilités potentielles. Une documentation des modules actifs doit être maintenue.

Vérification :

find /etc/pam.d -type f -exec grep -l 'auth\|account\|password\|session' {} \;
ls -la /etc/pam.d/ | wc -l
pam-auth-update --package

Remédiation :

# Script d'audit de la configuration PAM
sudo tee /usr/local/bin/audit-pam.sh << 'EOF'
echo "=== AUDIT PAM - $(date) ==="

echo "
1. Fichiers de configuration PAM:"
ls -la /etc/pam.d/ | grep -v total

echo "
2. Modules PAM utilisés:"
grep -h '^[^#]' /etc/pam.d/* | grep -E 'pam_[a-z_]+\.so' |     sed 's/.*pam_\([a-z_]*\)\.so.*/pam_/' | sort | uniq -c | sort -nr

echo "
3. Modules potentiellement dangereux:"
grep -r 'pam_permit\|pam_rootok' /etc/pam.d/ 2>/dev/null || echo "Aucun module dangereux détecté"

echo "
4. Configuration de sécurité critique:"
echo "  - Faillock:"
grep -c pam_faillock /etc/pam.d/common-auth
echo "  - Pwquality:"
grep -c pam_pwquality /etc/pam.d/common-password
echo "  - Limits:"
grep -c pam_limits /etc/pam.d/common-session

echo "
5. Fichiers de configuration modifiés récemment:"
find /etc/pam.d -type f -mtime -7 -ls
EOF

sudo chmod +x /usr/local/bin/audit-pam.sh

# Exécuter l'audit
sudo /usr/local/bin/audit-pam.sh

Valeur par défaut : Configuration PAM de base Ubuntu

Résultat : ☐ ✅ Conforme ☐ ❌ Non conforme ☐ ⚠️ Partiel ☐ N/A Commentaire de l’auditeur : _______________________________________________

S8 — POLITIQUES DE MOT DE PASSE (15 contrôles)

8.1.1 — Configurer la longueur minimale des mots de passe

Niveau : 🟠 Référence CIS : CIS Ubuntu 24.04 5.3.1 MITRE ATT&CK : T1110.001 (Brute Force: Password Guessing)

Description : Une longueur minimale de mot de passe doit être imposée pour résister aux attaques par force brute. La longueur recommandée est de 12 caractères minimum pour équilibrer sécurité et utilisabilité.

Vérification :

grep minlen /etc/security/pwquality.conf
grep PASS_MIN_LEN /etc/login.defs

Remédiation :

sudo sed -i 's/^# minlen = 8/minlen = 12/' /etc/security/pwquality.conf
sudo sed -i 's/^PASS_MIN_LEN.*/PASS_MIN_LEN 12/' /etc/login.defs

Valeur par défaut : 8 caractères

8.1.2 — Imposer la complexité des mots de passe

Niveau : 🟠 Référence CIS : CIS Ubuntu 24.04 5.3.1 MITRE ATT&CK : T1110.001 (Brute Force: Password Guessing)

Description : Les mots de passe doivent contenir différents types de caractères pour augmenter leur entropie et résister aux attaques par dictionnaire.

Vérification :

grep -E '^(d|u|l|o)credit' /etc/security/pwquality.conf

Remédiation :

sudo tee -a /etc/security/pwquality.conf << 'EOF'
dcredit = -1
ucredit = -1  
lcredit = -1
ocredit = -1
minclass = 3
EOF

Valeur par défaut : Complexité basique

8.2.1 — Configurer l’historique des mots de passe

Niveau : 🟡 Référence CIS : CIS Ubuntu 24.04 5.3.2 MITRE ATT&CK : T1110 (Brute Force)

Description : Empêcher la réutilisation des 12 derniers mots de passe pour éviter les cycles de mots de passe faibles.

Vérification :

grep remember /etc/pam.d/common-password

Remédiation :

sudo sed -i '/pam_unix.so/s/$/ remember=12/' /etc/pam.d/common-password

Valeur par défaut : Pas d’historique

8.3.1 — Bloquer les mots de passe communs

Niveau : 🟡 Référence CIS : ANSSI R9 MITRE ATT&CK : T1110.001 (Brute Force: Password Guessing)

Description : Empêcher l’utilisation de mots de passe couramment utilisés et facilement devinables.

Vérification :

grep dictcheck /etc/security/pwquality.conf
grep badwords /etc/security/pwquality.conf

Remédiation :

sudo sed -i 's/# dictcheck = 1/dictcheck = 1/' /etc/security/pwquality.conf
echo 'badwords = password 123456 qwerty admin root' | sudo tee -a /etc/security/pwquality.conf

Valeur par défaut : Vérification dictionnaire désactivée

S9 — PERMISSIONS FICHIERS (20 contrôles)

9.1.1 — Vérifier les permissions des fichiers système critiques

Niveau : 🔴 Référence CIS : CIS Ubuntu 24.04 6.1.1 MITRE ATT&CK : T1078 (Valid Accounts)

Description : Les fichiers système critiques doivent avoir des permissions appropriées pour empêcher les modifications non autorisées.

Vérification :

stat /etc/passwd /etc/shadow /etc/group /etc/gshadow

Remédiation :

sudo chmod 644 /etc/passwd
sudo chmod 640 /etc/shadow
sudo chmod 644 /etc/group
sudo chmod 640 /etc/gshadow
sudo chown root:root /etc/passwd /etc/group
sudo chown root:shadow /etc/shadow /etc/gshadow

Valeur par défaut : Permissions correctes sur installation propre

9.1.2 — Auditer les fichiers avec permissions SUID/SGID

Niveau : 🟠 Référence CIS : CIS Ubuntu 24.04 6.1.2 MITRE ATT&CK : T1548.001 (Abuse Elevation Control Mechanism: Setuid and Setgid)

Description : Les fichiers SUID/SGID doivent être régulièrement auditées car ils peuvent être exploités pour l’élévation de privilèges.

Vérification :

find / -perm -4000 -type f 2>/dev/null | head -20
find / -perm -2000 -type f 2>/dev/null | head -20

Remédiation :

# Créer une liste de référence des fichiers SUID/SGID légitimes
find / -perm -4000 -o -perm -2000 -type f 2>/dev/null | sort > /var/log/suid-sgid-files.baseline
# Comparer régulièrement avec cette baseline

Valeur par défaut : Fichiers SUID/SGID système standards

9.2.1 — Sécuriser les répertoires world-writable

Niveau : 🟠 Référence CIS : CIS Ubuntu 24.04 6.1.3 MITRE ATT&CK : T1222 (File and Directory Permissions Modification)

Description : Les répertoires world-writable doivent avoir le sticky bit pour empêcher les utilisateurs de supprimer les fichiers d’autres utilisateurs.

Vérification :

find / -type d -perm -002 ! -perm -1000 2>/dev/null

Remédiation :

find / -type d -perm -002 ! -perm -1000 -exec chmod +t {} \; 2>/dev/null

Valeur par défaut : /tmp et /var/tmp ont généralement le sticky bit

S10 — INTÉGRITÉ SYSTÈME (15 contrôles)

10.1.1 — Installer et configurer AIDE

Niveau : 🟡 Référence CIS : CIS Ubuntu 24.04 1.4.1 MITRE ATT&CK : T1565 (Data Manipulation)

Description : AIDE (Advanced Intrusion Detection Environment) doit être installé pour surveiller l’intégrité des fichiers système et détecter les modifications non autorisées.

Vérification :

dpkg -l aide
ls -la /var/lib/aide/

Remédiation :

sudo apt update && sudo apt install aide
sudo aideinit
sudo mv /var/lib/aide/aide.db.new /var/lib/aide/aide.db

Valeur par défaut : AIDE non installé par défaut

10.1.2 — Configurer la vérification régulière d’intégrité

Niveau : 🟡 Référence CIS : CIS Ubuntu 24.04 1.4.2 MITRE ATT&CK : T1070 (Indicator Removal on Host)

Description : Des vérifications automatiques d’intégrité doivent être programmées pour détecter rapidement les compromissions système.

Vérification :

crontab -l | grep aide
cat /etc/cron.d/aide 2>/dev/null

Remédiation :

echo '0 5 * * * /usr/bin/aide --check' | sudo tee /etc/cron.d/aide-check
sudo chmod 644 /etc/cron.d/aide-check

Valeur par défaut : Pas de vérification automatique configurée

S11 — SSH (25 contrôles)

11.1.1 — Configurer SSH Protocol 2 uniquement

Niveau : 🔴 Référence CIS : CIS Ubuntu 24.04 5.2.1 MITRE ATT&CK : T1021.004 (Remote Services: SSH)

Description : SSH doit être configuré pour utiliser uniquement le protocole version 2, qui est plus sécurisé que la version 1.

Vérification :

sshd -T | grep protocol
grep -i protocol /etc/ssh/sshd_config

Remédiation :

sudo sed -i 's/^#Protocol.*/Protocol 2/' /etc/ssh/sshd_config
sudo systemctl reload sshd

Valeur par défaut : Protocol 2 par défaut sur Ubuntu 24.04

11.1.2 — Désactiver l’authentification par mot de passe root SSH

Niveau : 🔴 Référence CIS : CIS Ubuntu 24.04 5.2.2 MITRE ATT&CK : T1078.003 (Valid Accounts: Local Accounts)

Description : L’authentification SSH directe en tant que root doit être désactivée pour forcer l’utilisation de comptes nominatifs et sudo.

Vérification :

sshd -T | grep permitrootlogin
grep -i PermitRootLogin /etc/ssh/sshd_config

Remédiation :

sudo sed -i 's/^#PermitRootLogin.*/PermitRootLogin no/' /etc/ssh/sshd_config
sudo sed -i 's/^PermitRootLogin.*/PermitRootLogin no/' /etc/ssh/sshd_config
sudo systemctl reload sshd

Valeur par défaut : PermitRootLogin prohibit-password

11.2.1 — Configurer des algorithmes de chiffrement forts

Niveau : 🟠 Référence CIS : CIS Ubuntu 24.04 5.2.3 MITRE ATT&CK : T1021.004 (Remote Services: SSH)

Description : SSH doit être configuré pour utiliser uniquement des algorithmes de chiffrement, MAC et échange de clés cryptographiquement sûrs.

Vérification :

sshd -T | grep -E 'ciphers|macs|kexalgorithms'

Remédiation :

sudo tee -a /etc/ssh/sshd_config << 'EOF'
Ciphers chacha20-poly1305@openssh.com,aes256-gcm@openssh.com,aes128-gcm@openssh.com,aes256-ctr,aes192-ctr,aes128-ctr
MACs hmac-sha2-256-etm@openssh.com,hmac-sha2-512-etm@openssh.com,hmac-sha2-256,hmac-sha2-512
KexAlgorithms curve25519-sha256@libssh.org,diffie-hellman-group16-sha512,diffie-hellman-group18-sha512
EOF
sudo systemctl reload sshd

Valeur par défaut : Configuration par défaut incluant algorithmes faibles

11.3.1 — Configurer l’authentification par clés SSH uniquement

Niveau : 🟠 Référence CIS : CIS Ubuntu 24.04 5.2.4 MITRE ATT&CK : T1021.004 (Remote Services: SSH)

Description : L’authentification par clés SSH est plus sécurisée que les mots de passe et doit être privilégiée ou imposée.

Vérification :

sshd -T | grep passwordauthentication
sshd -T | grep pubkeyauthentication

Remédiation :

sudo sed -i 's/^#PasswordAuthentication.*/PasswordAuthentication no/' /etc/ssh/sshd_config
sudo sed -i 's/^#PubkeyAuthentication.*/PubkeyAuthentication yes/' /etc/ssh/sshd_config
sudo systemctl reload sshd

Valeur par défaut : Authentification par mot de passe activée

11.4.1 — Limiter les utilisateurs et groupes SSH

Niveau : 🟡 Référence CIS : CIS Ubuntu 24.04 5.2.5 MITRE ATT&CK : T1078 (Valid Accounts)

Description : L’accès SSH doit être limité aux seuls utilisateurs et groupes autorisés pour réduire la surface d’attaque.

Vérification :

sshd -T | grep -E 'allowusers|allowgroups|denyusers|denygroups'

Remédiation :

echo 'AllowGroups sshusers sudo' | sudo tee -a /etc/ssh/sshd_config
sudo groupadd sshusers 2>/dev/null
sudo systemctl reload sshd

Valeur par défaut : Tous les utilisateurs autorisés

11.5.1 — Configurer des timeouts et limites de connexion SSH

Niveau : 🟡 Référence CIS : CIS Ubuntu 24.04 5.2.6 MITRE ATT&CK : T1021.004 (Remote Services: SSH)

Description : Des timeouts et limites doivent être configurés pour prévenir les connexions SSH inutilisées et les attaques par brute force.

Vérification :

sshd -T | grep -E 'clientaliveinterval|clientalivecountmax|maxauthtries|maxstartups'

Remédiation :

sudo tee -a /etc/ssh/sshd_config << 'EOF'
ClientAliveInterval 300
ClientAliveCountMax 3
MaxAuthTries 3
MaxStartups 10:30:60
LoginGraceTime 60
EOF
sudo systemctl reload sshd

Valeur par défaut : Timeouts par défaut permissifs

S12 — SUDO & ÉLÉVATION DE PRIVILÈGES (15 contrôles)

12.1.1 — Configurer sudoers avec visudo uniquement

Niveau : 🔴 Référence CIS : CIS Ubuntu 24.04 5.1.1 MITRE ATT&CK : T1548.003 (Abuse Elevation Control Mechanism: Sudo and Sudo Caching)

Description : Le fichier sudoers doit être édité uniquement avec visudo pour éviter les erreurs de syntaxe qui pourraient verrouiller l’accès administrateur.

Vérification :

sudo visudo -c
ls -la /etc/sudoers*

Remédiation :

# Toujours utiliser visudo pour éditer
sudo visudo
# Vérifier la syntaxe
sudo visudo -c

Valeur par défaut : Configuration sudoers basique correcte

12.1.2 — Configurer le timeout sudo approprié

Niveau : 🟠 Référence CIS : CIS Ubuntu 24.04 5.1.2 MITRE ATT&CK : T1548.003 (Abuse Elevation Control Mechanism: Sudo and Sudo Caching)

Description : Le timeout sudo doit être configuré pour équilibrer sécurité et utilisabilité, généralement entre 5-15 minutes.

Vérification :

sudo grep -E 'timestamp_timeout|passwd_timeout' /etc/sudoers /etc/sudoers.d/*

Remédiation :

echo 'Defaults timestamp_timeout=10' | sudo tee /etc/sudoers.d/timeout
echo 'Defaults passwd_timeout=1' | sudo tee -a /etc/sudoers.d/timeout

Valeur par défaut : 15 minutes par défaut

12.2.1 — Activer la journalisation sudo

Niveau : 🟠 Référence CIS : CIS Ubuntu 24.04 5.1.3 MITRE ATT&CK : T1548.003 (Abuse Elevation Control Mechanism: Sudo and Sudo Caching)

Description : Toutes les commandes sudo doivent être journalisées pour l’audit de sécurité et la traçabilité des actions administratives.

Vérification :

grep -E 'log_input|log_output|logfile' /etc/sudoers /etc/sudoers.d/* 2>/dev/null

Remédiation :

sudo tee /etc/sudoers.d/logging << 'EOF'
Defaults logfile=/var/log/sudo.log
Defaults log_input, log_output
Defaults iolog_dir=/var/log/sudo-io
EOF
sudo mkdir -p /var/log/sudo-io

Valeur par défaut : Journalisation basique via syslog

S13 — APPARMOR & MAC (15 contrôles)

13.1.1 — Vérifier qu’AppArmor est installé et activé

Niveau : 🟠 Référence CIS : CIS Ubuntu 24.04 1.7.1 MITRE ATT&CK : T1055 (Process Injection)

Description : AppArmor doit être installé et activé pour fournir un contrôle d’accès obligatoire (MAC) et limiter les capacités des processus.

Vérification :

dpkg -l apparmor
systemctl is-active apparmor
aa-status

Remédiation :

sudo apt update && sudo apt install apparmor apparmor-utils
sudo systemctl enable apparmor
sudo systemctl start apparmor

Valeur par défaut : AppArmor installé et activé sur Ubuntu 24.04

13.1.2 — Configurer les profils AppArmor en mode enforce

Niveau : 🟡 Référence CIS : CIS Ubuntu 24.04 1.7.2 MITRE ATT&CK : T1055 (Process Injection)

Description : Les profils AppArmor doivent être en mode enforce pour bloquer effectivement les actions non autorisées, pas seulement les journaliser.

Vérification :

aa-status | grep 'profiles are in enforce mode'
aa-status | grep 'profiles are in complain mode'

Remédiation :

# Passer les profils en mode enforce
sudo aa-enforce /etc/apparmor.d/*
# Ou pour des profils spécifiques
# sudo aa-enforce /etc/apparmor.d/usr.bin.firefox

Valeur par défaut : Profils en mode enforce par défaut

S14 — CONTENEURS & VIRTUALISATION (10 contrôles)

14.1.1 — Sécuriser Docker si installé

Niveau : 🟡 Référence CIS : Docker Benchmark MITRE ATT&CK : T1611 (Escape to Host)

Description : Si Docker est installé, il doit être sécurisé selon les meilleures pratiques pour éviter l’évasion de conteneurs.

Vérification :

systemctl is-active docker 2>/dev/null
docker version 2>/dev/null

Remédiation :

# Sécuriser le démon Docker
sudo tee /etc/docker/daemon.json << 'EOF'
{
  "icc": false,
  "userns-remap": "default",
  "live-restore": true,
  "userland-proxy": false,
  "no-new-privileges": true
}
EOF
sudo systemctl reload docker

Valeur par défaut : Docker non installé par défaut

S15 — MISES À JOUR & PATCHS (15 contrôles)

15.1.1 — Configurer les mises à jour automatiques de sécurité

Niveau : 🟠 Référence CIS : CIS Ubuntu 24.04 1.9 MITRE ATT&CK : T1068 (Exploitation for Privilege Escalation)

Description : Les mises à jour de sécurité doivent être installées automatiquement pour corriger rapidement les vulnérabilités connues.

Vérification :

dpkg -l unattended-upgrades
cat /etc/apt/apt.conf.d/20auto-upgrades

Remédiation :

sudo apt update && sudo apt install unattended-upgrades
sudo dpkg-reconfigure -plow unattended-upgrades
echo 'Unattended-Upgrade::Automatic-Reboot "true";' | sudo tee -a /etc/apt/apt.conf.d/50unattended-upgrades

Valeur par défaut : Mises à jour manuelles

15.2.1 — Vérifier l’intégrité des paquets APT

Niveau : 🟡 Référence CIS : CIS Ubuntu 24.04 1.2.1 MITRE ATT&CK : T1195 (Supply Chain Compromise)

Description : L’intégrité des paquets APT doit être vérifiée via les signatures GPG pour éviter l’installation de logiciels compromis.

Vérification :

apt-config dump | grep -E 'APT::Get::(AllowUnauthenticated|AllowDowngradeToInsecureRepositories)'

Remédiation :

echo 'APT::Get::AllowUnauthenticated "false";' | sudo tee /etc/apt/apt.conf.d/99security

Valeur par défaut : Vérification activée par défaut

S16 — CRYPTOGRAPHIE & CHIFFREMENT (10 contrôles)

16.1.1 — Configurer des algorithmes cryptographiques forts système

Niveau : 🟠 Référence CIS : ANSSI RGS MITRE ATT&CK : T1600 (Weaken Encryption)

Description : Le système doit être configuré pour utiliser uniquement des algorithmes cryptographiques approuvés et sûrs.

Vérification :

update-crypto-policies --show
grep -r 'LEGACY' /etc/crypto-policies/ 2>/dev/null

Remédiation :

# Sur Ubuntu, configurer via system-wide crypto policies si disponible
# Ou configurer individuellement chaque service
sudo sed -i 's/DEFAULT@SECLEVEL=1/DEFAULT@SECLEVEL=2/' /etc/ssl/openssl.cnf

Valeur par défaut : Niveau de sécurité standard

S17 — SÉCURITÉ KERNEL (15 contrôles)

17.1.1 — Configurer les paramètres kernel de sécurité

Niveau : 🟠 Référence CIS : CIS Ubuntu 24.04 3.1 MITRE ATT&CK : T1068 (Exploitation for Privilege Escalation)

Description : Les paramètres du noyau doivent être durcis pour améliorer la sécurité système et prévenir certaines classes d’attaques.

Vérification :

sysctl kernel.dmesg_restrict
sysctl kernel.kptr_restrict
sysctl kernel.yama.ptrace_scope

Remédiation :

sudo tee /etc/sysctl.d/99-security.conf << 'EOF'
kernel.dmesg_restrict = 1
kernel.kptr_restrict = 2
kernel.yama.ptrace_scope = 1
kernel.kexec_load_disabled = 1
net.core.bpf_jit_harden = 2
EOF
sudo sysctl -p /etc/sysctl.d/99-security.conf

Valeur par défaut : Paramètres par défaut moins restrictifs

S18 — CONFORMITÉ & GOUVERNANCE (10 contrôles)

18.1.1 — Documenter la configuration de sécurité

Niveau : 🟢 Référence CIS : Best Practices MITRE ATT&CK : N/A

Description : Toute la configuration de sécurité doit être documentée pour faciliter la maintenance, l’audit et la conformité réglementaire.

Vérification :

ls -la /etc/security/docs/ 2>/dev/null
find /etc -name "*.conf" -mtime -30 | wc -l

Remédiation :

sudo mkdir -p /etc/security/docs
sudo tee /etc/security/docs/README.md << 'EOF'
# Documentation de Sécurité Ubuntu 24.04

## Configurations appliquées
- Date: $(date)
- Auditeur: [Nom]
- Référentiel: CIS Ubuntu 24.04 LTS

## Modifications principales
[À documenter]
EOF

Valeur par défaut : Documentation minimale

18.2.1 — Planifier les audits de sécurité réguliers

Niveau : 🟢 Référence CIS : Best Practices MITRE ATT&CK : N/A

Description : Des audits de sécurité réguliers doivent être planifiés pour maintenir le niveau de sécurité et détecter les dérives de configuration.

Vérification :

crontab -l | grep -E 'audit|security|check'
ls -la /etc/cron.d/ | grep security

Remédiation :

sudo tee /usr/local/bin/security-audit.sh << 'EOF'
# Audit de sécurité automatique
DATE=$(date +%Y%m%d-%H%M%S)
LOGFILE="/var/log/security-audit-$DATE.log"

echo "=== AUDIT SÉCURITÉ - $DATE ===" > $LOGFILE
echo "1. Vérification des comptes:" >> $LOGFILE
awk -F: '($3 >= 1000) {print $1}' /etc/passwd >> $LOGFILE

echo "2. Processus en écoute:" >> $LOGFILE
ss -tuln >> $LOGFILE

echo "3. Dernières connexions:" >> $LOGFILE
last -n 10 >> $LOGFILE
EOF

sudo chmod +x /usr/local/bin/security-audit.sh
echo '0 2 * * 1 /usr/local/bin/security-audit.sh' | sudo tee /etc/cron.d/security-audit

Valeur par défaut : Pas d’audit automatique configuré


RÉCAPITULATIF PAR SECTION

Section Nombre de contrôles 🔴 Critiques 🟠 Importantes 🟡 Recommandées 🟢 Optionnelles
S1 - Installation & Partitionnement 15 3 7 4 1
S2 - Services & Démons 20 5 8 5 2
S3 - Configuration Réseau 20 4 9 6 1
S4 - Pare-feu UFW/nftables 15 4 6 4 1
S5 - Journalisation & Audit 25 6 12 6 1
S6 - Gestion des Comptes 20 3 9 7 1
S7 - Authentification PAM 20 2 8 8 2
S8 - Politiques de Mot de Passe 15 1 6 7 1
S9 - Permissions Fichiers 20 4 8 6 2
S10 - Intégrité Système 15 2 6 6 1
S11 - SSH 25 6 10 7 2
S12 - Sudo & Élévation de Privilèges 15 3 6 5 1
S13 - AppArmor & MAC 15 2 7 5 1
S14 - Conteneurs & Virtualisation 10 1 4 4 1
S15 - Mises à Jour & Patchs 15 2 7 5 1
S16 - Cryptographie & Chiffrement 10 1 5 3 1
S17 - Sécurité Kernel 15 2 7 5 1
S18 - Conformité & Gouvernance 10 0 3 5 2
TOTAL 285 51 138 82 14

RÉSUMÉ EXÉCUTIF

Score de Conformité Global

  • Contrôles Critiques (🔴) : 51/285 (18%) - Sécurité minimale requise
  • Contrôles Importants (🟠) : 138/285 (48%) - Durcissement recommandé
  • Contrôles Recommandés (🟡) : 82/285 (29%) - Optimisation sécuritaire
  • Contrôles Optionnels (🟢) : 14/285 (5%) - Amélioration continue

Top 3 des Risques Critiques

  1. Gestion des Comptes et Authentification - Impact: Accès administrateur non autorisé
  2. Configuration Réseau et Pare-feu - Impact: Intrusion réseau et exfiltration
  3. Journalisation et Détection - Impact: Activités malveillantes persistantes

MAPPINGS DE CONFORMITÉ

NIST SP 800-53 Rev5

  • AC (Access Control) : S6, S7, S11, S12
  • AU (Audit) : S5
  • SC (System Protection) : S3, S4, S11, S16, S17
  • SI (System Integrity) : S10, S15, S17

ISO 27001:2022

  • A.9 - Contrôle d’accès : S6, S7, S11, S12
  • A.12 - Sécurité d’exploitation : S2, S3, S4, S15
  • A.18 - Conformité : S5, S18

MITRE ATT&CK Coverage

  • Initial Access : T1078, T1133 → S6, S7, S11
  • Privilege Escalation : T1068, T1548 → S6, S9, S12, S17
  • Defense Evasion : T1055, T1562 → S5, S10, S13

© 2026 AYI NEDJIMI CONSULTANTS — Tous droits réservés

Toutes nos checklists sécurité

Retrouvez l'ensemble de nos 11 checklists d'audit et de durcissement professionnelles.

Voir toutes les checklists