ksnctf 8 Basic is secure?
ksnctf8問目を解いていきます。結論から言うとBasic認証はセキュアではありません。
ksnctf.sweetduet.info
Basic認証とは
Basic認証は最も簡易なHTTP認証方式です。Basic認証が必要なWebページにアクセスするとIDとパスワードを入力するダイアログが表示されます。
認証情報は、
(ID):(平文のパスワード)
をBase64でエンコードしてネットワーク上に流れます。以上のことを踏まえて問題を解いていきます。
パケットキャプチャ
問題のpcapファイルをダウンロードしてWiresharkで開きます。中身は以下のようになっています。
このままでは少し見づらいのでフィルタをかけてHTTPパケットのみを表示します。
上にある入力バーに「http」と入力するとhttpパケットのみを絞り込むことができます。右側のHTTPステータスコードを見ていけばどのような通信が行われていたかわかります。
1行目(No.7):クライアントがctfq.sweetduet.info/~q8にアクセスしています。
2行目(No.9):サーバ側が認証要求を出しています。
3行目(No.13):クライアントがもう一度Webサイトにアクセスしています。
4行目(No.16):クライアントの認証が通り、Webサイトのコンテンツを返しています。
3行目のパケットを詳細にみていきます。
フラグを発見できました。