Ceci est un problème de conception.Tout outil pour syscalls statique-instrument avec le code x86 arbitraire
Mon but est d'intercepter tous les syscalls provenant d'un fichier objet partagé. L'exigence n'est pas de modifier le code noyau (par exemple, ne peut pas écraser la table syscall). Je considère la technique statique de réécriture binaire (spécifiquement, dyninst) pour faire le travail. Cependant, dyninst est très restrictif dans l'écriture du code d'instrumentation (c'est-à-dire ce qu'ils appellent BPatch_snippet
); il doit être le code défini par dyninst. Mais j'ai besoin d'insérer des instructions arbitrairesx86_64
aux points d'instrumentation. Y a-t-il d'autres outils de réécriture binaires statiques pouvant autoriser un code d'instrumentation arbitraire?