看到這個標題就表示又是被折磨很久之後的紀錄
起因是這樣的,工作關係所以工作的產物都是網站,每隔一段時間就會做弱點掃描。除了偶爾因為沒檢查到被搜尋出來的 SQL Injection[1]SQL 資料隱碼攻擊 SQL injection:可以參考這篇的解釋 問題外,印象中去年開始一直有出現的一個問題就是標題的這個:Insufficient Diffie Hellman Strength 問題[2]可以參考的資料:迪菲-赫爾曼密鑰交換、行政院國家資通安全會報、HTTPS/SSL/TLS 概述,Diffie-Hellman 算法(金鑰交換) 要看原文的說明還有這篇:What is … Continue reading,說起來複雜,總而言之就是原本這個資料傳輸的密鑰,在2015年的時候被發現漏洞。到現在2019年,當然微軟已經出了更新,讓伺服器/電腦對這個密鑰的支援提升到 1024bits 以上。
掃出的弱點就是現在又覺得 1024bits 又太弱了(電腦運算越來越強),所以不能低於 1024bits。
這廠商的報告其實很簡單好懂,列出你網站問題之後,其實都還會提供你建議修改方法。
如同上圖的附圖,認定這些資料交換協定只有 1024 bits ,不夠「強」。所以建議的修改方式是:停用 Diffie Hellman KeyExchangeAlgorithms [3]1. 執行regedit 2. 找到「HKEY_LOCAL_MACHINE SYSTEM\CurrentControlSet\Control\SecurityProviders\SCHANNEL\KeyExchangeAlgorithms」 3. 找到「Diffie Hellman」 sub key … Continue reading。
但,我從去年到現在改了大概三四次都沒有用。照理說設定這個應該就關閉了這個方法,但下一次的弱點掃描結果它還是在列表上。其實我有點崩潰,因為我在網路上google也是建議這樣解決,或是不停用但設定它的最小 key 大於 1024[4]這篇有講到怎麼設定,不過應該是ServerMinKeyBitLength 。都沒有用 。
只是也已經好幾次都出現這問題,業主也是希望趕快解決(這樣他們就不用收到報告 )。加上這幾天剛好有一個小空檔想趕快來解決(而且這是高等級的問題,所以需要在這週五解決完畢,為了怕自己來不及解決完,所以昨天星期四就排了整天去測試),這次一定要解決不可!
事前也查了一些資料,準備了一些方法,因為途中都要開關機,所以不是很敢試太多次。一路從上午測試到下午,覺得真的沒有招了,跑去找業主的資訊中心討論。本來要找的大哥正在開會,旁邊另一位資訊大哥問了我的來意之後,推薦了我一個小工具 – IIS Crypto
看名字就知道它是設定有關 IIS 的部份,支援 Windows Server,而且最佳的一點是:它有介面!雖然說身為資訊人員應該要用指令比較專業(?),但對我這個半路出家而且只會寫程式對系統還是一知半解的人來說,有簡單的操作介面真的感覺安全多了。
雖然說感覺安全,但還是會怕。因為這改的就是整台電腦的機碼,牽一髮動全身,何況你不知道它改了多少地方。所以執行前一定要先把整台電腦的機碼匯出,以備不時之需:有問題立刻倒回去恢復原狀!
這個軟體介面簡單使用也簡單,操作就參考以下幾個網頁就好:
簡單來說就是
- 打開軟體:它同時會掃描你的伺服器所有的 SChannel 跟 Cipher
- 不知道哪些要不要留,就點下面的「Best Practices」,看他的建議
- 增/減自己想要留/刪除的內容後,按下右下的「Reply」
- 重開機!結束!
而我就是要關閉「Diffie-Hellman」,所以把這個取消後,就緊張的重開機了!
開完機之後我再度使用 sslscan 進行測試!竟然成功了耶!
真是太讓人開心了!至於這個拿去做掃描會不會又有別的限制出來,就要等廠商下一次的報告出來了 總之就算下次再出現也不再是 Insufficient Diffie Hellman Strength 問題了!
參考
↑1 | SQL 資料隱碼攻擊 SQL injection:可以參考這篇的解釋 |
---|---|
↑2 | 可以參考的資料:迪菲-赫爾曼密鑰交換、行政院國家資通安全會報、HTTPS/SSL/TLS 概述,Diffie-Hellman 算法(金鑰交換) 要看原文的說明還有這篇:What is the Diffie–Hellman key exchange and how does it work? |
↑3 | 1. 執行regedit 2. 找到「HKEY_LOCAL_MACHINE SYSTEM\CurrentControlSet\Control\SecurityProviders\SCHANNEL\KeyExchangeAlgorithms」 3. 找到「Diffie Hellman」 sub key (如果沒有,請自行新增) 4. 按右鍵 → 新增 → DWORD 值,命名為 Enabled ,值設為 0 5. 改完後重新開機 |
↑4 | 這篇有講到怎麼設定,不過應該是ServerMinKeyBitLength |
歷史上的今天
- [同人][十二國記][尚六] 前進 (8) - 2015
- [同人][十二國記][尚六] 前進 (7) - 2015
- [同人][xxxHOLiC][百四] 看見(6) - 2008