Qualys 是國外一家資安廠商,2009 年時他們建立了 SSL LABS ,當中有 SSL 的測試工具,可以測網站 SSL 是否安全,可測瀏覽器是否安全

他們還提供一份文件 SSL/TLS Deployment Best Practices (PDF) 介紹怎麼正確的使用 SSL

不過我對部份文件內容有太專業的無法完全了解,也寫的 2266 (台話),我只針對我已了解的部份說明

最好使用 2048 位元以上的 RSA 金鑰

2048 位元的強度較大,如果要更高建議使用 256 位元的 ECDSA 金鑰,效能較好,但有些 client 端可能不支援,不過可以兩種都建立互補

確實保管好私鑰

限制某些人才可以拿得到
在信任的電腦上產生 私鑰(pkey) 與 憑證請求(csr),盡量不要讓 CA 廠商幫你產生
對私鑰用密碼保護儲存
如果不幸被偷,要馬上 撤消 revoke 舊的憑證
每年固定時間更換金鑰、憑證

確保每個網站都有自已的憑證

例如 ssorc.tw 與 www.ssorc.tw,確認 www 或無 www 都有正確的憑證,不要讓你的網站出現 “你的憑證不安全的視窗”

Wildcard 憑證應盡量避免使用

如果公司夠大,金鑰勢必會因情況而流到許多人身上,增加風險,還是少人保管私鑰就好
還有用相同憑證,網站跟網站之間更容易被利用漏洞相互通溝

謹慎挑選可靠的憑證管理中心

定期觀注廠商對資安的重視程度,或選擇前搜尋一下舊聞消息,評估是否可信任
還要看廠商是否支援憑證撤銷列表 Certificate Revocation List,簡稱 CRL,它包含了憑證管理中心已經撤銷的憑證的序列號及其撤銷日期,還有撤銷列表失效時間和下一次更新時間 (但看廠商的定義為何),這可以防止假如憑證管理中心本身的憑證被偷了,可事後用來驗證其是否仍為有效憑證,還有另一個是 Online Certificate Status Protocol,簡稱 OCSP
當然廠商如果有管理工具、操作文件的幫助最好,能隨時隨地解決你的問題更好

SSL/TLS 協助版本

選擇了好的 SSL 憑證,也要設定正確才行,才能有效增加網站跟使用者間的安全性
整個 SSL/TLS 家族有 SSLv2, SSLv3, TLSv1.0, TLSv1.1, TLSv1.2 這五個
SSLv2 已不安全了,不要用
SSLv3 也是不安全,且過時了,這版本功能不完全,且最近有 POODLE 漏洞關系,它被提早宣告壽終正寢
TLSv1.0 目前是安全的,也沒有重大漏洞發生
TLSv1.1 也是安全的
TLSv1.2 是一個最佳的使用協定,除了沒有重大漏洞外,它的優點是有以上版本沒有的重要功能

加密演算法

演算法為 SSL 安全加密的要素,目前常用的演算法 SHA-1 系列,它已不再安全,大部份的資安廠商都漸漸的捨棄它了,你我都要轉而使用 SHA-2 系列,還有瀏覽器也不要再用舊版本了,不然是不支援 SHA2 的

Cipher Suites 它主要是對稱加密演算法和不對稱加密演算法的組合,在加密溝通中扮演很重要的角色,選擇演算方式除了要有驗證功能與加密位元是高於 128 的,以下幾個盡量避開
Anonymous Diffie-Hellman(ADH) 是不提供驗證的,雙方都會自己的 ADH 互相傳送,這也容易被中間人攻擊
NULL cipher 是不加密演算法 (那何必用呢)
Export key exchange 驗證是容易被破解的
弱一點的演算法(40 位元 或 56 位元)也是容易被破解的
RC4 因為比想像中的還要弱,所以也要被去除
3DES 僅提供 112 位元,小於 128 位元,強度仍是足夠,不過它的效能比較慢,如果它是必要選擇之一,它的優先程度必是最後一個

2.4. Control Cipher Suite Selection

2.5. Support Forward Secrecy

Disable Client-Initiated Renegotiation 防止被 DDOS 攻擊

對已知的問題先作防護

取消不安全的 renegotiation,它容易被曝露弱點,且 CSRF、XSS 攻擊
取消 TLS 壓縮 (SSLCompression off),因 2012 被展示說明 CRIME 攻擊,壓縮方式是可以被拿到敏感資料的

Disable RC4, RC4是一種目前最被廣泛使用的加密演算法,是一種可以變更加密金鑰長度的對稱加密演算法,RC4常用於Web流量和Email加解密,可以利用RC4的加密弱點,在HTTPS的加密通訊時,發動中間人攻擊

效能

重視安全也需要考濾主機資源的使用,2048bits 是上限了,再高就需要更高的成本

Related posts 相關文章
GitLab 17.7 使用 openssl 3 與 tls 1.2
More...
使用連線控制插件提高 MySQL 安全性
More...
使用驗證插件提高 MySQL 密碼安全性
More...
加強 WordPress 安全
More...

作者

留言

撰寫回覆或留言

發佈留言必須填寫的電子郵件地址不會公開。