SSL 主題備用名稱和中間人攻擊
我的公司“ourcompany”擁有二級 DNS 域名:
ourcompany.org
. 我們目前使用這個域,以及www.ourcompany.org
和feature1.ourcompany.org
,並為這兩個 3 級域生成了 SSL 證書。然後我們訂閱了第三方託管服務,託管在
ourcompany.thirdparty.org
. 他們處理 SSL 並擁有一個證書,其主題是thirdparty.org
並且具有 Subject Alternative Name*.thirdparty.org
。這家第 3 方公司還提供添加自定義域的功能。所以我們在 DNS 配置中添加了一條 CNAME 記錄,現在我們
feature2.ourcompany.org
指向ourcompany.thirdparty.org
. 顯然此時 SSL 在訪問時不起作用feature2.ourcompany.org
。然後,第 3 方公司還要求我們添加 TXT DNS 條目以證明我們是該域的所有者,並且他們能夠以某種方式更新其 SSL 證書並添加以下主題備用名稱:
ourcompany.org
和*.ourcompany.org
.
- 這怎麼不是中間人攻擊的潛在來源?(第 3 方公司現在可以在我們的任何域上冒充我們)
- 任意第三方公司如何生成有效的 SSL 證書,包括指向他們不擁有的域的 SAN?(他們的 SAN 包含的內容比我們添加的 CNAME 域記錄多得多)
- 證書頒發機構是否允許我們的域作為 SAN 是因為 CNAME 記錄指向他們的域(在這種情況下,為什麼 SAN 包含的域不僅僅是
feature2.ourcompany.org
),或者是因為 TXT 條目(在這種情況下,有人可以指點我嗎?到解釋這個過程的資源)?
在檢查了我們的 DNS 配置後,證書頒發機構似乎驗證了 3rd 方公司證書中的 SAN 條目,因為他們要求我們添加一個 TXT 條目:
globalsign-domain-verification=XXXXXXX
,其中 XXXXXXX 是 GlobalSign 提供給第 3 方公司的密鑰(很難找到有關此 GlobalSign 功能的文件,但我可以在這裡找到一些東西)。這回答了第二個和第三個問題。至於第一個,似乎TXT條目被設置為二級域,第三方公司現在被授權在其證書的SAN條目中包含二級域以及其下的任何三級域。