Perché convertire SO in TXT?
Un file .so inizia con un'intestazione magic ELF di 4 byte e consiste in segmenti binari - istruzioni macchina, tabelle dei simboli, dati di rilocazione e sezioni di metadati. Niente di tutto questo è testo e non c'è contenuto di documento da estrarre. Non esiste alcuna relazione strutturale tra una libreria ELF compilata e un file di testo semplice .txt.
Come convertire SO in TXT
GNU Binutils OPEN-SOURCE
Esegui nm -D lib.so > output.txt per i simboli esportati, readelf -a lib.so > output.txt per la struttura ELF, objdump -d lib.so > output.txt per il disassemblaggio, o strings lib.so > output.txt per le stringhe leggibili incorporate.
Ghidra FREE
Importa il file .so in Ghidra per decompilare il codice macchina in uno pseudocodice C approssimativo, che puoi esportare o salvare come testo per un'analisi più approfondita.
Informazioni su questi formati
Un file .so è una libreria di oggetti condivisi su Linux e Unix - l'equivalente Linux di un .dll di Windows. I programmi lo caricano automaticamente all'avvio; non si apre mai direttamente.…
Apri dettagli .SO →Un file TXT è testo semplice e non formattato - il formato di documento più elementare su qualsiasi computer. Fai doppio clic su di esso: Windows lo apre in Notepad, macOS in TextEdit,…
Apri dettagli .TXT →Qualità e a cosa prestare attenzione
- L'apertura di un file
.soin un editor di testo mostra caratteri senza senso - i byte sono codice macchina binario ELF, non testo codificato. - L'output degli strumenti Binutils è un dato di ispezione, non una conversione di formato - il file
.sorimane una libreria binaria indipendentemente da ciò che viene scaricato in formato testo. - Se hai bisogno del codice sorgente originale, il file
.soè l'output compilato; trova il sorgente nel repository del progetto, non all'interno del binario.
Domande frequenti
Perché non posso semplicemente rinominare il file `.so` in `.txt`?
Esiste uno strumento che converte SO in TXT?
xxd lib.so sulla riga di comando.