In either case, developers SHOULD NOT include either 'unsafe-inline', or data: as valid sources in their policies.
Both enable XSS attacks by allowing code to be included directly in the document itself; they are best avoided completely.
One could argue that the code was loaded with unsafe-inline in the CSP header, but that should still block any cross-site communication (e.g. 1x1px tracking image etc).
そもそも 'unsafe-inline' は危険なので使うべきではないとW3C勧告に書かれている (スコア:3)
CSP を導入しているけど、インラインスクリプトが使えないと不便だからか 'unsafe-inline' を許可しているサイトも多いですが、危険だし、中途半端で美しくないポリシーだと思います。
6. Content Security Policy Directives [w3.org] より
'unsafe-inline' は XSS 攻撃を可能にするので、いずれのケースであっても、指定すべきでな
そういう問題ではない (スコア:1)
Re:そういう問題ではない (スコア:1)
攻撃者が自分のサイトに設置するんなら最初からCSP自体設定しなければいいのでは。
今回の話は'unsafe-inline'な設定の標的サイトに対して、攻撃者がXSSな投稿を行い、
それをEdgeで踏んだ場合に、親コメントに有るような小細工無しで
「window.open()
→document.write()
→CSP未設定なabout:blank経由で任意のサイトへアクセス
→CSRFまたはXSSにより取られたデータの外部送信」
が発生するって脆弱性だと思うのですが。
Re:そういう問題ではない (スコア:1)
Re:そういう問題ではない (スコア:2)
headless さんの解釈だと、攻撃者が、攻撃者の管理するサイトの CSP に 'unsafe-inline' を指定し、そこから about:blank を開くことで、ブラウザ標準の Same-Origin Policy (同一オリジンポリシー) を回避して、異なるオリジンのリソースとやり取りし放題になる脆弱性だということでしょうか?
もし、そうだとしたら、例えば任意のドメイン名のWebサイトからCookieを盗めることになり、世界中が大騒ぎになってますよ。
の2つを勘違いされているようです。今回の問題はあくまでも後者です。
その根拠は、TALOS-2017-0306 - Cisco Talos [talosintelligence.com] の下記の記述
異なるオリジンへのネットワークアクセスの仕様 [mozilla.org] を理解していれば分かりますが、ブラウザ標準の Same-Origin Policy (同一オリジンポリシー) では、別のオリジンからの画像の読み込みはブロックされません。それがブロックされると書かれているので、あくまでも Content Security Policy (CSP) による制限の話です。
Re: (スコア:0)
同一生成元ポリシーで別オリジンと判定されてもリクエストを飛ばす類の事は大体問題なく許可されます。
CORSで利用を許可する方法からしてレスポンスからヘッダを確認とかなので、リクエストは飛んでしまいます。
CORSで許可されないと無理なのは取得した内容の利用や操作だけでブラウザ上の表示とかは普通に行われます。
なのでXSSした標的のサイトから取ったデータを攻撃者が管理するサーバに送るのに制限はありませんし、
Access-Control-Allow-Originをつければ次の操作指示を流し込むことも出来ます。
CSRFを行う場合はCSRF先の防御状態に依存するのでなんともいえませんけ
Re: (スコア:0)
#3277042 の内容は、もう 'unsafe-inline' を使うかどうかと関係ない話になってるので
その領域まで行ってしまった推測はほぼ確実に間違った解釈だろうと言える
また、このコメの流れを見ればわかる通り、 headless 自体が今回の脆弱性の内容を正しく理解できていない
誤った脆弱性情報を流すことはまさにそれ自体が社会の迷惑以外の何物でもないので
可能であればいったんストーリー自体を取り下げるか、大幅修正するべきだろう
そもそもなぜそんな曖昧な認識のまま、
あたかもMSが悪かのようなタイトルで記事を掲載してしまったのか
スラドそのものの体制から見直すべきいい機会だと思う
Re: (スコア:0)
#3277042は#3277037のコメントに対する返信なのでCSP未設定の場合の話であってますよ。
headless氏の誤解を前提とすると矛盾が生じるって話なので。
> あたかもMSが悪かのようなタイトルで記事を掲載してしまったのか
確かにheadless氏は攻撃手順を誤解してはいるようですが、
'unsafe-inline'なCSP制限下で制限を回避できてしまうのは事実ですし、
#3276913の内容を見ると分かるようにCSP3(のnon-normativeな項目)ではCSPは継承するべきとされるようです。
CSP2では該当箇所が見当たらないのでCSP2ではリーガルな挙動であり、
MSはCSP3のnon-normativeな項目にはまだ対応して
Re: (スコア:0)
今回の件でいえば、 headless 氏が
「すべての外部サイトに対して攻撃者が好きに攻撃し放題の重大脆弱性なんだ、それをMSだけ修正しないんだ」
と一人で勘違いした結果、
ストーリーのタイトルや文面がMSに対して強い攻撃性を持った内容になっていることが重大な問題
もっと言えばタイミングも最悪で、9/12の某林檎イベントの直前となっている
イベントの前に何が何でもMSを叩きたいという思考が暴走した結果の勘違い(または意図的なフェイクニュース)と思われても仕方がない