HOME»情報処理安全確保支援士掲示板»平成31年春午後Ⅰ問2設問1(3)
投稿する

[1433] 平成31年春午後Ⅰ問2設問1(3)

 きなこさん(No.1) 
2点質問があります。

①図1のすぐ後の問題文に「メールサービスPはHTTP over TLSでサービスが提供されている。HTTPでアクセスした場合はHTTP over TLSのURLのリダイレクトされる仕様になっており、HSTSは実装されていない。」と書かれていますが、HSTSが実装されているときの違いがよくわかりません。

HTTPSのURLでリダイレクトするということは、結局はHTTPSでアクセスすることができるのではないかと思ってしまいます。設問1(3)と関連していますが、なぜ解答のように「HTTPで接続が開始されたから」となるのか、解説いただけますと幸いです。

②また、あわせて質問してしまい恐縮ですが、図2の1行目について、攻撃者はDHCPサーバも用意する必要があるのではないかと思ってしまいます。攻撃者が用意したDNSサーバを設定するためには、DHCPサーバも攻撃者側で用意して、偽のDNSサーバを設定させるようにする必要があるのではと。

ネットでDHCPサーバによるDNSサーバの設定方法を調べてみても、詳しく書いてあるのが見つけられなく、すみません、解説いただけますと幸いです。

私の知識不足によりお手数をおかけします。
2024.03.22 03:44
wrinklyさん(No.2) 
>②また、あわせて質問してしまい恐縮ですが、図2の1行目について、攻撃者は
>DHCPサーバも用意する必要があるのではないかと思ってしまいます。
私も最近同様の質問をしました。
以下のスレッドを参考にしてください。
[1409] 平成31年春 午後Ⅰ 問2 設問1(1)
https://www.sc-siken.com/bbs/1409.html
2024.03.22 09:59
wrinklyさん(No.3) 
>①図1のすぐ後の問題文に「メールサービスPはHTTP over TLSでサービスが提供されて
>いる。HTTPでアクセスした場合はHTTP over TLSのURLのリダイレクトされる仕様に
>なっており、HSTSは実装されていない。」と書かれていますが、HSTSが実装されて
>いるときの違いがよくわかりません。
<HSTSが実装されている場合>
例えば、Sさんが以前にHTTPでメールサービスPに接続した時のHTTPレスポンスで
Strict-Transport-Security: max-age=<expire-time>
を受信していて、有効期限内の場合、
①Sさんが、HTTPで再度メールサービスPに接続しようとすると、ブラウザがHTTPを
  HTTPSに強制的に変更して接続するようになります。
②その結果、ブラウザでメールサービスPのサーバ証明書の検証が行われます。
<HSTSが実装されていない場合>
①SさんがHTTPでメールサービスPに接続しようとすると、
  正しいメールサービスPのサーバに接続した場合は、HTTPS のURLにリダイレクト
  されてHTTPSで接続するようになります。
②しかし、今回のように偽のメールサービスPのサーバに接続してしまった場合
  HTTPでメールサービスPに接続してもHTTPSにリダイレクトされず、HTTPで
  接続を開始してしまいます。HTTPなので、サーバ証明書の検証もされません。
2024.03.22 10:30
 きなこさん(No.4) 
ご回答ありがとうございます。過去スレッドについて拝見させていただきました。

①については、結局は攻撃者が用意した無線LANアクセスポイントにDHCPサーバの設定がされていた、それにより攻撃者の用意したDNSサーバの設定がされたと理解すればよいと思いましたが、認識合いますでしょうか。

またHSTSについては、なんとなくは分かったのですが、結局HSTSが実装されていても偽のメールサービスPにHTTPで接続すればそのままHTTPになると思ったのと、HSTSが実装されていなくても正規のメールサービスPにHTTPで接続すればHTTPSの接続に切り替わってサーバ認証ができると思ったので、「HSTSが実装されているか否か」の違いがわかりませんでした。HSTSが実装されていても実装されていなくても同じではと思いました。

すみません、私の解釈がおそらく誤っているかもしれませんが、ご指摘・解説いただけますと幸いです。
2024.03.22 14:49
 きなこさん(No.5) 
冒頭、「①については~~」ではなく、「②については~~」でしたね。失礼しました。
2024.03.22 14:50
wrinklyさん(No.6) 
>①については、結局は攻撃者が用意した無線LANアクセスポイントにDHCPサーバの設定が
>されていた、それにより攻撃者の用意したDNSサーバの設定がされたと理解すればよいと
>思いましたが、認識合いますでしょうか。
はい。合ってると思います。

>またHSTSについては、なんとなくは分かったのですが、結局HSTSが実装されていても
>偽のメールサービスPにHTTPで接続すればそのままHTTPになると思ったのと、
なりません。ブラウザによって強制的にHTTPSに変更されます。それがHSTSの
仕組みです。よって、ブラウザでメールサービスPのサーバ証明書の検証が行われ
ますが、攻撃者による偽のメールサービスPのサーバでは、正規のサーバ証明書が
掲示できず、ブラウザに「このサーバ証明書には問題があります。」のような
エラーメッセージが表示されて、Sさんが何かヘンだと気付くはずです。

>HSTSが実装されていなくても正規のメールサービスPにHTTPで接続すればHTTPSの
>接続に切り替わってサーバ認証ができると思った
Sさんが、HTTPで正規のメールサービスPのURLで接続したつもりでも、攻撃者が
用意したDNSサーバを参照するので、偽のメールサービスPのサーバに接続させ
られてしまいます。偽のメールサービスPのサーバは、HTTPSにリダイレクトして
くれないと思います。(多分)
2024.03.22 17:48
 きなこさん(No.7) 
ご回答ありがとうございます。

> なりません。ブラウザによって強制的にHTTPSに変更されます。それがHSTSの仕組みです。よって、ブラウザでメールサービスPのサーバ証明書の検証が行われ
ますが、攻撃者による偽のメールサービスPのサーバでは、正規のサーバ証明書が掲示できず、ブラウザに「このサーバ証明書には問題があります。」のようなエラーメッセージが表示されて、Sさんが何かヘンだと気付くはずです。

→上記については、偽のメールサービスPにHSTSが実装されているという前提で成り立つと思ってました。正規のメールサービスPにHSTSが実装されていたとしても、偽のメールサービスPにHSTSが実装されていなければ、偽のメールサービスPにアクセスしてもHTTPSに誘導できないのではと思いまして。すみません、私の認識が誤っているかもしれませんが、ご指摘いただけますと幸いです。


> Sさんが、HTTPで正規のメールサービスPのURLで接続したつもりでも、攻撃者が用意したDNSサーバを参照するので、偽のメールサービスPのサーバに接続させられてしまいます。偽のメールサービスPのサーバは、HTTPSにリダイレクトしてくれないと思います。(多分)

→なるほど、サーバ側がリダイレクトを指示するので、偽のメールサービスPではリダイレクトを指示してくれないという形ですね。なんとなく理解できました。
2024.03.23 10:40
pixさん(No.8) 
SC ダイヤモンドマイスター
横から失礼します。
本設問を解くにあたり、前提を確定しておく必要があります。
・正規のメールサービスP
URL
  (h)ttp://xxx.mail.org
      (h)ttps://にリダイレクトする
  (h)ttps://xxx.mail.org
      HSTS設定が設定されている アクセスするとクライアントはHSTSが設定される

・攻撃者が用意したメールサービスP
URL
  (h)ttp://xxx.mail.org
    ※ (h)ttps:// は正規の証明書が入手できないため、存在しない

攻撃者は正規の証明書が用意できないため、(h)ttp://のサイトしか
用意できないというのが、この設問の前提構成です。
2024.03.23 13:08
 きなこさん(No.9) 
pixさま、ご回答ありがとうございます。理解できそうなのですが、すみません、確認させてください。

攻撃者が用意したメールサービスPに対して、攻撃者側で下記2つの設定はできるのでしょうか。
(1) (h)ttps://にリダイレクトする
(2) HSTS設定が設定されている

(1)と(2)は、正規の証明書を持っていなくそもそもhttpsのURLがないので、できないという理解なのかなと思っています。(認識誤ってましたらご指摘いただけますと幸いです)

ただ、ここで疑問に思ったのですが、攻撃者側では基本的にhttps通信をさせることはできない、ということでしょうか。(勉強していて今さらながらに疑問に思いまして。httpしかできないのであれば、httpsのTLSサーバ認証ですべてNGになってしまうと思いまして。)

偽のサーバ証明書を利用して、httpsのURL自体を攻撃者側で用意することも不可能なのでしょうか。

ちょっと脱線してしまい、変な質問してたらすみません、教えていただけますと幸いです。
2024.03.23 13:30
pixさん(No.10) 
SC ダイヤモンドマイスター
>攻撃者が用意したメールサービスPに対して、攻撃者側で下記2つの設定は
できるのでしょうか。
>(1) (h)ttps://にリダイレクトする
>(2) HSTS設定が設定されている
>(1)と(2)は、正規の証明書を持っていなくそもそもhttpsのURLがないので、
>できないという理解なのかなと思っています。(認識誤ってましたら
>ご指摘いただけますと幸いです)
これについては、(1)も(2)も攻撃者は(h)ttps://のサイトを持っていないので
意味がないです。

>ただ、ここで疑問に思ったのですが、攻撃者側では基本的にhttps通信をさせることは
>できない、ということでしょうか。(勉強していて今さらながらに疑問に思いまして。
>httpしかできないのであれば、httpsのTLSサーバ認証ですべてNGになってしまうと
>思いまして。)
できないのは、攻撃者がメールサービスPになりすますための正規の証明書を入手が
できないということです。
正規の証明書がなければ、名前だけメールサービスPでも、HTTPSとして通信できません。

>偽のサーバ証明書を利用して、httpsのURL自体を攻撃者側で用意することも
>不可能なのでしょうか。
偽のサーバ証明書を用意すれば、httpsのURL自体用意することができます。
しかし、クライアントが接続したときの証明書の検証でエラーが発生するため、
偽のサイトと気付かれてしまいます。
このような不完全な偽のサイトを用意すること自体、攻撃として意味をなしていません。
2024.03.23 13:50
wrinklyさん(No.11) 
>・正規のメールサービスP
>URL
>  (h)ttp://xxx.mail.org
>      (h)ttps://にリダイレクトする
>  (h)ttps://xxx.mail.org
>      HSTS設定が設定されている アクセスするとクライアントはHSTSが設定される
xxx.mail.orgが、(h)ttps://にリダイレクトを指示した時のHTTPレスポンスで、
Strict-Transport-Security: max-age=<expire-time>
が設定されていて、ブラウザは、httpsにリダイレクトするとともに
xxx.mail.orgのHSTSを設定し、次回以降httpでのアクセスをhttpsに強制的に変更する。
という流れだと思いましたが違いますでしょうか?
2024.03.23 13:59
pixさん(No.12) 
SC ダイヤモンドマイスター
HSTSは基本(h)ttps://にアクセスした際に設定されるというものです。
私の知る範囲では、(h)ttp://でHSTSというのはあまり聞いたことがありません。
(h)ttp:// はリダイレクトするだけのサイトなので、ここでHSTSの設定を
入れることは少ないと思われます。

HSTSはクライアント側で"(h)ttp://" -> "(h)ttps://"のリダイレクトを
行う機能です。
HSTS対象となるサイトは以下の2パターンが考えられます。

1.(h)ttp:// と (h)ttps:// 両方存在するサイト(本設問のパターン)
  (h)ttp:// へ初回アクセスした場合は、リダイレクトで (h)ttps://
  (h)ttps:// へアクセスした場合は、HSTSヘッダを返す

2.(h)ttps:// のみしか存在しないサイト
  (h)ttp:// へ初回アクセスした場合は、サイトがなくてエラーになる
  (h)ttps:// へアクセスした場合は、HSTSヘッダを返す
              HSTSが有効になれば、(h)ttp:// にアクセスしても(h)ttps://へ
              リダイレクトされるため、アクセスエラーは発生しなくなる
です。
この2のように、存在しない(h)ttp:// へのアクセスをクライアント側の
リダイレクトによって回避する目的もHSTSにはあります。
2024.03.23 14:26
wrinklyさん(No.13) 
>HSTSは基本(h)ttps://にアクセスした際に設定されるというものです。
>私の知る範囲では、(h)ttp://でHSTSというのはあまり聞いたことがありません。
そのようでした。
調べたところ、複数のサイトで下記のような記述がありました。

==========
※ HSTSはhttpsアクセスし、有効なSSL証明が確認できた場合にのみ有効に機能します。
・httpでアクセスした際
・有効なSSL証明書が確認できなかった際
はブラウザはHSTSの設定を無視し、有効に機能しません。
==========

ありがとうございました。
2024.03.23 15:27
 きなこさん(No.14) 
遅くなりました。ご回答ありがとうございます。

確かに偽のサーバ証明書を用意してもTLSサーバ認証で信頼できない旨のエラー表示が出るはずなので、あまり意味はないですね。

また、HSTSはhttpsにアクセスしたときに設定されるはなるほどと思いました。httpsにアクセスさせるよう、仮にhttpにアクセスしてもhttpsにリダイレクトさせ、HSTSを有効にさせるような形なんですね。なので、httpsにリダイレクトさせていると。

ありがとうございました。
2024.03.24 11:29

返信投稿用フォーム

スパム防止のためにスレッド作成日から30日経過したスレッドへの書込みはできません。
© 2014-2024 情報処理安全確保支援士ドットコム All Rights Reserved.

Pagetop