Bonjour, je me suis aujourd'hui penché sur LD_PRELOAD pour charger une fonction personalisée avant le chargement de celle du système, cela fonctionne parfaitement en C, mais je souhaiterais faire ca en ASM, voici le programme en C:
Le but étant de remplacer la fonction strlen, et voici le code assembleur !
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9 #include <string.h> #include <stdio.h> int main(){ char chaine[] = "Hello World"; int i = strlen(chaine); printf("%d",i); return 0; }
Oui je sais, ce code n'est pas l'équivalent de la fonction strlen, et cette fonction est censée retourner 1 si je ne me trompe pas.
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8 section .text externes: global strlen strlen: mov eax,1 ret
Mais après je ne sais pas comment faire, comment compiler ce code comme une librairie pour pouvoir le faire passer en LD_PRELOAD ?
Merci
Partager