readelf
今日は深い所に突っこむぞぉ〜。Binary Hacksの2章から浅広。この本を読むためにOSまで変えてしまったと言っても過言ではない!!(理由は色々あるのだ。
ってことで、elfファイルの解析に取り組む。
$ file /bin/ls # lsを解析 /bin/ls: ELF 32-bit LSB executable, Intel 80386, version 1 (SYSV)... $ egrep -n '\bELF\b' /usr/share/misc/magic # magicからELFを探す。 3869:# elf: file(1) magic for ELF executables 3877:0 string \177ELF ELF $ cat /usr/share/misc/magic | sed -ne '3869,3887p' # magicを読む # elf: file(1) magic for ELF executables 0 string \177ELF ELF >4 byte 1 32-bit >5 byte 1 LSB $ readelf -h /bin/ls # lsのヘッダを読む! ELF Header: Magic: 7f 45 4c 46 01 01 01 00 00 00 00 00 00 00 00 00
magicが反映去れているのを確認できました〜。sedでpはこう使うのかと関心しました。さすがです。
でも、最初は文字「\177」と書いてあるけど、どう計算しても、「0x7f=127」だ。177にならない・・・。
・・・!!
「0x7f=0177」。8進数だった!!
バイナリハッカーへの道は遠い。遥かに・・・。