Il est parfois indispensable de modifier l'exécution d’un programme, sans en modifier le code source, pour l’adapter à des besoins spécifiques. Quels sont les moyens que nous offre Linux ?
Il existe une multitude de cas d’usage que vous avez certainement déjà utilisés sans le savoir. Un cas d’usage connu est le fait de rendre compatible un logiciel avec l’utilisation d’un proxy authentifiant. Cela peut être dû au fait que le programmeur n’a pas pris en compte ce cas durant le développement, ou bien il utilise une bibliothèque tierce qui ne le gère pas, ou qui n’est pas à jour. Pour répondre à ce problème, on peut utiliser proxychains [1], qui va utiliser la technique de LD_PRELOAD que nous verrons dans cet article, pour détourner les appels à la fonction connect de la libc, afin de détourner la connexion.
Ce type de modification peut aussi être utilisé par des acteurs malveillants voulant récupérer des informations sensibles, comme des éléments d'authentification. Nous pouvons citer le programme 3snake [2], qui va tenter de faire fuiter les mots de passe utilisés par les logiciels sudo et sshd (serveur SSH). Pour ce faire, il va...
- Accédez à tous les contenus de Connect en illimité
- Découvrez des listes de lecture et des contenus Premium
- Consultez les nouveaux articles en avant-première