2011年7月3日日曜日

curl がすごく便利

名前は聞いた事があるけれど、使った事がなかったコマンド。
(いまさらだけど)Webアプリケーションの脆弱性チェックなどで、すごく便利だと実感。

チェックしたいWebアプリケーションにPOSTリクエストを色々変えながら、レスポンスを確認したいときに Paros のようなProxyを使うけれど、curl だとコマンドラインで操作できるので、ターミナル上でも手軽に実行できるし、同じことを繰り返す場合も便利。

ログイン画面などで、テストする場合はこんな感じ。

$ curl http://foo.co.jp/login -c cookie.txt
セッションIDがCookieに保存される場合は、一度ログインページを表示してCookieの内容をファイルに保存。

$ curl -v http://foo.co.jp/login \
    -d username=guest -d password=guest \
    -b cookie.txt -L
そして、POSTを送ってログインを試みる。フォームの送信は -d オプションで指定。また、先ほど取得したCookieを -b オプションで一緒に送信。POSTが成功した場合、リダイレクトで別のページに遷移することが多いので、-L を指定しておくとブラウザの動作に近くなります。HTTPのリクエスト/レスポンスが見たい場合は -v も指定。

あとは、SSLのページでも Ubuntu などでパッケージから curl をインストールすると主要な証明書も一緒にインストールされているから問題なし。
これから、どんどん使っていこう。

0 件のコメント:

コメントを投稿