基礎知識

マジックバイト

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

コマンド

strings

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

xxd

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

dd

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

awk

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

sed

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

curl

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

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

1
λ curl <url> -O
Copied!

公式リファレンス

Last modified 2yr ago