「CSRFとCSSXSSは分けて議論したい」へのコメント
「水無月ばけらのえび日記 : CSRFとCSSXSSは分けて議論したい」について、9件のコメントが書かれています。
[3466] Re: 「CSRFとCSSXSSは分けて議論したい」
えむけい (2006年4月4日 0時49分)
> というだけですね。もちろん、MSIE 必須かつスクリプト必須のサイトは利用できませんので、それについてはパッチ待ちとなります (まあ、そんなサイトそうそうありませんが)。
ところが対策案の一部にはJavaScriptでhiddenフィールドにワンタイムトークンを突っ込むなんてものまでありましたね。もう本末転倒の極みというか何考えてるのかさっぱり分かりませんが。
[3475] Re: 「CSRFとCSSXSSは分けて議論したい」
海老になりたい鯛 (2006年4月7日 15時5分)
>MSIEは、スクリプトをオフにする
とありますが、
CSSXSSでは、GETで持ってきたHtmlからHiddenを
抜き出せる(条件がそろったときに)ので、
sessionをそのままHiddenにセットしてあると、
別にその人がScriptをオフにしてあっても、攻撃者のブラウザから
直接正しいSession付きのリクエストが送れます。
セッションとは別に、サーバからは、トークンをcookeiで送り、
次画面で、Hiddenで送送り返し、その値とセッションをチェックする。というのが正しいと思います。
[3476] Re: 「CSRFとCSSXSSは分けて議論したい」
ばけら (2006年4月7日 15時13分)
>>MSIEは、スクリプトをオフにする
>とありますが、
>CSSXSSでは、GETで持ってきたHtmlからHiddenを
>抜き出せる(条件がそろったときに)
これは、スクリプトで cssText プロパティの値を取得する以外の方法でいわゆる「CSSXSS」が成立するというご指摘でしょうか。
「条件」についての詳しい情報など、どこかにありますでしょうか。
[3477] Re: 「CSRFとCSSXSSは分けて議論したい」
えむけい (2006年4月7日 15時25分)
>>MSIEは、スクリプトをオフにする
>とありますが、
>CSSXSSでは、GETで持ってきたHtmlからHiddenを
>抜き出せる(条件がそろったときに)ので、
スクリプトが動かなければ抜き出せませんが。厳密には違いますけどそれとてアクティブ何とかを全部無効にしていればまったく問題ありませんし。
>セッションとは別に、サーバからは、トークンをcookeiで送り、
>次画面で、Hiddenで送送り返し、その値とセッションをチェックする。というのが正しいと思います。
それはサーバ側の対策です。引用された部分の1行前に
>> ちなみに利用者の対策としては、
としっかり書かれているわけですが。サーバとクライアントの区別もつかないのですか?
[3478] Re: 「CSRFとCSSXSSは分けて議論したい」
えむけい (2006年4月7日 15時42分)
> これは、スクリプトで cssText プロパティの値を取得する以外の方法でいわゆる「CSSXSS」が成立するというご指摘でしょうか。
>「条件」についての詳しい情報など、どこかにありますでしょうか。
条件の1つはスクリプトが有効なことです【謎】。
それが何で
>>MSIEは、スクリプトをオフにする
に対する返信になるのかは私に聞かれても分かりませんが【謎】。
[3479] Re: 「CSRFとCSSXSSは分けて議論したい」
ばけら (2006年4月7日 17時1分)
>>> ちなみに利用者の対策としては、
>としっかり書かれているわけですが。
それは CSSXSS に対する対策なのであって CSRF に対する対策ではないのですが、その点が誤解されているように思いました。
確かに、その部分だけ読むとわかりにくいかもしれないと思いましたので、軽く書き直してみました。
[3480] Re: 「CSRFとCSSXSSは分けて議論したい」
スターダスト (2006年4月7日 18時42分)
えび日記におきまして
[quote]
ちなみに、CSSXSS に対しては利用者側でできる対策があります。それは、
・MSIE を使う場合、スクリプトを無効にする
[/quote]
とありますが、
えむけいさんがおっっしゃっている
[q]スクリプトが動かなければ抜き出せませんが。厳密には違いますけどそれとてアクティブ何とかを全部無効にしていればまったく問題ありませんし。[/q]
ということですので、ActiveX コントロールも切るべきかと。 ある種のActiveX コントロールでは DOM を参照できるというように理解しております。cssTextなんちゃらは不要ということになりますね。
[3481] Re: 「CSRFとCSSXSSは分けて議論したい」
えむけい (2006年4月8日 5時32分)
>ということですので、ActiveX コントロールも切るべきかと。 ある種のActiveX コントロールでは DOM を参照できるというように理解しております。cssTextなんちゃらは不要ということになりますね。
DOM経由でcssTextなんちゃらを参照するのだと思っていましたが。何か他の参照方法があるのでしょうか。
どっちにしろ「ActiveX コントロールとプラグインの実行」は切った方がいいと思いますが、それは「スクリプトを切ればいい」とされているほとんどすべての脆弱性にも同様に当てはまるので、CSRF対策においてだけ特別にスクリプトだけ無効にしても意味がないと誤解させかねない書き方になると問題があります。ただでさえCSSXSS対策とごっちゃになって訳が分からない状態になってるのに。
[3482] Re: 「CSRFとCSSXSSは分けて議論したい」
スターダスト (2006年4月8日 10時19分)
>cssTextなんちゃらは不要ということになりますね。
全然不要ではありませんでした。何を書きたかったのか本人でもわかりません。(血汗)
「水無月ばけらのえび日記 : CSRFとCSSXSSは分けて議論したい」についてコメントを書く場合は、以下のフォームに記入してください。