[自分用メモ] [ブラウザ][セキュリティ]Webサイトの対応しているTLSバージョンの確認方法

SecurityWeb_browser

Transport Layer Security(TLS)プロトコルは、Web上でセキュリティを確立するための手段ですが、このプロトコルにおいて特にTLS 1.0およびTLS 1.1に存在する欠陥と弱点を改善したいという流れから、主要なブラウザはTLS 1.0/1.1を無効化する流れになりました。

Webサイト側がTLS1.2以上に対応しているかどうか確認する方法についてちょいと調べてみました。

TLS 1.0/1.1が無効化されることについての記事

「Google Chrome」「Firefox」「Safari」もTLS 1.0/1.1のサポートを廃止へ/「Microsoft Edge」「Internet Explorer 11」と足並みをそろえ、2020年前半に実施
 サポートされているバージョンの「Microsoft Edge」と「Internet Explorer 11」で2020年前半、「TLS 1.0」「TLS 1.1」のサポートがデフォルトで無効化されることが明らかになったが、他のWebブラウザーでも両プロトコルの廃止が計画されている。
大手4社のWebブラウザ、2020年にTLS 1.0と1.1を無効化
EdgeとInternet Explorer(IE)11、Safari、Firefox、Chromeで、2020年にTLS 1.0とTLS 1.1が無効化される。
ついにTLS 1.0/1.1の無効化が決定!影響や確認・対応方法とは? | さくらのSSL
昨年、当コラムにて「いつかTLS 1.0/1.1は利用できなくなる」と言及しましたが、ついにその時が2020年上半期(最短で2020年1月)に迫りました。今回は「TLS 1.0とは?」のおさらいから、利用できなくなった場合の影響、そして確認と対応方法についてご紹介します。

確認方法について

cURL, OpenSSLコマンドでTLSのバージョンを指定する方法 - Qiita
関連記事 pythonのrequestsでTLSのバージョンを指定する方法 pythonのrequestsモジュールのデフォルトのTLSバージョンはいくつなのか cURL TLSのバージョンを指定してアクセス TLS1...

とりあえずはopensslを使用する形が確認しやすいと思います。

TLS1.0

$ openssl s_client -connect xxxx.com:443 -tls1 < /dev/null

TLS1.1

$ openssl s_client -connect xxxx.com:443 -tls1_1 < /dev/null

TLS1.2

$ openssl s_client -connect xxxx.com:443 -tls1_2 < /dev/null

対応している場合

cipherとしてアルゴリズムが選択されている。

~ ❯❯❯ openssl s_client -connect example.jp:443 -tls1 < /dev/null
New, SSLv3, Cipher is DHE-RSA-AES256-SHA
Server public key is 2048 bit
Secure Renegotiation IS supported
Compression: NONE
Expansion: NONE
No ALPN negotiated
SSL-Session:
    Protocol  : TLSv1
    Cipher    : DHE-RSA-AES256-SHA

対応していない場合

cipherが0000となり未対応を示している。

~ ❯❯❯ openssl s_client -connect example.jp:443 -tls1_2 < /dev/null
New, (NONE), Cipher is (NONE)
Secure Renegotiation IS NOT supported
Compression: NONE
Expansion: NONE
No ALPN negotiated
SSL-Session:
    Protocol  : TLSv1.2
    Cipher    : 0000
    Session-ID: 
    Session-ID-ctx: 
    Master-Key: 
    PSK identity: None
    PSK identity hint: None
    SRP username: None
    Start Time: 1584065318
    Timeout   : 7200 (sec)
    Verify return code: 0 (ok)
    Extended master secret: no

手っ取り早く確認する方法

中々手元もでopensslを使用する環境を持っている方は少ないと思うので、その時はQualys SSL LabsのSSL Server Testを使用するのが良いと思います。

SSL Server Test (Powered by Qualys SSL Labs)
A comprehensive free SSL test for your public web servers.

セキュリティそのものがしっかりしているかを確認できるわけですが、その中でconfigurationのProtocolの項目の中で対応しているTLSのバージョンを確認することが出来ます。

弊ブログの場合、TLS 1.0/1.1は無効化されTLS 1.2/1.3に対応していることを示している

2020年3月27日:追記

新型コロナウィルスの影響で、Mozilla FirefoxにおいてTLS 1.0/1.1が最有効化されることになりました。

FirefoxがTLS1.0と1.1を再度有効化、新型コロナウイルス情報を発信する政府サイトへのアクセスを改善するため
「TLS」はインターネットなどのネットワークにおいて、セキュリティを要求されるデータ通信を行うプロトコルの一種です。TLSの古いバージョンであるTLS1.0、TLS1.1には多数の脆弱性があると指摘されていたため、主要なブラウザは安全性向上のためにTLS1.0、TLS1.1を無効化することを決定しています。Mozill...
この記事を書いた人

kometchtech

うつ病を患いながら、IT業界の末席にいるおっさんエンジニア。科学計算をしたことがないのに、HPC分野にお邪魔している。興味のある分野で学習したことをblogにまとめつつ、うつ病の経過症状のメモも置いておく日々。じつはRouterboard User Group JPの中の人でもある。 Amazon欲しいものリスト / Arm板を恵んでくれる人募集中

AD / 広告
いつか、そのとき、あの場所で。rev.2
タイトルとURLをコピーしました