Pourquoi convertir SO en TXT ?
Un .so commence par un en-tête magique ELF de 4 octets et se compose de segments binaires - instructions machine, tables de symboles, données de relocalisation et sections de métadonnées. Rien de tout cela n'est du texte, et il n'y a aucun contenu de document à extraire. Il n'y a aucune relation structurelle entre une bibliothèque ELF compilée et un fichier texte brut .txt.
Comment convertir SO en TXT
GNU Binutils OPEN-SOURCE
Exécutez nm -D lib.so > output.txt pour les symboles exportés, readelf -a lib.so > output.txt pour la structure ELF, objdump -d lib.so > output.txt pour le désassemblage, ou strings lib.so > output.txt pour les chaînes de caractères lisibles intégrées.
Ghidra FREE
Importez le .so dans Ghidra pour décompiler le code machine en pseudo-code C approximatif, que vous pouvez exporter ou enregistrer sous forme de texte pour une analyse plus approfondie.
À propos de ces formats
Un fichier .so est une bibliothèque d'objets partagés sur Linux et Unix - l'équivalent Linux d'un .dll Windows. Les programmes le chargent automatiquement lors de l'exécution ; vous ne…
Ouvrir les détails de .SO →Un fichier TXT est du texte brut, non formaté - le format de document le plus simple sur n'importe quel ordinateur. Double-cliquez dessus : Windows l'ouvre dans Notepad, macOS dans…
Ouvrir les détails de .TXT →Qualité et points de vigilance
- L'ouverture d'un
.sodans un éditeur de texte affiche des caractères incohérents - les octets sont du code machine binaire ELF, pas du texte encodé. - La sortie des outils Binutils correspond à des données d'inspection, pas à une conversion de format - le
.soreste une bibliothèque binaire quel que soit le contenu extrait en texte. - Si vous avez besoin du code source original, le
.soest le résultat compilé ; trouvez la source sur le dépôt du projet, pas à l'intérieur du binaire.
Foire aux questions
Pourquoi ne puis-je pas simplement renommer le `.so` en `.txt` ?
Existe-t-il un outil qui convertit le SO en TXT ?
xxd lib.so en ligne de commande.