⚔ Protection contre la modification des bibliothèques dynamiques système (shared libraries) sous Linux
Introduction
Les bibliothèques dynamiques, aussi appelées shared libraries sous Linux (exemple : fichiers .so), sont essentielles au fonctionnement des applications et du système d'exploitation. Une modification non autorisée de ces bibliothèques peut permettre à un attaquant d'exécuter du code malveillant ou de compromettre l'intégrité du système. Ce tutoriel décrit comment protéger les bibliothèques dynamiques système sous Linux pour prévenir de telles attaques.
Prérequis
• Prérequis techniques : Connaissances basiques des commandes sudo, lsattr, et gestion des fichiers sous Linux
• Permissions requises : Accès root ou utilisateur avec droits sudo
Méthodologie
Nous utiliserons trois approches pour protéger les bibliothèques dynamiques système :
Description des trois approches :
🖈 Approche # 1 : Vérification des permissions et des modifications sur les bibliothèques partagées
🖈 Approche # 2 : Utilisation de sudo pour verrouiller les bibliothèques critiques
🖈 Approche # 3 : Application de l'attribut immuable avec chattr pour empêcher toute modification
Les avantages
Avantage de l'approche # 1 : Méthode simple pour identifier les anomalies dans les fichiers partagés
Avantage de l'approche # 2 : Permet de sécuriser rapidement les bibliothèques sensibles
Avantage de l'approche # 3 : Protection renforcée grâce au verrouillage des fichiers critiques
Les inconvénients
Inconvénient de l'approche # 1 : Nécessite des vérifications régulières manuelles
Inconvénient de l'approche # 2 : Toute erreur dans la commande peut affecter des bibliothèques essentielles
Inconvénient de l'approche # 3 : Risque de bloquer les mises à jour logicielles si mal configuré
Étapes à suivre pour l'approche # 1
• Identifiez l’emplacement des bibliothèques dynamiques avec la commande :
• Vérifiez les permissions des fichiers système dans les répertoires /usr/lib et /lib :
• Inspectez les modifications récentes dans ces répertoires avec :
Cette commande affiche les fichiers modifiés au cours des 5 derniers jours. Ajustez la valeur selon vos besoins.
Pour de plus amples informations
• Manuel GNU C Library
• Google
Étapes à suivre pour l'approche # 2
• Changez les permissions des bibliothèques critiques pour empêcher les modifications non autorisées :
Cette commande définit les permissions en lecture/écriture pour root et lecture seule pour les autres utilisateurs.
• Protégez les bibliothèques en changeant le propriétaire pour root :
• Vérifiez les modifications des fichiers grâce à l’audit avec auditd :
• Consultez les journaux avec :
Pour de plus amples informations
• Manuel auditctl
• Google
Étapes à suivre pour l'approche # 3
• Appliquez l’attribut immuable aux bibliothèques dynamiques critiques pour empêcher leur modification :
• Vérifiez que l’attribut a bien été appliqué :
• Pour retirer l’attribut immuable (si nécessaire) :
Pour de plus amples informations
• Manuel chattr
• Google
Astuce
Automatisez les vérifications avec un script qui utilise find et auditd pour surveiller les modifications.
Pour de plus amples informations
• Google
Mise en garde
L’attribut immuable peut empêcher les mises à jour système, y compris les mises à jour de sécurité. Pensez à le désactiver temporairement lors des mises à jour critiques.
Conseil
Surveillez régulièrement les logs système avec syslog ou journald pour détecter les anomalies sur les bibliothèques partagées.
Pour de plus amples informations
• Google
Solution alternative
Utilisez des outils comme Tripwire ou AIDE pour surveiller l’intégrité des fichiers système, y compris les bibliothèques dynamiques.
Pour de plus amples informations
• Recherches GitHub
• Google
Conclusion
La protection des bibliothèques dynamiques sous Linux est essentielle pour assurer la sécurité et la stabilité du système. En appliquant ces trois approches, vous renforcerez efficacement la défense contre les modifications non autorisées et les attaques potentielles.
Source: Tutoriaux-Excalibur

Les bibliothèques dynamiques, aussi appelées shared libraries sous Linux (exemple : fichiers .so), sont essentielles au fonctionnement des applications et du système d'exploitation. Une modification non autorisée de ces bibliothèques peut permettre à un attaquant d'exécuter du code malveillant ou de compromettre l'intégrité du système. Ce tutoriel décrit comment protéger les bibliothèques dynamiques système sous Linux pour prévenir de telles attaques.

• Prérequis techniques : Connaissances basiques des commandes sudo, lsattr, et gestion des fichiers sous Linux
• Permissions requises : Accès root ou utilisateur avec droits sudo



🖈 Approche # 1 : Vérification des permissions et des modifications sur les bibliothèques partagées
🖈 Approche # 2 : Utilisation de sudo pour verrouiller les bibliothèques critiques
🖈 Approche # 3 : Application de l'attribut immuable avec chattr pour empêcher toute modification









• Identifiez l’emplacement des bibliothèques dynamiques avec la commande :
Code:
ldconfig -p
• Vérifiez les permissions des fichiers système dans les répertoires /usr/lib et /lib :
Code:
ls -l /usr/lib /lib
• Inspectez les modifications récentes dans ces répertoires avec :
Code:
sudo find /usr/lib /lib -type f -mtime -5

• Manuel GNU C Library

• Changez les permissions des bibliothèques critiques pour empêcher les modifications non autorisées :
Code:
sudo chmod 755 /usr/lib/.so /lib/.so
• Protégez les bibliothèques en changeant le propriétaire pour root :
Code:
sudo chown root:root /usr/lib/.so /lib/.so
• Vérifiez les modifications des fichiers grâce à l’audit avec auditd :
Code:
sudo auditctl -w /usr/lib/ -p wa -k lib-monitor
• Consultez les journaux avec :
Code:
sudo ausearch -k lib-monitor

• Manuel auditctl

• Appliquez l’attribut immuable aux bibliothèques dynamiques critiques pour empêcher leur modification :
Code:
sudo chattr +i /usr/lib/.so /lib/.so
• Vérifiez que l’attribut a bien été appliqué :
Code:
lsattr /usr/lib/ /lib/
• Pour retirer l’attribut immuable (si nécessaire) :
Code:
sudo chattr -i /usr/lib/.so /lib/.so

• Manuel chattr

Automatisez les vérifications avec un script qui utilise find et auditd pour surveiller les modifications.


L’attribut immuable peut empêcher les mises à jour système, y compris les mises à jour de sécurité. Pensez à le désactiver temporairement lors des mises à jour critiques.

Surveillez régulièrement les logs système avec syslog ou journald pour détecter les anomalies sur les bibliothèques partagées.


Utilisez des outils comme Tripwire ou AIDE pour surveiller l’intégrité des fichiers système, y compris les bibliothèques dynamiques.

• Recherches GitHub

La protection des bibliothèques dynamiques sous Linux est essentielle pour assurer la sécurité et la stabilité du système. En appliquant ces trois approches, vous renforcerez efficacement la défense contre les modifications non autorisées et les attaques potentielles.
Source: Tutoriaux-Excalibur