SSL中間人攻擊的三大場景
事實上,SSL被設計得十分安全,想要攻破並不容易。SSL是為網路通訊提供安全及資料完整性的一種安全協議,它可以驗證參與通訊的一方或雙方使用的證書是否由權威受信任的數字證書認證機構頒發,並且能執行雙向身份認證。
而我們現在常見的SSL中間人攻擊方式都是透過偽造、剝離SSL證書來實現的。換句話說,一旦發生SSL中間人攻擊事件,問題並不出在SSL協議或者SSL證書本身,而是出在SSL證書的驗證環節。中間人攻擊的前提條件是,沒有嚴格對證書進行校驗,或者人為的信任偽造證書,因此以下場景正是最容易被使用者忽視的證書驗證環節:
場景一:網站沒有使用SSL證書,網站處於HTTP明文傳輸的“裸奔”狀態。這種情況駭客可直接透過網路抓包的方式,明文獲取傳輸資料。
場景二:駭客透過偽造SSL證書的方式進行攻擊,使用者安全意識不強選擇繼續操作。
受SSL證書保護的網站,瀏覽器會自動查驗SSL證書狀態,確認無誤瀏覽器才會正常顯示安全鎖標誌。而一旦發現問題,瀏覽器會報各種不同的安全警告。
例如,SSL證書不是由瀏覽器中受信任的根證書頒發機構頒發的,或者此證書已被吊銷,此證書網站的域名與根證書中的域名不一致,瀏覽器都會顯示安全警告,建議使用者關閉此網頁,不要繼續瀏覽該網站。
場景三:駭客偽造SSL證書,網站/APP只做了部分證書校驗,導致假證書矇混過關。
例如,在證書校驗過程中只做了證書域名是否匹配,或者證書是否過期的驗證,而不是對整個證書鏈進行校驗,那麼駭客就可以輕鬆生成任意域名的偽造證書進行中間人攻擊。
如何防禦SSL中間人攻擊?
首先,真正的HTTPS是不存在SSL中間人攻擊的,因此首當其衝的是要確定網站有SSL證書的保護。那麼使用者如何判斷網站有沒有SSL證書保護呢?
可使用https:// 正常訪問。
使用了EV SSL證書的網站,顯示綠色位址列。
如果使用者訪問的網站呈現以上特徵,說明該網站已受SSL證書保護。
其次,採用權威CA機構頒發的受信任的SSL證書。數字證書頒發機構CA是可信任的第三方,在驗證申請者的真實身份後才會頒發SSL證書,可以說是保護使用者資訊保安的第一道關口。
最後,對SSL證書進行完整的證書鏈校驗。如果是瀏覽器能識別的SSL證書,則需要檢查此SSL證書中的證書吊銷列表,如果此證書已經被證書頒發機構吊銷,則會顯示警告資訊:“此組織的證書已被吊銷。安全證書問題可能顯示試圖欺騙您或截獲您向伺服器傳送的資料。建議關閉此網頁,並且不要繼續瀏覽該網站。”
如果證書已經過了有效期,一樣會顯示警告資訊:“此網站出具的安全證書已過期或還未生效。安全證書問題可能顯示試圖欺騙您或截獲您向伺服器傳送的資料。建議關閉此網頁,並且不要繼續瀏覽該網站。”
如果證書在有效期內,還須檢查部署此SSL證書的網站域名是否與證書中的域名一致。
如果以上都沒有問題,瀏覽器還會查詢此網站是否已經被列入欺詐網站黑名單,如果有問題也會顯示警告資訊。
總而言之,企業能夠做到證書部署和校驗環節完整,個人使用者能夠認真觀察HTTPS安全標識,識別證書真實性、有效期等資訊,HTTPS幾乎是無法攻破的,所謂的SSL中間人攻擊就是一個偽命題。
在網路安全事件頻發的時代,部署HTTPS已是大勢所趨,它用複雜的傳輸方式降低網站被攻擊劫持的風險。當然,實現全網HTTPS不是一件立竿見影的事情,而是需要參與網際網路的每一家企業都承擔起網路安全的責任,我們每一個個體都增強保護自我隱私的意識,從而共同締造一個安全的網路空間。
SSL中間人攻擊的三大場景
事實上,SSL被設計得十分安全,想要攻破並不容易。SSL是為網路通訊提供安全及資料完整性的一種安全協議,它可以驗證參與通訊的一方或雙方使用的證書是否由權威受信任的數字證書認證機構頒發,並且能執行雙向身份認證。
而我們現在常見的SSL中間人攻擊方式都是透過偽造、剝離SSL證書來實現的。換句話說,一旦發生SSL中間人攻擊事件,問題並不出在SSL協議或者SSL證書本身,而是出在SSL證書的驗證環節。中間人攻擊的前提條件是,沒有嚴格對證書進行校驗,或者人為的信任偽造證書,因此以下場景正是最容易被使用者忽視的證書驗證環節:
場景一:網站沒有使用SSL證書,網站處於HTTP明文傳輸的“裸奔”狀態。這種情況駭客可直接透過網路抓包的方式,明文獲取傳輸資料。
場景二:駭客透過偽造SSL證書的方式進行攻擊,使用者安全意識不強選擇繼續操作。
受SSL證書保護的網站,瀏覽器會自動查驗SSL證書狀態,確認無誤瀏覽器才會正常顯示安全鎖標誌。而一旦發現問題,瀏覽器會報各種不同的安全警告。
例如,SSL證書不是由瀏覽器中受信任的根證書頒發機構頒發的,或者此證書已被吊銷,此證書網站的域名與根證書中的域名不一致,瀏覽器都會顯示安全警告,建議使用者關閉此網頁,不要繼續瀏覽該網站。
場景三:駭客偽造SSL證書,網站/APP只做了部分證書校驗,導致假證書矇混過關。
例如,在證書校驗過程中只做了證書域名是否匹配,或者證書是否過期的驗證,而不是對整個證書鏈進行校驗,那麼駭客就可以輕鬆生成任意域名的偽造證書進行中間人攻擊。
如何防禦SSL中間人攻擊?
首先,真正的HTTPS是不存在SSL中間人攻擊的,因此首當其衝的是要確定網站有SSL證書的保護。那麼使用者如何判斷網站有沒有SSL證書保護呢?
可使用https:// 正常訪問。
使用了EV SSL證書的網站,顯示綠色位址列。
如果使用者訪問的網站呈現以上特徵,說明該網站已受SSL證書保護。
其次,採用權威CA機構頒發的受信任的SSL證書。數字證書頒發機構CA是可信任的第三方,在驗證申請者的真實身份後才會頒發SSL證書,可以說是保護使用者資訊保安的第一道關口。
最後,對SSL證書進行完整的證書鏈校驗。如果是瀏覽器能識別的SSL證書,則需要檢查此SSL證書中的證書吊銷列表,如果此證書已經被證書頒發機構吊銷,則會顯示警告資訊:“此組織的證書已被吊銷。安全證書問題可能顯示試圖欺騙您或截獲您向伺服器傳送的資料。建議關閉此網頁,並且不要繼續瀏覽該網站。”
如果證書已經過了有效期,一樣會顯示警告資訊:“此網站出具的安全證書已過期或還未生效。安全證書問題可能顯示試圖欺騙您或截獲您向伺服器傳送的資料。建議關閉此網頁,並且不要繼續瀏覽該網站。”
如果證書在有效期內,還須檢查部署此SSL證書的網站域名是否與證書中的域名一致。
如果以上都沒有問題,瀏覽器還會查詢此網站是否已經被列入欺詐網站黑名單,如果有問題也會顯示警告資訊。
總而言之,企業能夠做到證書部署和校驗環節完整,個人使用者能夠認真觀察HTTPS安全標識,識別證書真實性、有效期等資訊,HTTPS幾乎是無法攻破的,所謂的SSL中間人攻擊就是一個偽命題。
在網路安全事件頻發的時代,部署HTTPS已是大勢所趨,它用複雜的傳輸方式降低網站被攻擊劫持的風險。當然,實現全網HTTPS不是一件立竿見影的事情,而是需要參與網際網路的每一家企業都承擔起網路安全的責任,我們每一個個體都增強保護自我隱私的意識,從而共同締造一個安全的網路空間。