Ssl

從 lighttpd 中提取 TLS 會話密鑰

  • October 5, 2017

是否可以從 Lighttpd 中提取 TLS 會話密鑰,以便我們能夠解密 tcpdump 擷取的流量?

或者,我們可以禁用 PFS,但我們不希望這樣做。

Lighttpd 不支持這種開箱即用的功能。

lighttpd 的開發者Stefan建議查看以下答案:

從 openssl 應用程序中提取預主密鑰

您可以在文件 /etc/lighttpd/lighttpd.conf 中的條目 ssl.pemfile 引用的文件中找到****私鑰

密鑰位於證書之前的開頭。

此處已經回答了解密問題:

當我擁有私鑰時,如何使用數據包嗅探器解密 ssl 流量

Ssldump 應該可以做到,但它似乎沒有維護(在最新版本的源存檔中,所有文件的最後修改日期都在 2002 年或更早)所以它很可能不會支持較新的 SSL/TLS;實際上,2002 年的軟體能夠處理 TLS 1.2 (AES/GCM) 中定義的新加密格式是非常難以置信的。TLS 1.1 於 2006 年發布,TLS 1.2 於 2008 年發布。

OpenSSL 是一個實現該協議的庫,但不適用於分析記錄的會話。

你可能有更好的機會使用 Wireshark,它有足夠的文件說明如何使用它來解密記錄的會話。

需要記住一個重要參數:只有在密鑰交換類型為 RSA 或靜態 DH 的情況下,被動記錄會話(使用伺服器私鑰的副本)的解密才有效;使用“DHE”和“ECDHE”密碼套件,即使知道伺服器私鑰,您也無法解密這樣的會話。在這種情況下,您將需要協商的“主密鑰”,或者使用伺服器私鑰來主動攔截連接(在中間人設置中)。

引用自:https://serverfault.com/questions/875708