北京時間 2023年3月2日,openssl官方發布了新的安全公告。公告中提及修復了乙個高危漏洞——drown跨協議攻擊tls漏洞。百度雲安全威脅管理團隊聯合百度安全應急響應中心第一時間對事件觸發應急響應和全網感知,深度分析了漏洞的危害和影響範圍。
經分析,攻擊者利用該漏洞可突破目前廣泛使用的依賴ssl和tls安全加密體系,網際網路中有大約1100萬站點或者服務受到此漏洞影響。
一、drown跨協議攻擊tls漏洞分析
1. 漏洞危害
攻擊者通過中間人攻擊等手段截獲和解密使用者和伺服器之間的加密通訊,包括但不限於使用者名稱和密碼、信用卡號、電子郵件、即時訊息,以及敏感檔案。在一些常見的場景,攻擊者還可以冒充乙個安全的**攔截或篡改使用者看到的內容。
2. 攻擊原理
drown漏洞主要利用sslv2協議的脆弱性對tls協議進行攻擊。
sslv2協議是90年代推出的安全協議,由於存在大量的安全問題,被後來的tls協議給替代。目前主流的瀏覽器等客戶端已經禁用了sslv2協議。openssl官方在2023年的0.9.8n和1.0.0的版本中也移除了對sslv2的支援。但是在openssl的服務端的實現並沒有嚴格遵守官方的標準,若配置不當依然可以強制使用export 加密套件(包括金鑰交換,加密演算法,hmac等的組合),附 sslv2 加密套件(22,24為對外出口的弱加密方式,只有40位加密強度)
north american edition (u.s. and canada)
short name
long name
description
27ssl_des_192_ede3_cbc_with_md5
triple-des (168 bit)
21ssl_rc4_128_with_md5
rc4 (128 bit)
23ssl_rc2_cbc_128_cbc_with_md5
rc2 (128 bit)
26ssl_des_64_cbc_with_md5
des (56 bit)
22ssl_rc4_128_export40_with_md5
rc4 (40 bit)
24ssl_rc2_cbc_128_cbc_export40_with_md5
rc2 (40 bit)
sslv2協議存在的以下特性,使其非常容易受到padding oracle的攻擊。
1)支援sslv2協議的伺服器在收到乙個clientmasterkey訊息時,會立即傳送serververify確認資訊,不校驗客戶端是否明文。
2)使用export 40位加密時,master_key中只有5個位元組以rsa加密
master_key = mkclear||mksecret,攻擊者可通過服務端返回的server_write_key(session keys)解密serververify中部分訊息,如果解密成功,則是明文,不成功則是隨機填充的佇列。
3)重放相同的rsa密文請求時,根據判斷解密的值是否相同知道上一次是否解密成功。
整理以上思路,總結出乙個大致的攻擊流程:
1)攻擊者使用中間人攻擊手段獲取1000左右 tls的握手包
2)攻擊者根據特性講clientkeyexcchange生成大量的pkcs#1 v1.5加密的clientmasterkey訊息,向服務端不斷發起sslv2 export_40的連線,最終生成乙個有效的sslv2 rsa密文。
3)利用padding oracle的攻擊方式解密密文。
4)攻擊者sslv2 rsa明文 轉換成tls的明文,再進行其他惡意行為
3.檢測方式
通過原理可以知道,只要服務端支援sslv2 弱強度加密元件就容易受到影響。
可通過發起sslv2 的連線包,從返回的banner裡面判斷是否支援
ssl_rc2_cbc_128_cbc_export40_with_md5
ssl_rc4_128_export40_with_md5
ssl_des_64_cbc_with_md5
等弱強度演算法
**檢測
使用nmap 檢測
nmap -p 443 —script=sslv2 www.yahoo.com
如下表示存在
附其他檢測指令碼
二、 drown跨協議漏洞影響面分析
1. 全球影響面
從百度掌握的大資料來看,初步估計受影響的主機達500萬,其中全球以美國、歐洲受影響最大,中國也有十餘萬主機面臨威脅
2. 國內影響面
單獨從國內來看,北上廣為重災區,佔全國受影響主機3成以上:
三、drown跨協議漏洞處理建議
可見國內情況也不樂觀,建議大家及時公升級openssl,並禁用sslv2版本協議。
在centos、redhat系統,可以通過如下命令公升級:
# yum update openssl
ubuntu等版本可以通過如下命令公升級:
# apt-get upgrade openssl
通過如下配置禁用apache的sslv2:
sslprotocol all -sslv2
通過如下配置限制nginx中只使用tls協議:
ssl_protocols tlsv1 tlsv1.1 tlsv1.2;
首爆新型TLS 1 2協議漏洞
對於安全加密通訊,傳輸層安全協議 ssl tls 的重要性不言而喻。如今的tls協議不僅被用於傳輸層通訊,更作為乙個標準的加密保護協議被廣泛應用於 ftp,電子郵件和等領域,時刻保護著我們網路通訊的安全。上週乙個新的加密 被披露,它可以攻破加密的tls流量,允許 者攔截並竊取以前認為安全可靠的資料。...
PHP漏洞全解 四 xss跨站指令碼攻擊
xss cross site scripting 意為跨 指令碼攻擊,為了和樣式表css cascading style sheet 區別,縮寫為xss 跨站指令碼主要被攻擊者利用來讀取 使用者的cookies或者其他個人資料,一旦攻擊者得到這些資料,那麼他就可以偽裝成此使用者來登入 獲得此使用者的...
PHP漏洞全解 四 xss跨站指令碼攻擊
xss cross site scripting 意為跨 指令碼攻擊,為了和樣式表css cascading style sheet 區別,縮寫為xss 跨站指令碼主要被攻擊者利用來讀取 使用者的cookies或者其他個人資料,一旦攻擊者得到這些資料,那麼他就可以偽裝成此使用者來登入 獲得此使用者的...