基礎知識

マジックバイト

ファイルの先頭バイトには、そのファイルのフォーマットを識別するための情報 (マジックバイト) が埋め込まれている。
フォーマット名
マジックバイト (Ascii)
マジックバイト (Binary)
pdf
%PDF-
25 50 44 46 2d

コマンド

strings

misc の問題を解く場合に良く使うかもしれない。
ファイルから文字列を抜き出してくれる。基本的に grep と組み合わせて使う事が多い
λ strings full-mueller-report.pdf | grep actf
actf{no0o0o0_col1l1l1luuuusiioooon}

xxd

バイナリのダンプコマンド。同じようなツールに hexdump などがある。
headtail コマンドと組み合わせて使う場合もある。
λ xxd blank_paper.pdf | head -n 1
00000000: 0000 0000 2d31 2e35 0a25 bff7 a2fe 0a33 ....-1.5.%.....3

dd

バイナリの編集等ができます。
λ echo -n "%PDF" | dd of=blank_paper.pdf bs=1 conv=notrunc
4+0 records in
4+0 records out
4 bytes transferred in 0.000802 secs (4987 bytes/sec)
オプション
意味
of
標準出力の代わりにファイルへ書き込む。
bs
1回に読み書きするブロックサイズ(バイト数)
conv
指定しないと書き換えたデータがファイルの末尾となり、以降に存在していたデータは削除されてしまう。

awk

ターミナル上でめっちゃ良くつかうプログラミング言語

sed

stream editor の略。これもちょっとした編集で良く使う

curl

ターミナルからリクエストを飛ばしたり、ファイルを保存できたりするので便利。同様のツールに wget などがある。

ファイル名を変えずにファイルを保存する

λ curl <url> -O

公式リファレンス

Last modified 3yr ago
Copy link
On this page
マジックバイト
コマンド
strings
xxd
dd
awk
sed
curl
公式リファレンス