Alan Tsai 的學習筆記


學而不思則罔,思而不學則殆,不思不學則“網貸” 為現任微軟最有價值專家 (MVP)、微軟認證講師 (MCT) 、Blogger、Youtuber:記錄軟體開發的點點滴滴 著重於微軟技術、C#、ASP .NET、Azure、DevOps、Docker、AI、Chatbot、Data Science

[iis]為什麼ssl cipher suite關閉了檢查還是有出現問題 - 如何local檢查ssl和cipher suite

2017-11-30 Thursday
image
圖片來源:https://pixabay.com/en/despair-alone-being-alone-archetype-513528/

之前有介紹透過使用IISCrypto來快速設定SSL相關的資安設定。正常來說只要重啟以後禁用的ssl和cipher suite應該就不會出現。

不過如果用一些檢測工具,例如透過Qualys SSL Lab的SSL ServerTest,那麼有可能還是會看到已經禁用的cipher suite

這是為什麼呢?這樣到底如何驗證設定是否有成功?這篇將會介紹如何透過local檢測的方式確認修改是否有成功。

發生原因

有時候web的機器本身是我們管理,但是整個架構並不是,因此並不知道是不是還有什麼在Server外面, 以我遇到的例子來看,很有可能是在Server外面還有一層Web Application Framework(WAF)導致。

所以就算Server那台透過IISCrypto設定好了,但是假設外面那台沒有設定,那麼當使用網路的服務像是ssl labs的測試,檢測到的其實是外面那台,而不是Server本身。

image
線上測試不通過

解決方式 - 使用TestSSLServer工具做local測試

既然不知道Server外面有什麼可能導致線上測試不準確,那麼可以使用工具local直接測試機器是否設定成功。

一開始使用的工具是:nmap - 但是我自己在測試的時候並沒有成功,並且這個需要安裝的東西比較多(都是檢測用的),因此就放棄使用。

最後使用的是:TestSSLServer

TestSSLServer工具檔案

TestSSLServer的使用方式

這個是一個command line的工具,下載下來之後,使用cmd執行即可。

最簡單的使用方式就是輸入:TestSSLServer4.exe localhost

image
執行出來的結果

從上面的截圖可以看出其實3DES相關的cipher沒有了,但是網路的測試還是又出現。

如果想要把結果儲存起來,可以使用TestSSLServer4.exe -text result.txt localhost - 這個就是把結果匯出到檔案result.txt

TestSSLServer cipher suite強度介紹

這個工具其實也可以看出目前允許使用的cipher suite強度如何。

在第一欄(Server)有三個值:

  1. 第一個值有三種值(0代表非加密,1代表非常弱,2代表弱,3代表強)
  2. 第二個值如果是f表示支援前向安全性(Forward Secrecy),如果不支援則是-
  3. 第三個值如果是A表示anonymous,要不然就是-

理論上3f-是最強的suite。

image
機器的檢測結果

從截圖裡面可以看出這台的強度都至少在3,因此強度來說應該都沒有問題。

結語

有時候明明設定好了,但是測試不通過的原因是因為被測試的並不是你改的機器,因此用local的工具來測試比較準確。

以這個例子來說,至少有證據表示local看起來設定沒問題,至於線上測試有問題可能就是別的系統(非我們可以控制的部分)導致。

標籤: ,,

如果文章對您有幫助,就請我喝杯飲料吧
街口支付QR Code
街口支付QR Code
台灣 Pay QR Code
台灣 Pay QR Code
Line Pay 一卡通 QR Code
Line Pay 一卡通 QR Code
街口支付QR Code
支付寶QR Code
街口支付QR Code
微信支付QR Code
2017-11-30 Thursday
comments powered by Disqus