TLS協議版本診斷工具

只需輸入域名,即可診斷該伺服器對TLS 1.0至1.3各版本的支援情況。免費檢測伺服器是否仍啟用了已被棄用的舊版本協議。

什麼是TLS版本診斷

TLS(Transport Layer Security,傳輸層安全協議)是加密網站與瀏覽器之間通訊的機制,目前存在1.0、1.1、1.2、1.3共4個版本。其中TLS 1.0、1.1因存在BEAST、POODLE等已知漏洞,已於2021年被正式棄用,但只要伺服器未主動修改設定,舊版本協議就會繼續保持啟用狀態。本工具只需輸入域名,即可從外部診斷伺服器實際接受哪些版本的連線。

診斷的原理是:針對目標域名的443連接埠(HTTPS),依序明確指定TLS 1.0至1.3中的每個版本嘗試握手,並逐一確認連線是否成功。它檢查的不是憑證內容本身,而是伺服器「願意使用哪些協議版本通訊」這一設定本身,因此非常適合用於PCI DSS(支付卡產業安全標準)等外部稽核所要求的「停用棄用協議」自查場景。

TLS版本診斷的使用方法

  1. 輸入域名 在輸入框中輸入想要檢查的網站域名,例如`example.com`,無需加上`https://`或路徑部分。
  2. 點選「開始診斷」 工具會對目標域名的443連接埠依序嘗試TLS 1.0至1.3共4個版本的握手。
  3. 檢視各版本的支援情況 結果清單會顯示每個版本是「可連線」還是「無法連線(已停用)」,一眼就能看出哪些版本處於啟用狀態。
  4. 檢視綜合判定 「良好」「需注意」「危險」三種判定之一,能讓你立刻判斷目前設定是否存在問題。
  5. 如有問題請檢查伺服器設定 若已棄用版本仍處於啟用狀態,應考慮停用;若不支援現行版本,則應懷疑設定有誤,並聯絡伺服器管理員或主機服務商處理。

用好本工具的小技巧

  • PCI DSS(支付卡行業安全標準)自2018年起已要求停用TLS 1.0/1.1,將其視為"安全性不足的協議"。處理支付業務的網站尤其應優先檢查這一點。
  • 與檢查證書有效期和頒發者的SSL證書檢測工具不同,本工具診斷的是伺服器"協議層面"本身願意協商的版本設定。兩者搭配使用能獲得更全面的資訊。
  • 即使TLS 1.0/1.1仍處於啟用狀態,通常不會立即影響正常訪問,但主流瀏覽器正逐步預設拒絕這些舊版本,儘早停用可降低未來的相容性風險。
  • 反之,如果TLS 1.2和1.3都被停用,則很可能是配置錯誤,因為現代瀏覽器可能完全無法連線,應作為最優先修復的問題處理。
  • 如果網站執行在共享主機或CDN之後,TLS版本設定通常由主機服務商控制,發現問題後應聯絡其技術支援。

TLS版本診斷的應用情境

伺服器遷移後的設定確認

更換主機服務商或更新作業系統後,TLS設定有可能在不知不覺中恢復為預設值。可將本工具作為遷移作業最後一步的確認手段。

安全稽核、漏洞檢測前的自查

在接受外部安全稽核之前,先自行確認舊協議是否已停用,可以減少稽核中被指出的問題數量。

PCI DSS合規性自查

處理支付業務的網站依照PCI DSS要求必須停用TLS 1.0/1.1。本工具適合在正式稽核之外定期自行檢查。

自營電商、會員網站的漏洞確認

處理個人資料或信用卡資訊的網站,一旦放任舊協議不管,很容易直接影響使用者信任。養成定期檢查的習慣會更安心。

跨多個域名統一檢查設定

如果經營多個子網域或相關網站,可逐一使用本工具檢查,從而發現各站點之間設定不一致的問題。

TLS版本診斷相關術語表

TLS
Transport Layer Security的縮寫,用於加密網站與瀏覽器之間通訊的協議。目前實際使用的現行版本為1.2和1.3,瀏覽器網址列中的鎖形圖示即表示TLS加密已生效。
SSL
TLS的前身協議。SSL 2.0與3.0均存在根本性的設計缺陷,如今已被TLS取代,但「SSL憑證」這類說法出於習慣仍在TLS語境下繼續沿用。
握手(Handshake)
客戶端與伺服器在開始加密通訊之前進行的預先協商過程,雙方在此過程中確定所使用的TLS版本與加密套件。本工具正是檢查這一協商過程在各版本下是否能夠成立。
加密套件(Cipher Suite)
用於金鑰交換、加密與竄改偵測的演算法組合。不同TLS版本可用的加密套件也不同,TLS 1.3已從規範中徹底移除了容易成為漏洞溫床的舊方式。
PCI DSS
針對處理信用卡資訊的商戶制定的安全標準。自2018年起,該標準要求將TLS 1.0/1.1視為「安全性不足的協議」予以停用。
降級攻擊(Downgrade Attack)
一種在通訊過程中誘使連線改用更舊、更脆弱協議版本的攻擊手法。若棄用版本仍保持啟用,就會為這類攻擊提供可乘之機。
棄用(Deprecated)
指某項標準不再被正式建議使用的狀態。TLS 1.0/1.1已於2021年被IETF正式棄用,但只要伺服器未主動修改設定,它們仍會繼續正常運作。

常見問題

TLS 1.0於1999年標準化,是一種較老的協議,存在被BEAST、POODLE等攻擊手法利用的加密演算法弱點。PCI DSS要求在2018年6月底前完成從TLS 1.0/1.1的遷移,主流瀏覽器也在逐步停止對其的支援。

只需在本工具中輸入域名,即可對TLS 1.0至1.3這4個版本分別嘗試真實握手,並列表顯示各自的連線結果,無需使用openssl等命令列工具即可輕鬆確認。

2010年代中期以前非常老舊的作業系統和瀏覽器(例如Windows XP自帶瀏覽器)可能無法訪問,但目前主流的瀏覽器和作業系統均已支援TLS 1.2及以上版本,實際影響通常有限。

TLS 1.3於2018年標準化,通過加快握手速度和簡化加密套件選擇,在安全性與效能兩方面都有提升。不過已廣泛普及的TLS 1.2目前也沒有已知的嚴重漏洞,常見做法是兩者都啟用,讓較新的客戶端使用1.3,較舊的客戶端回退到1.2。

本工具僅診斷協議版本的支援情況。如需檢視證書有效期、頒發者、SAN等資訊,請使用同分類下的SSL證書檢測工具。
工具君

閒話 ― TLS版本的演進與漏洞歷史

TLS的前身SSL由Netscape公司於上世紀90年代中期開發,但SSL 2.0與3.0都存在根本性的設計缺陷。作為SSL 3.0的後繼者,TLS 1.0於1999年標準化,但部分實現在CBC模式加密演算法的初始化向量處理上仍有不足,這一弱點在2011年公開的BEAST攻擊中得到了證實。

2014年,針對SSL 3.0設計缺陷的POODLE攻擊被公開,這使得業界對架構相近的TLS 1.0/1.1也迅速產生了警惕。支付卡行業安全標準PCI DSS於2015年宣佈將分階段禁止使用TLS 1.0,並將2018年6月底定為從TLS 1.1及以下版本完全遷移的最終期限。

2018年標準化的TLS 1.3吸取了以往漏洞的教訓,從規範中移除了容易產生弱點的加密套件(如RC4以及CBC模式的分組加密),並減少了握手所需的往返次數。如今,大多數主流瀏覽器和伺服器軟體都已預設啟用TLS 1.3,並已停止對TLS 1.0/1.1的支援。

儘管如此,全球仍存在不得不依賴舊系統執行的伺服器,TLS 1.0/1.1被無意中保留啟用的情況並不少見。讓管理員容易忽視的伺服器配置狀況變得一目瞭然,正是本工具這類診斷工具的價值所在。