バイナリ探偵をする時に使うコマンド

共有ライブラリ編

  • env | grep LD
  • md5sum
    • 一致してるものを調べる
  • ls -l
  • readelf -a hogehoge.so
    • readelf -a hogehoge.so | grep SONAME
    • SONAME を調べる
  • find build/ -name '*so' | xargs ldd | less
    • 依存関係を調べる
    • ldd `which hoge` とかも
  • LD_DEBUG=all <コマンドを実行>
    • 共有ライブラリの読み込みに関して大量のデバッグログが吐かれる
  • objdump -d hogehoge.so | less
    • アセンブラを読む
    • 特に、<関数名> で検索することが多い
  • man ld-linux.so
  • readeof -d hoge.so
  • nm -D hoge.so