Let's Encrypt宣布在產品環境啟用ACME-CAA(Certification Authority Authorization)帳戶綁定和驗證方法綁定,這是由IETF RFC 8657標準規範的功能,該規範在2019年發布,Let's Encrypt現在正式於產品環境支援。

CAA功能允許ACME客戶端使用指定的DNS紀錄,以限制網域能夠接受的憑證頒發機構,而新加入的帳戶綁定和驗證方法綁定,則是對CAA的擴充。帳戶綁定使Let's Encrypt訂戶能夠限制頒發憑證所使用的ACME帳戶,而驗證方法綁定則是讓用戶能夠限制網域控制驗證方法集。

RFC 8657規範作者Hugo Landau,在部落格講解了Let's Encrypt ACME-CAA的細節以及重要性,還有帳戶綁定和驗證方法綁定的使用。

SSL憑證當初的設計,就是為了消除瀏覽器和網站之間的中間人攻擊,所以憑證頒發機構在請求網站的SSL憑證時,憑證頒發機構就必須進一步採取措施,來驗證網站是該網域的合法擁有者。憑證頒發機構基本上採取根據驗證的等級收費的模型,而最便宜的便是網域驗證(Domain Validation,DV)憑證,該服務在Let's Encrypt則是免費提供。

而網域驗證的運作方式,會由憑證頒發機構要求用戶在其網域中,託管隨機盤問(Challenge)字串,當網域能夠成功託管該盤問字串,則代表用戶已經控制該網域,將被視為該網域的合法營運者。不過,因為用戶是為了要拿到憑證才進行網域驗證,因此在進行網域驗證時,尚未拿到憑證,也就是說這個過程容易遭到中間人攻擊。

而憑證透明度(Certificate Transparency,CT)日誌,是過去用來減輕網域驗證中間人攻擊的方法,CT日誌是一個加密安全,可受公開稽核的分類帳,憑證頒發機構所頒發的憑證都會記錄在這個憑證透明度日誌中,所以當憑證頒發機構錯誤頒發憑證,則任何人都可以看到,也使得瀏覽器和憑證頒發機構產業能夠進一步採取防範措施,Hugo Landau表示,這種機制限制了中間人攻擊的發生,實際上中間人攻擊很少見,由此也證明了這種機制的效果。

但不可否認的是,憑證頒發機構的網域驗證過程,仍然容易遭受中間人攻擊,Hugo Landau說明,當攻擊者在憑證頒發機構驗證路徑上,憑證頒發機構的網域驗證模型就可能遭到破壞,攻擊者能夠簡單地獲得用戶網站憑證,鎖定高價值資料中心發動攻擊。

而ACME-CAA則在這種狀況下便可發揮作用,其提供憑證頒發機構重要的功能強化,填補網域驗證漏洞,避免中間人攻擊。CAA是一個簡單的概念,其實就是網域根目錄中的DNS紀錄,說明哪些憑證頒發機構可以為該網域頒發明證。

Hugo Landau進一步解釋,大多數網域只會從一個頒發憑證機構獲取憑證,但是攻擊者卻會去尋找全球最弱或是最容易操縱的憑證頒發機構,因此只要透過限制能夠頒發憑證的頒發憑證機構,就能夠消除域名驗證漏洞。

Let's Encrypt在ACME-CAA更新的兩項功能,可讓用戶在其CAA紀錄accounturi參數中,指定帳戶唯一URL,將憑證頒發綁定至特定ACME帳戶,另外,用戶也能夠在CAA紀錄中,加入validationmethods參數,進而限制網域控制驗證方法集。

Let's Encrypt提到,他們已經支援CAA多年,而這也是所有的憑證頒發機構的最低要求,帳戶綁定和驗證方法綁定則已經測試超過一年,現在正式更新到產品環境中,他們預計應該不會出現任何故障,如果用戶遭遇到問題,可以先仔細檢查CAA紀錄。

熱門新聞

Advertisement