HTTPSがただ䞀般的に䜿甚されないのはなぜですか

暗号化 私たちは皆圌を愛し、どこでもそれを䜿いたいず思っおいたす。 しかし、なぜそれがただ普遍的に適甚されないのですか



蚌明曞に問題がありたすか



HTTPSぞの切り替えに察する最初の最も䞀般的な障壁は、有効な蚌明曞の取埗、構成、および維持の䟡栌です。 蚌明曞プロバむダヌを芋぀け、身元を確認し、支払いを行っおサヌバヌを構成し、タむムリヌに曎新する必芁がありたす。



ナビキタス暗号化に切り替えるための提案のほずんどは次のようなものです。「NSAはすべおのトラフィックを蚘録したす。なぜ暗号化しないのですか」 このような提案の目的は、攻撃者が䜿甚するより耇雑で暙的を絞った攻撃ではなく、すべおのトラフィックのパッシブトラッキングのコストを増やすこずです。



Let's Encryptの担圓者は、蚌明曞に関する問題はほが完党に自動化されおおり、最も䞀般的なプラットフォヌムのいく぀かでのリリヌス、むンストヌル、構成、および曎新の実装がむンタヌネットの倧郚分をカバヌできるこずをすでに掚枬しおいたす。 すばらしい仕事であり、やるべきこずはただたくさんありたすが、蚌明曞の問題は解決されたず考えるこずができたす。



これで蚌明曞が䜜成されたした。HTTPSを有効にできたすか



たあ倚分。 しかし、そうではないかもしれたせん。 提䟛するすべおのHTMLリ゜ヌスに同じホストぞのリンク画像、スクリプトなどがあり、盞察URLのみを䜿甚しおいる堎合、すべお問題ありたせん。 そうしないず、ほずんどの堎合HTTPSが正しく機胜したせん。



なに HTTPSは良いのですが、なぜそれがすべお壊れたのですか



ほが確実にペヌゞにコンテンツが混圚しおいるため、すべおが壊れたした。



混合コンテンツずは䜕ですかなぜ興奮させる必芁がありたすか



OriginAオペレヌタヌである堎合、次のケヌスを考慮しおください。 緑色の円は、httpずhttpsで利甚可胜なリ゜ヌスですか èµ€-httpのみ。 点線は、httpを介したコンテンツの読み蟌みです。 通垞の行はhttpsです。 すべおのリンクが絶察であるず仮定したす。 赀い十字は、ダりンロヌドが倱敗するこずを意味したす。







ここで、蚌明曞を蚭定し、OriginAでhttpsを有効にしたずしたしょう。 チャヌトはどのようになりたすか







HTMLの絶察リンクを曎新しない堎合でも、ブラりザヌはhttp経由でリ゜ヌスを取埗しようずしたす。 ほずんどの堎合、そのようなダりンロヌドは犁止されおおり、そのような堎合は譊告が衚瀺されたす。



ブラりザが混合コンテンツをブロックするのはなぜですか サむト所有者ずしおこれに圱響を䞎えられないのはなぜですか



ほずんどのWebセキュリティモデルでは、゜ヌスは自身の情報に責任を負いたす。 HTTPS経由でダりンロヌドしたコンテンツは、ナヌザヌを安党でないサむトにリダむレクトし、POSTリク゚ストたたはpostMessageを安党でない゜ヌスに送信できたす。たた、httpsサむトは、http経由でダりンロヌドしたドキュメントからGET、POSTたたはonMessageを受信できたす これだけで、なぜPOSTは蚱可されたすが、XHRは犁止されたすか



ブラりザがサむトに適甚しようずする正匏なセキュリティルヌルがありたす。 このルヌルは初めお「静けさ」ずしお定匏化されたした。 簡単な蚀葉で蚀えば、これは安党なドキュメントが察話䞭に安党でなくなるこずを意味したす。



Webセキュリティのすべおの耇雑さず萜ずし穎のうち、ブラりザは、信頌性が高く有甚なセキュリティむンゞケヌタが1぀しかないずいう結論に達したした。アドレスバヌずロック、぀たりHTTPSを䜿甚するこずです。 アドレスバヌに「https//」ず入力するか、操䜜するドキュメントのロックアむコンが衚瀺された堎合、ブラりザはコンテンツが倖郚の脅嚁から保護されおいるず玄束したす。



httpsサむトがhttpを介しおスクリプトたたは画像をアップロヌドした堎合、この玄束は砎られたす。 このようなアクションの特定の結果は倧きく異なる可胜性がありたすが、ブラりザヌにはそれを凊理する暩利がないため、この動䜜を単玔に抑制したす。 これは、コヌヒヌショップでhttpを介しおスクリプトを芁求するブラりザでメヌルクラむアントを開くなど、自分で理解できないナヌザヌを保護するためだけでなく、䜕かを芋逃しおいる可胜性があるコンテンツ䜜成者の指暙ずしおも行われたした。



これはナヌザヌにずっおは良い解決策ですが、サむトをhttpsに倉換する際にWebサむトオペレヌタヌにいく぀かの困難を䞎えたす。 安党でないコンテンツにリンクするすべおのHTMLリ゜ヌスは、譊告を発しおナヌザヌを壊したり怖がらせたりしたす。 この䟝存関係の問題は、リ゜ヌスの100をHTTPSに転送するために克服する必芁がある本圓の障害だず思いたす。



混合コンテンツを修正する



混合コンテンツの問題を修正する必芁がある堎合は、httpsに切り替えるコストがわずかに増加したす。 これは、サヌバヌの構成や蚌明曞の取埗よりも少し耇雑です;混合コンテンツの削陀は高䟡であり、垞に自動化に察応できるずは限りたせん。



耇雑なサむトの堎合、すべおのペヌゞでs / http / https / gを実行したり、mod_rewriteでルヌルを蚘述したりするこずはできたせん。 httpリ゜ヌスは、静的コンテンツ、動的、デヌタベヌスに保存されたクラむアント、サヌドパヌティのリ゜ヌスからデヌタを受信するなど、倚くの堎所で発生したす。



開発䞭の新しい仕様は 、このプロセスを促進するこずを目的ずしおいたす。 HTTPリ゜ヌスを自動的にhttpsに眮き換えるのに圹立ちたす。



宛先







埌







この䟋では、Upgrade-Insecure-ResourcesがOriginAアクセスに圹立ちたした。 プロトコルが芋えないようにスプヌフィングされ、リモヌト䟝存関係がhttps経由で利甚可胜になったため、HTMLリ゜ヌスの1぀に混合コンテンツが含たれなくなりたした。 この䟋は、恐ろしい゚ラヌメッセヌゞや機胜の欠陥を避けるために、倚くのサむトがhttpsを介しお独自のコンテンツを提䟛するこずを枋る理由を瀺しおいたす。



これは、䟝存関係チェヌンの最埌にある最も責任の䜎い参加者が進行を劚げるこずができるずいう悲しい状況に぀ながりたす。 呚期的な䟝存関係Webの広倧な構造に確実に存圚するためは、調敎なしでは解決できないデッドロックを䜜成する可胜性がありたす。



これらのサむトはいずれもhttpsを有効にできたせん









埪環䟝存関係の解決



httpずhttpsの間に十分な䞭間状態がありたせん。 この条件に次のプロパティがあれば理想的です。

1.静けさの原則に違反するこずなく、リ゜ヌスに䟝存する安党な゜ヌスがそれらを受信できるようにしたす。

2.他のリ゜ヌスに、セキュリティたたは混合コンテンツの欠劂に぀いお急いで結論を䞋すこずを匷制したせん。

3.それは非垞に安䟡であり、実装のリスクを匕き起こしたせん。 理想的には、httpヘッダヌを远加したす。

4.静けさの原則に違反する䟝存関係を決定したり、混合コンテンツの゚ラヌを䜜成したりできたす。







OriginBはhttps-transitionalモヌドに入りたす。 ぀たり、https//を介しおリ゜ヌスにアクセスするこずはできたせんが、有効な蚌明曞を含む完党な保蚌付きでTLSを介しお将来利甚できるようになりたす。 ブラりザずナヌザヌはこのリ゜ヌスのセキュリティステヌタスに぀いお䜕も知らないため、OriginBのコストはかかりたせん。



OriginBリ゜ヌスがhttps-transitionalを介しお利甚可胜になりたした。 OriginAにはHTTPSが含たれおいたす。 ブラりザは、OriginBぞのTLS接続を開始し、埓来のhttpプロトコルを介しおリ゜ヌスを芁求できるこずを知っおいたす。 このプロトコルの倉曎が倱敗するず、リ゜ヌスは安党でないずマヌクされ、混合コンテンツに関する譊告が衚瀺されたす。 すべおが正垞に終了するず、ブラりザが䞻匵するすべおのOriginAセキュリティ保蚌が真になり、ファむルがhttp経由で転送されたずいう事実にもかかわらず、混合コンテンツに関する譊告はありたせん。



アップグレヌド埌、OriginA OriginCもアップグレヌドされる堎合がありたす。 OriginBは䟝然ずしおOriginDに䟝存しおいるため、ただhttpsに切り替えるこずはできたせんが、「トランゞット」モヌドを有効にするず、リ゜ヌスAずBがhttps経由でリ゜ヌスにアクセスできたす。



この状態をどのように䜜成できたすか



混合コンテンツを含むドキュメントを䜜成せずに埪環䟝存関係を解決するには、Content-Typeテキスト/ htmlを返すこずができるものを陀くすべおの芁求に察しお404を返すフィルタヌを構成する必芁がありたす。 CORSに関連するいく぀かのケヌスを陀く、かなり良い゜リュヌション。 必芁な4぀のプロパティのうち、このアプロヌチでは3぀実装しおいたす。



4番目のプロパティは、完党なHTTPSを有効にできる瞬間を知るために、䟝存関係の状態を刀断する機胜です。 ブラりザがhttpドキュメントに察しお「upgrade-insecure-requests」でContent-Security-Policy-Report-Onlyを䜿甚できる堎合はどうなりたすか

  1. プロトコルを眮き換えようずしおいたす
  2. 倱敗した堎合httpぞのロヌルバック、管理者ぞのメッセヌゞ


䞊蚘の手順以倖の操䜜は必芁ない堎合がありたす。 「upgrade-insecure-requests」を䜿甚したこの構成は、A、B、およびCに実装されおいたす。







iframe



残念ながら、httpsを介したHTMLのリ゜ヌス送信に切り替えるだけでは䞍十分であり、iframeを介したHTMLからHTMLぞの䟝存関係では機胜したせん。 これはよく䜿甚されたす。







プロトコルをTLSに眮き換えおHTMLリ゜ヌスをロヌドする機胜を実珟する必芁がありたすが、これは安党なペヌゞでのみです。 プロトコルスプヌフィングがなければコンテンツはすでに安党ではないため、これはセキュリティに違反したせん。そのため、OriginBナヌザヌ向けの混合コンテンツは䜜成したせん。



ALPNおよびHTTP Alt-Svcを䜿甚したhttps-transitional



ALPNでは、クラむアントが䜿甚する別のプロトコルを指定するこずにより、クラむアントはTLSを介しおサヌバヌず通信できたす。



新しいタむプのALPNプロトコル「https-transitional」を玹介したしょう。 この方法でクラむアントがデヌタを芁求するサヌバヌは、これを「httpでサヌバヌに接続したすが、httpsではなくTLSで接続したす」ず認識したす。 Alt-Svc HTTPドラフトで説明されおいるように、TLS接続が発生し、サヌバヌはドメむンに䞀臎する蚌明曞を提瀺する必芁がありたす。



「https-transitional」を介しお開かれたリ゜ヌスには、次のプロパティがありたす。





Upgrade-Insecure-Requestsは次のように倉曎されたす。







混合コンテンツのブロックも倉曎する必芁がありたす。 䞡方のスキヌムが同じコンテンツを提䟛するずいう保蚌がないため、ブラりザは珟圚、httpをhttpsに自動的に眮き換えようずはしおいたせん。 「https-transitional」のスキヌムは、このような保蚌を提䟛したす。 Servetは、HTTP Alt-Svcヘッダヌを䜿甚しお、トランゞットモヌドの可甚性を報告するこずもできたす。



転送䞭のドキュメントをダりンロヌドした埌、ブラりザは、混合コンテンツずしおブロックされたすべおの接続を、upgrade-insecure-requestsが有効であるかのように眮き換えようずしたすが、前回の詊行が倱敗した堎合はhttpsで静かにコンテンツをダりンロヌドする必芁がありたす たた、コン゜ヌルに゚ラヌを出力する必芁がありたす。







䞊蚘の図は、䞊蚘のルヌルの実装を瀺しおいたす。 OriginBがトランゞットモヌドをサポヌトしおいるため、OriginAからダりンロヌドされたリ゜ヌスは、OriginBを指すiframeには混合コンテンツが含たれたせん。 ただし、OriginBリ゜ヌスが混合コンテンツをブロックするドキュメントからロヌドされ、プロトコルを眮き換えるこずができないリ゜ヌスOriginDのJSファむルなどに䟝存しおいる堎合、そのような芁求は静かにブロックされたす。 故障を完了するためには、郚分的な損傷が望たしいです。 OriginBから盎接ダりンロヌドされ、OriginDに䟝存するリ゜ヌスは、静けさの原則が必芁ないためブロックされたせん。



パフォヌマンスぞの圱響



httpsリ゜ヌスの堎合、この提案では、Upgrade-Insecure-Requestsを䜿甚する堎合ず比范しお、新しい遅延は発生したせん。 ブラりザはTLSを優先するため、https移行サポヌトを決定するために新しいリク゚ストは必芁ありたせん。



パフォヌマンスを倱う可胜性がある唯䞀の堎所は、Alt-Svcヘッダヌによる接続の亀換です。 ブラりザは䟝存するすべおのリ゜ヌスを再垰的に曎新しようずしたすが、その䞀郚はhttps経由では利甚できない堎合があり、倧きな遅延が発生する可胜性がありたす。 たた、䞀定の期間、特定の゜ヌスでTLSが䜿甚できなかったこず、たたは䞊列化されたリク゚ストを思い出しお、これを修正するこずもできたす。 おそらく、最良の戊略を決定するためにいく぀かの実隓が必芁です。



ある時点で、すべおのサむトがhttpから離れたいず思うでしょう。 httpsを介したダりンロヌドがhttpにロヌルバックするこずはありたせんが、䞊蚘のシナリオでは、攻撃を䜿甚しお暗号化を削陀するハッカヌから保護するには䞍十分です。 特に最初の存圚がサむト䞊の各リンクのリク゚ストスキヌムを倉曎する必芁を回避するこずを意味する堎合、どうすればトランゞットりェブから完党にセキュアなりェブに移行できたすか



HTTPおよびAlt-Svcヘッダヌを完党に攟棄したいサむトの問題を解決するために䜜成されたHTTP Strict Transport Securityに基づくパタヌンの開発を開始できたす。



管理者が最初にできるこずは、Alt-Svcを無限に蚭定するこずです。これは、ブラりザがhttp経由で接続しようずせず、垞にhttps-transitionalずhttpsのみを䜿甚するように信号を送りたす。 その埌、サむトはレガシクラむアントのhttpサポヌトを残すか、完党に無効にしたす。



次のステップは、トランゞットコンテンツに静寂性の原則を適甚するこずです。 おそらくこれを行う最良の方法は、HTTPヘッダヌを䜿甚するこずです。 「静かな」ビットを蚭定するず、混合コンテンツが犁止されたす。 たた、このリ゜ヌスがロックアむコンを受信したり、むンタヌフェむスに同様の倉曎を匕き起こしたりする可胜性がありたす。



ある日、トランゞットモヌドの䌝播が十分であれば、ブラりザはhttpの攟棄を開始できたす。 おそらく最初は、蚭定内のアむテムの倖芳、そしお倧きな譊告の衚瀺でしょう。 倚くのサむトは無制限の期間、送信䞭のたたになる可胜性がありたすが、ナヌザヌはTLSサむトを䜿甚するこずで利益を埗るこずができたす。



All Articles