良い子は真似しちゃいけない!macのchromeのXSSオプションを無効にする方法

(2012年7月29日に書いた記事です。古かったらごめんなさい)

最近、徳丸先生の 体系的に学ぶ安全なWebアプリケーションの作り方 #wasbook を読んでいます。

実習環境@MacBook(VirtualBox + burpsuite)で動作確認をしていたところ、

実習のところでChromeが思ったような動作をしてくれない。

クロスサイトスクリプティングを利用してブラウザにalertのpop-upを表示する、よくある感じのやつだったのだけど

SettingでJavaScriptとPop-upを両方ONにしても、ポップアップが出ない。。

f:id:Sato_4tree:20140617001026p:plain

(Settings > Privacy > Content settingsでJavaScriptとpop-upの設定は変えれる)

  

ちょっと調べてみたところ、chromeはデフォルトでXSSを拒否する設定になっている。

これはセキュリティ的にとっても素晴らしいのだけでど、実習のために、

ChromeXSS拒否設定を無効にしました。

  

chromeXSS拒否設定を無効にするには、起動変数をいじらなくてはいけない。

Windowsの起動変数ならショートカット作ればすぐいじれるが、

Macはターミナルで起動させなければいけないようだ。   

Macintosh 版 Google Chrome を起動オプション付きで起動する

こんな感じ。

open -a Google\ Chrome --args ${起動変数}

Google ChromeのXSSフィルタを無効にする方法 | MemeTodo

"XSSフィルターをオフにするには起動引数に --disable-xss-auditor と付け加えればいい"

ということなので、

ターミナルを起動して下記コマンドを打ち込みましょう!

(コマンドを打つ前にChromeを終了させること。じゃないと設定が反映されません。)

open -a Google\ Chrome --args --disable-xss-auditor

f:id:Sato_4tree:20140617001249p:plain

(Chromeを終了させてからターミナルで上記コマンドを実行すると、Chromeが起動する。)

準備は完了。該当の実習ページを開いてみると。。。(ちなみにヌルバイト攻撃を使ったXSSのページ)

f:id:Sato_4tree:20140617001310p:plain

できた!

そんな感じで、MacChromeの起動変数を使った、XSSオプションを無効にする方法でした。

Chromeの起動変数は他にも無数にあります。詳しくはこちら

起動オプション - Google Ghrome

起動オプション - Google Chrome まとめWiki

当然ですが、やりたい確認が終わったらきちんと設定を元に戻しましょう。

Chromeを一旦終了させて通常通り起動すれば、再びXSS拒否設定が有効になります。