UNIXの実行可能ファイルがあり、そのファイルの内容を読みたいです。読み取り不可能な形式であり、解読する必要があります。私が端末でそれの猫を読めない形式でやったとき、それはどんな拡張子も持っていません。
それを解読するために使用できるコマンドや、役立つツールはありますか?助けてください。
UNIXの実行可能ファイルがあり、そのファイルの内容を読みたいです。読み取り不可能な形式であり、解読する必要があります。私が端末でそれの猫を読めない形式でやったとき、それはどんな拡張子も持っていません。
それを解読するために使用できるコマンドや、役立つツールはありますか?助けてください。
で読み取れない場合は、おそらくorcat
などの実行可能形式です(ただし、別の形式である可能性があります)。a.out
ELF
実行可能ファイルが の場合、次のように使用して、xyzzy
それがどのタイプであるかを確認できるはずです。file xyzzy
pax> file /bin/ls
/bin/ls: ELF 32-bit LSB executable, Intel 80386,
version 1 (SYSV), dynamically linked
(uses shared libs), for GNU/Linux 2.6.18,
stripped
Web を検索すると、そのファイル形式は十分に文書化されており (ここから開始するなど) 、さまざまな程度で内部を調べることができるgcb
、nm
、readelf
などのツールがありますが、配信される可能性が高いのは生のアセンブリ言語だけです。objdump
簡単に理解できるソース コードに戻るのは非常に困難です。
解読する必要はありません (IOCCC エントリであるため、バイナリレベルの難読化が行われている場合を除きます)。otool -tv
またはを使用して逆アセンブルしobjdump
、内部のプログラムの動作を読み取ることができます。)