アカウント名:
パスワード:
最近はintegrity付きでCDNから読み込むタグの例が書かれてることも多いから、ちゃんとそういうタグを使うようにしてれば大丈夫そう。
https://developer.mozilla.org/ja/docs/Web/Security/Subresource_Integrity [mozilla.org]
えー。多いか?初めて知った。積極的に使っていきたい。
去年のStatCounterの件でもSRIは紹介されてた。 [security.srad.jp]
SRIの難点はセキュリティホール等の致命的バグが有った時に、呼び出し元もハッシュを修正しないとサイトの機能が死ぬ点。
似たような点で、呼び出し元のスクリプトがバージョン管理されていてファイル名が分かれていないと厳しいこともかな。同じファイル名で機能追加するようなスクリプト配信には向かない。
これ本来はハッシュじゃなくて電子署名とかで解決すべきだよね。
電子署名じゃないのは、金銭や処理コストがハッシュより重たいからなんですかね。真面目にやると失効確認等でサイトの読み込み速度落ちてしまうし。
ちなみに、SRIの致命的な弱点は「integrityを消せば動いてしまう」事。integrityを消して、解決したつもりになる馬鹿を確実に排除できないといけない。
そこは一応、Content Security PolicyでSRI強制を指定できる。
https://developer.mozilla.org/en-US/docs/Web/HTTP/Headers/Content-Secu... [mozilla.org]
もちろん、Content Security Policyを消せば動いてしまうという弱点にすり替わっただけとも言える。
そうかな。電子署名にしてもあんまり解決には繋がらないと思う。
そもそもこれ、「制作者が面倒くさくなってソフトの更新を放棄して配布ドメインも自然消滅するに任せた」.js、なんかを読み込む話でしょ。もっと大手が作ってて、「何か下手を打ったら大手の名前に傷が付くからきっと真面目にメンテされ続けるだろう」.js、の類ならまだしも。
そんなレベルの、どこの馬の骨かも知れない人が気まぐれに作って公開したソースを、何の検証も無しに自動で読み込もうと言うのがそもそもの間違い。せめて、バージョンアップされる毎にいくらかの動作確認はして読み込み部分のハッシュを書き換えて、ぐらいの手間は掛けないと話にならない。
署名で放置ドメインの再利用で悪さできなくしても、悪い連中が「そのソフト更新止めちゃうの? じゃあ秘密鍵ごと権利を売ってよ。メンテするからさ」に手法を変えるだけ。悪人の手間がいくらか手間は増えるだろうけど、面倒くさくなって自然消滅するまで放ったらかしにしてるようなものを買ってくれると言うなら、作り手としてはラッキーだろうし。
より多くのコメントがこの議論にあるかもしれませんが、JavaScriptが有効ではない環境を使用している場合、クラシックなコメントシステム(D1)に設定を変更する必要があります。
※ただしPHPを除く -- あるAdmin
integrity (スコア:2, 参考になる)
最近はintegrity付きでCDNから読み込むタグの例が書かれてることも多いから、ちゃんとそういうタグを使うようにしてれば大丈夫そう。
https://developer.mozilla.org/ja/docs/Web/Security/Subresource_Integrity [mozilla.org]
Re: (スコア:0)
えー。多いか?初めて知った。積極的に使っていきたい。
Re:integrity (スコア:0)
去年のStatCounterの件でもSRIは紹介されてた。 [security.srad.jp]
SRIの難点はセキュリティホール等の致命的バグが有った時に、呼び出し元もハッシュを修正しないとサイトの機能が死ぬ点。
Re: (スコア:0)
似たような点で、呼び出し元のスクリプトがバージョン管理されていてファイル名が分かれていないと厳しいこともかな。
同じファイル名で機能追加するようなスクリプト配信には向かない。
Re: (スコア:0)
これ本来はハッシュじゃなくて電子署名とかで解決すべきだよね。
Re: (スコア:0)
電子署名じゃないのは、金銭や処理コストがハッシュより重たいからなんですかね。
真面目にやると失効確認等でサイトの読み込み速度落ちてしまうし。
ちなみに、SRIの致命的な弱点は「integrityを消せば動いてしまう」事。
integrityを消して、解決したつもりになる馬鹿を確実に排除できないといけない。
Re: (スコア:0)
そこは一応、Content Security PolicyでSRI強制を指定できる。
https://developer.mozilla.org/en-US/docs/Web/HTTP/Headers/Content-Secu... [mozilla.org]
もちろん、Content Security Policyを消せば動いてしまうという弱点にすり替わっただけとも言える。
Re: (スコア:0)
そうかな。電子署名にしてもあんまり解決には繋がらないと思う。
そもそもこれ、「制作者が面倒くさくなってソフトの更新を放棄して配布ドメインも自然消滅するに任せた」.js、なんかを読み込む話でしょ。
もっと大手が作ってて、「何か下手を打ったら大手の名前に傷が付くからきっと真面目にメンテされ続けるだろう」.js、の類ならまだしも。
そんなレベルの、どこの馬の骨かも知れない人が気まぐれに作って公開したソースを、何の検証も無しに自動で読み込もうと言うのがそもそもの間違い。せめて、バージョンアップされる毎にいくらかの動作確認はして読み込み部分のハッシュを書き換えて、ぐらいの手間は掛けないと話にならない。
署名で放置ドメインの再利用で悪さできなくしても、悪い連中が「そのソフト更新止めちゃうの? じゃあ秘密鍵ごと権利を売ってよ。メンテするからさ」に手法を変えるだけ。悪人の手間がいくらか手間は増えるだろうけど、面倒くさくなって自然消滅するまで放ったらかしにしてるようなものを買ってくれると言うなら、作り手としてはラッキーだろうし。