POODLE = Padding Oracle On Downgraded Legacy Encryption
首先, 這是一個遲來的命名,但安全問題仍然可怕。最新的安全性漏洞 (CVE-2014-3566) 代號是 POODLE, 這是一個縮寫,按照上面的標題有實際的意義嗎?
這個漏洞和之前的 B.E.A.S.T (Browser Exploit Against SSL TLS) 非常相似,但是目前還沒有可靠的解決辦法,除非完全禁用 SSLv3 的支持。簡單的說,攻擊者可獲取你加密流中的明文資料。
Apache
在Apache 的 SSL 配置中禁用 SSLv3 和 SSLv3:
1
|
SSLProtocol
all -SSLv2 -SSLv3 |
Nginx
在 Nginx 只允許使用 TLS 協定:
1
|
ssl_protocols
TLSv1 TLSv1.1 TLSv1.2; |
MySQL
值得注意的是,除非你在 MySQL 5.6 中部署 sha256_password 外掛程式,plugin for MySQL 5.6 就會在驗證握手之前必須完成SSL/TLS連接協商,因此這種攻擊向量只成為一個問題 —— 有效的登錄訪問的資料流程。(sha256_password 提供一個選項使用 SSL/TLS 的認證)
要在 MySQL 刪除 SSLv3 的支援,你只需要確定在配置中不使用 SSLv3 加密。
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
|
openssl
ciphers -v 'DEFAULT' | awk '/SSLv3 Kx=(RSA|DH|DH(512))/ { print $1 }' DHE-RSA-AES256-SHA DHE-DSS-AES256-SHA DHE-RSA-CAMELLIA256-SHA DHE-DSS-CAMELLIA256-SHA AES256-SHA CAMELLIA256-SHA EDH-RSA-DES-CBC3-SHA EDH-DSS-DES-CBC3-SHA DES-CBC3-SHA DHE-RSA-AES128-SHA DHE-DSS-AES128-SHA DHE-RSA-SEED-SHA DHE-DSS-SEED-SHA DHE-RSA-CAMELLIA128-SHA DHE-DSS-CAMELLIA128-SHA AES128-SHA SEED-SHA CAMELLIA128-SHA RC4-SHA RC4-MD5 EDH-RSA-DES-CBC-SHA EDH-DSS-DES-CBC-SHA DES-CBC-SHA EXP-EDH-RSA-DES-CBC-SHA EXP-EDH-DSS-DES-CBC-SHA EXP-DES-CBC-SHA EXP-RC2-CBC-MD5 EXP-RC4-MD5 |
刪除 ssl-cipher 配置中的上述資訊就可以禁用 SSLv3 支援。當然,確保 MySQL 服務不提供一般訪問是迄今為止對抗 CVE-2014-3566 漏洞最重要的一個步驟。
以下腳本可以識別你的服務是否提供沒有密碼的 SSLv3 支援:
1
2
3
4
5
|
mysql -se
“SHOW STATUS LIKE ‘Ssl_cipher_list'” | sed ‘s/:/n/g’ | sed ‘s/Ssl_cipher_listss//g’
| while read sspec; do SPEC=openssl
ciphers -v “$sspec” 2>/dev/null | grep -v SSLv3 | awk ‘{print
$1}'; [[ "$sspec" == "$SPEC" ]]
&& mysql –ssl-cipher=$sspec -e QUIT 2>/dev/null &&
echo “$sspec OK”; done |
水準有限,翻譯如有誤請幫忙指出,謝謝!
via percona
沒有留言:
張貼留言