FTP是很古老的網路傳輸協定,它誕生在駭客惡魔罕見,人人都是好人的伊甸園時代(亞當跟夏娃還沒吃蘋果?)。

於是這些古老協定以簡單、直覺為主,少有配合安全保密需求加入的一堆囉嗦程序,原始FTP協定的帳號密碼是以明碼方式在網路上傳送,很容易就會被人攔截偷走。

這麼天真無邪的協定在今天這個世界裡,肯定沒三兩下就會被生吞活剝。尤其IIS的FTP服務,可以整合AD Domain或是本機帳號密碼用來登入FTP,方便固然方便,但原本Windows在密碼認證上設計了Challenge Response的複雜機制以確保不會在認證過程被人偷走,一旦被拿來用作FTP登入變成明碼傳送,就全都白搭了。

(另一個同樣危險的陷阱是IIS Web Service的基本驗證Basic Authentication,Windows登入密碼只打著base64超薄馬賽克就在網路上裸奔,也讓人捏把冷汗。如果真的要用,起碼請加一下SSL連線保護)

因此,IIS FTP Service預設有個選項(Allow only anonymous connections),建議大家保持Checked狀態,就是設定FTP只允許匿名方式登入,避免Windows帳號/密碼被運用來登入FTP導致外洩風險。


Comments

# by AMmon

FTP絕對不建議用匿名存取 除非是對外公開始用的 不要使用 IIS的FTP 強力推薦使用 zftpserver, 加密連線亦有支援 萬不得已使用IIS的FTP 可以開本機帳號並給予最小權限

# by Jeffrey

to Ammon, 加密應是上策,我想我的原意是,在未加密的通訊中使用非匿名帳號登入,比用匿名帳號還危險,佷容易就被看光光,而如果授與這個非匿名帳號額外的權限,被盜用的風險會上升,因此不如一律以匿名待之,自然在規劃上就不致不小心授與特殊權限。 還有另外一招,若屬內部或小規模使用,不妨可以限定連線者的Client IP,也是可以增加安全性的方法。 我同意IIS的FTP實在陽春了點,如果有其他更好的選擇,可以考慮取代之。

Post a comment


37 + 12 =