Diffie-Hellman
可能對用於支持弱 DH 的伺服器進行 MITM 攻擊?
從閱讀TLS 1.1 RFC來看,似乎有可能打破先前記錄的 TLS <1.2、512 位 DHE ServerKeyExchange,然後將其(未經修改,帶有原始有效簽名)發送到仍然接受 TLS < 1.2 和 512 位 DHE 來模擬已修復(完全禁用 DHE 和/或 TLS <1.2)或“修復”(使用更大的 DH 組)的伺服器。TLS 1.2似乎不會受到這種攻擊,因為它的 ServerKeyExchange 簽名包含 ClientRandom 值。有什麼我遺漏的,或者這真的有用嗎?
TLSv1.1 對密鑰交換參數的處理方式與 TLSv1.2 不同。它只是不太明顯。
讓我們深入了解TLSv1.1 規範。
在第 44 頁上,您會發現
ServerKeyExchange
由ServerXXXParams params
和組成Signature signed_params
。現在在第 44 頁上,您實際上會找到Signature
.sha_hash
這個定義有或沒有符號md5_hash
。現在看 和 的sha_hash
定義md5_hash
。它指出這MD5(ClientHello.random + ServerHello.random + ServerParams)
是 的定義md5_hash
,那SHA(ClientHello.random + ServerHello.random + ServerParams)
是 的定義sha_hash
。現在您已經找到了您正在尋找的隨機值,因此這與 TLSv1.2 中的方法相同,但是直接應用了簽名並且可以使用任意散列函式。