アイジア

CTF, 情報セキュリティの学んだことメモ

ksnctf 8 Basic is secure?

ksnctf8問目を解いていきます。結論から言うとBasic認証はセキュアではありません。 ksnctf.sweetduet.info

Basic認証とは

Basic認証は最も簡易なHTTP認証方式です。Basic認証が必要なWebページにアクセスするとIDとパスワードを入力するダイアログが表示されます。
f:id:favoritte15:20181114154624j:plain
認証情報は、
(ID):(平文のパスワード)
Base64エンコードしてネットワーク上に流れます。以上のことを踏まえて問題を解いていきます。

パケットキャプチャ

問題のpcapファイルをダウンロードしてWiresharkで開きます。中身は以下のようになっています。
f:id:favoritte15:20181114155033p:plain
このままでは少し見づらいのでフィルタをかけてHTTPパケットのみを表示します。
f:id:favoritte15:20181114155414p:plain
上にある入力バーに「http」と入力するとhttpパケットのみを絞り込むことができます。右側のHTTPステータスコードを見ていけばどのような通信が行われていたかわかります。
1行目(No.7):クライアントがctfq.sweetduet.info/~q8にアクセスしています。
2行目(No.9):サーバ側が認証要求を出しています。
3行目(No.13):クライアントがもう一度Webサイトにアクセスしています。
4行目(No.16):クライアントの認証が通り、Webサイトのコンテンツを返しています。

3行目のパケットを詳細にみていきます。
f:id:favoritte15:20181114160047p:plain
フラグを発見できました。