# Démo OpenSCAP sur Debian 12 Cette démonstration vise à mettre en avant la découverte de vulnérabilité en comparant les versions système avec les CVE connues. On installe volontairement une ancienne version de Apache afin d'avoir un résultat lors de notre analyse. ## Installation d'OpenSCAP sur Debian12 ```bash sudo apt update sudo apt install openscap-scanner openscap-utils ssg-debian ``` ## Execution d'un audit de sécurité ```bash wget https://www.debian.org/security/oval/oval-definitions-$(lsb_release -cs).xml.bz2 bunzip2 oval-definitions-$(lsb_release -cs).xml.bz2 oscap oval eval --report rapport-vulns.html oval-definitions-$(lsb_release -cs).xml ``` --- ## Installer un paquet volontairement vulnérable ### Ajouter la source du snapshot ```bash echo 'deb [check-valid-until=no] https://snapshot.debian.org/archive/debian/20230815T213225Z/ bookworm main' | tee /etc/apt/sources.list.d/snapshot-vuln.list # Autre choix d'horodatages : https://snapshot.debian.org/archive/debian/?year=2023&month=8 ``` ### Epingler les paquets Apache vers le snapshot ```bash tee /etc/apt/preferences.d/snapshot-apache.pref >/dev/null <<'EOF' Package: apache2* libapr1* libaprutil1* Pin: origin snapshot.debian.org Pin-Priority: 1001 EOF ``` ### Installer Apache (version ancienne) ```bash apt update -o Acquire::Check-Valid-Until=false apt install apache2 ``` ### Checker la version qui s'installe ```bash apt-cache policy apache2 ``` ### Bloquer la mise à jour ```bash apt-mark hold apache2 apache2-bin apache2-data apache2-utils # "hold" empêche un futur "apt upgrade" d'annuler l'exercice ``` ### Retirer l'épinglage et la source maintenent qu'une ancienne version est bloquée ```bash rm /etc/apt/preferences.d/snapshot-apache.pref /etc/apt/sources.list.d/snapshot-vuln.list apt update ``` ### Relancer un scan ```bash wget https://www.debian.org/security/oval/oval-definitions-$(lsb_release -cs).xml.bz2 bunzip2 -f oval-definitions-$(lsb_release -cs).xml.bz2 oscap oval eval --report rapport-vulns.html oval-definitions-$(lsb_release -cs).xml ``` Dans `rapport-vulns.html`, des CVE devrait ressortir en "vulnérable" pour les paquet en lien avec Apache (apache2, apache2-bin, libapr) ### Nettoyage après la démo ```bash apt-mark unhold apache2 apache2-bin apache2-data apache2-utils apt purge 'apache2*' 'libaprutil1*' 'libapr1*' apt autoremove ```