Résoudre en crackme via LD_PRELOAD (réutilisation du code)

Quand on analyse un exécutable disposant d’une fonction difficile à réverser (encodage, crypto custom, etc) une solution maintenant bien connue consiste à réutiliser le code de l’exécutable par exemple en détournant son exécution avec un débogueur.

Dans cet article traitant d’un crackme du Cyber Security Challenge Belgique le participant utilise LD_PRELOAD avec une librairie qui se charge de tester les différentes fonctions intéressantes du crackme depuis un constructeur de la librairie.

Une astuce sympa à garder sous la main.