如何區分常用網絡連接的安全性
當我們訪問一個重要的網站,會發現地址欄里的URL寫的是https:// .當你需要與同事共享文件夾時,你會首先開啟VPN確保重要數據傳輸時不會被其他人截獲。有些對安全問題更敏感的人,在不久前出現了CA機構被入侵的事件后,甚至會手動檢查安全證書。
但是這些只覆蓋了我們日常上網活動的一小部分的安全問題。我們每日上網發起的連接數量相當多,而且電腦與遠程服務器間的連接并不總是以HTTP 方式進行,有可能會通過特有的協議和端口向遠程服務器發送信息。那么這些我們看不到的連接是否安全呢?我們怎么才能知道這些連接所發送的數據是否是以明文方式發送出去的呢?下面我們就來梳理一下常用的安全或非安全的網絡連接。
電子郵件
首先,也是最常見的案例,就是電子郵件。發送郵件會用到多種不同的協議,其中有些是安全的,有些則不是。首先,使用Gmail或其它基于Web 的電子郵件網站,很好分辨是否是安全的。就算該網站沒有說明使用了SSL連接,你可以通過Firebug 這樣的Firefox插件或者Chrome里的開發者控制臺來檢查郵件發送按鈕是否鏈接到安全頁面。
但是如果你使用的是像 Outlook這樣的桌面電子郵件客戶端,那么情況就復雜了。如果是企業電子郵件系統,使用Microsoft Exchange 服務器,只要配置正確,那么連接應該是安全的。在Exchange的POP3設置中,只需要在Authentication選項卡中選擇Secure Logon 作為登錄模式就可以了。同樣,如果是將Hotmail的郵件直接通過Outlook 或Live Mail收發,連接也是加密的。
而如果你所使用的電郵系統是來自ISP的POP3 或 IMAP,那么可能就不夠安全了。默認情況下,這些協議會以明文的形式發送電子郵件和用戶信息,包括你的電子郵件賬戶密碼。按理說ISP們應該為這個連接添加加密功能,但是很多ISP都沒有這么做。
文件傳輸協議
通過互聯網傳送文件的方法很多,從共享文件夾到通過DropBox 這種基于Web的文件服務。其中最古老也是最簡單的文件傳輸方法就是使用FTP.盡管通過某些配置,FTP服務器和客戶端也能支持加密,但是默認情況下,FTP是不加密的。如果你運行了Microsoft FTP 服務器,只需要在IIS管理器的Connections面板里設置FTP SSL Settings 即可。 FTP的一個典型應用是向Web網站上傳文件。我曾經見到過很多次有人使用帶有Web登錄面板的Web主機,他們認為連接到配置面板是安全的,但是接下來又使用FTP客戶端向Web主機傳輸文件,而這個過程使用的用戶名和密碼都是明文發送的。
Telnet
Telnet目前使用的已經不多了,但是仍然有些人會偶爾使用。很多主機都提供Telnet功能,讓用戶可以直接連接到服務器并以命令行方式執行命令。Telnet程序和協議都是沒有加密的,不過可以使用SSH進行加密。
Telnet并不只能用于主機,如果你是IT管理人員,需要配置路由器,除非你會手動配置SSH,否則你可能會用到Telnet.有些路由器會更注重安全,要求管理員首先創建證書并進行簽名,然后才能打開SSH.因此,一般來說我們都會選擇用一根串行線直接連到路由器進行配置,而不是通過網絡進行。
其他程序
我們每個人的電腦里都安裝了很多程序,其中一些程序會不時的與遠程服務器聯絡,有些還會傳輸賬戶信息。這些程序可能是基于 Adobe AIR 的Twitter客戶端, Gmail Notifier 插件, DropBox 客戶端,或者是你的IM軟件,比如Windows Live或QQ.總之,此類軟件很多。那么怎么才能知道這些軟件在發送數據是都是以加密形態發送的呢?
其實大家不用去軟件廠商的網站查詢FAQ上是否有這方面的信息,而是可以通過在電腦上輸入命令netstat來列出當前網絡連接狀態的方法進行安全性查詢。你可以在命令行模式窗口里輸入這個命令,在返回結果的第三列里會看到所連接的遠程IP地址和端口號。任何使用端口443或HTTPS的,都是安全連接。
而我更喜歡使用數據包探嗅器進行判斷。這種工具可以幫助我們發現是否有機密信息泄露。具體來說,我比較喜歡用Microsoft Network Monitor ,大家可以從微軟的網站免費下載這個產品,但是很多人好像更喜歡使用Wireshark.
當然,使用這些工具需要你對掃描結果具備一定的分析能力,但是通過查看每個程序所打開的端口和遠程主機的相關信息,你可以很直觀的看到數據傳輸情況。如果你能從某個數據連接中看到明文信息,那么這個連接很可能是未加密的不安全連接。如果傳輸的數據你完全看不懂,或者已經被標記為TLS或SSL連接,那么你就可以放心了。