前提
- kali linux環境がある
- DVWAのセットアップ済み(https://qiita.com/KPenguin/items/7e4f1c428c3dadf8591c )
目標
- CSP設定のある状態でもXXSを可能にする
手順概要
- 挙動確認
- CSP回避
内容
CSPとは
- Content-Security-Policyの略
- script-src,img,font等の参照可能ドメインを制限できる
前準備
- DVWAにログインする
- 以下コードをkali上で実行しDVWAを立ち上げる。
- http://localhost/DVWA-master/index.php
- admin/passwordでログイン
- セキュリティレベルを下げる。
- メニュー下にあるDVWA securityへアクセス
- デフォルトがimpossibleなので、このままではハッキングできない。なのでlowに変更する
# ファイルへのアクセス許可する
root@kali:~# service apache2 start
# DB_createできるようにする
root@kali:~# service mysql start
CSPを攻略する
-
挙動を確認する
-
外部ソースのスクリプトを埋め込めるとのことなので、入れてみる。
-
-
挙動からの考察
- CSPによって、参照可能srcドメインが制限されている。
- 許可されたドメインの中に「https://pastebin.com 」がなぜか入っている。これは、作成したhtmlを呼び出し先に埋め込むサイトであり、ここからscriptを差し込める余地がある。
- DVWAで予め用意されているデータを拝借し実行する。「https://pastebin.com/raw/R570EE00 」
- 以下画像のようにalert()が実行されたことが分かる。
-
最後に
- XXS対策でCSPを設定していても、その設定が不適切だと、今回のように突破される。
おわり