Détournement LD_PRELOAD
Qu'est-ce que Détournement LD_PRELOAD ?
Détournement LD_PRELOADTechnique Linux de persistance et de détournement de bibliothèque qui exploite la variable LD_PRELOAD ou /etc/ld.so.preload pour injecter du code dans les processus liés dynamiquement.
Le hijacking LD_PRELOAD (MITRE ATT&CK T1574.006) abuse de l'éditeur de liens dynamique GNU sous Linux et la plupart des Unix. En définissant LD_PRELOAD (pour un processus ou une session) ou en inscrivant un chemin dans /etc/ld.so.preload (système entier), l'attaquant force ld.so à charger une bibliothèque partagée avant toute autre. Le .so malveillant peut intercepter des symboles libc tels que readdir, open, accept ou write pour masquer fichiers et processus, voler des identifiants ou maintenir un rootkit utilisateur. La technique fonctionne sur les binaires non setuid et est largement utilisée par des familles comme HiddenWasp et Symbiote. Défenses : surveiller /etc/ld.so.preload (AIDE, auditd), le restreindre à root, détecter les LD_PRELOAD inattendus, vérifier libc avec des outils statiques.
● Exemples
- 01
Inscrire /usr/lib/libsel.so dans /etc/ld.so.preload pour que chaque nouveau processus charge un rootkit en espace utilisateur.
- 02
Définir LD_PRELOAD pour sshd afin d'intercepter l'authentification PAM et voler les identifiants.
● Questions fréquentes
Qu'est-ce que Détournement LD_PRELOAD ?
Technique Linux de persistance et de détournement de bibliothèque qui exploite la variable LD_PRELOAD ou /etc/ld.so.preload pour injecter du code dans les processus liés dynamiquement. Cette notion relève de la catégorie Attaques et menaces en cybersécurité.
Que signifie Détournement LD_PRELOAD ?
Technique Linux de persistance et de détournement de bibliothèque qui exploite la variable LD_PRELOAD ou /etc/ld.so.preload pour injecter du code dans les processus liés dynamiquement.
Comment fonctionne Détournement LD_PRELOAD ?
Le hijacking LD_PRELOAD (MITRE ATT&CK T1574.006) abuse de l'éditeur de liens dynamique GNU sous Linux et la plupart des Unix. En définissant LD_PRELOAD (pour un processus ou une session) ou en inscrivant un chemin dans /etc/ld.so.preload (système entier), l'attaquant force ld.so à charger une bibliothèque partagée avant toute autre. Le .so malveillant peut intercepter des symboles libc tels que readdir, open, accept ou write pour masquer fichiers et processus, voler des identifiants ou maintenir un rootkit utilisateur. La technique fonctionne sur les binaires non setuid et est largement utilisée par des familles comme HiddenWasp et Symbiote. Défenses : surveiller /etc/ld.so.preload (AIDE, auditd), le restreindre à root, détecter les LD_PRELOAD inattendus, vérifier libc avec des outils statiques.
Comment se défendre contre Détournement LD_PRELOAD ?
Les défenses contre Détournement LD_PRELOAD combinent habituellement des contrôles techniques et des pratiques opérationnelles, comme détaillé dans la définition ci-dessus.
Quels sont les autres noms de Détournement LD_PRELOAD ?
Noms alternatifs courants : Abus de ld.so.preload, Hijack de bibliothèque partagée.
● Termes liés
- attacks№ 331
Détournement de DLL
Attaque qui abuse de l'ordre de recherche des DLL de Windows pour qu'un programme légitime charge une bibliothèque contrôlée par l'attaquant au lieu de la bibliothèque attendue.
- attacks№ 238
Persistance via cron
Technique de persistance Linux/Unix utilisant cron, anacron ou les timers systemd pour réexécuter du code attaquant à un intervalle ou un événement choisi.
- attacks№ 608
Persistance launchd
Technique de persistance macOS qui installe un plist LaunchDaemon ou LaunchAgent pour faire exécuter du code par launchd au démarrage, à l'ouverture de session ou sur un déclencheur.
- malware№ 949
Rootkit
Logiciel malveillant furtif qui octroie et masque un accès privilégié au système d'exploitation ou au matériel, en échappant aux outils de détection courants.
- attacks№ 862
Injection de processus
Famille de techniques d'evasion ou un attaquant execute du code malveillant dans l'espace memoire d'un processus legitime pour heriter de sa confiance et de son identite.
● Voir aussi
- № 054AppInit_DLLs