げんたろう's備忘録

セキュリティに関して思ったことをまとめます。

パスワード入手可能時における鍵付きpdfの保存

パスワードを入手できるため、パスワードをメモして置いて開くのも良いが、それはそれで面倒なので、パスワードを用いて開いたpdfを生の状態で保存できた方が良い。

この場合、googlechromeで印刷からpdfとして保存するを行えば、表示されたpdfを生の状態で保存することができ、次に開く際にパスワード認証をする必要がなくなる。

バイナリ解析系のコマンドメモ

strace ./hogehoge

 プログラムを動的に解析することができる。プロセスが呼び出すシステムコールを記録し、内容を表示させることができる。一行当たりに表示できる文字数は32文字で増やしたい場合はsオプションをつける。

strace -s 1024 ./hogehoge
od -A x hogehoge

ファイルをバイナリ表示することができるコマンド。Aオプションをつけることでアドレスの情報を付加できる。

gdb hogehoge
(gdb) disas main

gdbはデバッガである。disasし、フレームを指定することで逆アセンブルすることができる。また、動的にプログラムの実行状況を追跡していくことができる。

objdump -d hogehoge

アセンブルした結果を表示できる。

strings hogehoge

hogehogeに含まれる表示可能な文字列を表示してくれる。

readelf -a hogehoge

っていうのもあるみたいだ。

tcshにおけるエラー排除

大学内のterminalはtcshで動いており、そのサーバー内自分のディレクトリ外にfindコマンドを実行すると許可がないディレクトリへ多くの試行を行うためエラーがたくさん出ます。それをtcshで回避するためには

-> ( hogehoge > /dev/tty ) > & /dev/null

もしくは

-> hogehoge | & grep -v find:

としてエラーを除去することができるようである。

下記の方が自然に見える。上記は(hogehoge)>&とすることで標準エラー出力のみを取り出し、/dev/nullに送っている。また>/dev/ttyをすることで送ったデータが標準出力として表示される。

またこののち、標準出力されてきたデータに対してコマンドを実行したい場合はxargsコマンドを用いると良いようである。

例えば、

-> find ../* -name hogehoge | & grep -v find:|xargs head

とすることで、検索してきたファイルhogehogeそれぞれに対してheadコマンドを実行することができる。