a821924606e23d533ab165ad5dfec997dc8351c1
Audit SUID GUID Linux
Shell
Installation
Copier audit-suid.sh Exemple
cp audit-suid.sh /usr/local/bin/audit-suid.sh
chmod +x /usr/local/bin/audit-suid.sh
Exécution
# Exécuter avec les droits root
sudo /usr/local/bin/audit-suid.sh
Planification avec cron
# Audit quotidien à 2h du matin
sudo crontab -e
# Ajouter la ligne :
0 2 * * * /usr/local/bin/audit-suid.sh
Personalisation
Modifier le fichier /etc/audit/suid_whitelist.conf pour ajouter vos propres binaires légitimes.
Ce script vous aidera à maintenir la sécurité de vos serveurs Linux en identifiant rapidement les risques potentiels liés aux permissions SUID/SGID.
Python
Installation
Copier audit-suid.py
Exemple
# Sauvegarde du script
sudo mkdir -p /usr/local/bin/
sudo cp suid_audit.py /usr/local/bin/audit-suid.py
sudo chmod +x /usr/local/bin/audit-suid.py
# Création des répertoires
sudo mkdir -p /etc/audit /var/log/audit
Utilisation
# Exécution simple
sudo python3 audit-suid.py
# Avec options
sudo python3 audit-suid.py --max-depth 15 --no-temp
# Aide
python3 audit-suid.py --help
# Exécution avec droits root (obligatoire)
sudo /usr/local/bin/audit-suid.py
Options disponibles
Option Description
- --no-temp: Ne pas vérifier /tmp, /var/tmp, /dev/shm
- --no-orphan: Ne pas vérifier les fichiers orphelins
- --no-hash: Ne pas calculer les hashs MD5 (plus rapide)
- --max-depth N: Profondeur maximale de recherche (défaut: 20)
- --log-dir PATH: Répertoire des logs (défaut: /var/log/audit)
- --whitelist PATH: Fichier JSON de whitelist
Cron
# Éditer crontab
sudo crontab -e
# Ajouter pour une exécution quotidienne à 2h
0 2 * * * /usr/local/bin/audit-suid.py --no-hash
# Exécution hebdomadaire avec tous les contrôles
0 3 * * 0 /usr/local/bin/audit-suid.py
Format du fichier de whitelist (JSON)
{
"SUID": [
"/bin/su",
"/usr/bin/sudo",
"/usr/bin/passwd"
],
"SGID": [
"/usr/bin/wall",
"/usr/bin/write"
]
}
Description
Languages
Python
69.8%
Shell
30.2%