FTP 伺服器關於許可權的問題

來源:互聯網
上載者:User

很多電影網站,論壇或其它機構為了方便會員或成員上傳電影或者交流檔案,都允許使用者的上傳許可權,因為只有允許這個許可權,使用者才可以上傳檔案,但這個許可權在允許斷點再傳的ftp伺服器中,可以導致很大的問題出來。

  允許斷點再傳的ftp伺服器程式,都必須支援一個“Rest”的命令,如果這個命令是用在上傳命令前(send命令), 是告訴ftp伺服器我要上傳的檔案會是從ftp伺服器中存在的那個檔案的什麼位置中開始寫。

  例子:

  假設ftp伺服器中存在一個檔案Readme.txt,檔案大小為1000 bytes,串連上這個ftp伺服器(假設我有寫入權限,ftp伺服器是支援斷點再傳的),我本地中也有一個叫Readme.txt的檔案,檔案大小為500 bytes。好了,我開始做壞事。

  1、串連上這個ftp伺服器(用系統內建的 ftp://ftp.exe/,在內網的可能無法使用,因為 ftp://ftp.exe/用的是port模式)

  2、dir(查看Readme.txt大小,確定了是1000 bytes)

  3、quote rest 1000(告訴ftp伺服器我將要傳送的檔案是從檔案位置1000開始)

  4、send Readme.txt

  5、dir(再次查看Readme.txt大小,現在Readme。txt變成1500 bytes了)

  為什麼Readme.txt會變大了?很簡單,因為我本地的那個Readme.txt的500位元組上傳成功,並寫入到ftp伺服器中存在的那個1000 bytes的Readme.txt檔案中了。問題是出在第二條命令,如果沒有第二條命令,我的第4個命令(Send Readme.txt),就會得到一個Permission Deny的錯誤,第二條命令是讓ftp伺服器信任我們將要進行一個斷點再傳的操作,如果沒有第二條命令,ftp伺服器將以為我們進行的是一個複蓋原檔案的操作(複蓋原檔案操作需要另外的許可權才可以進行)。

  說到這裡,大家應該明白了主題的意思了吧,通過很簡單的操作,任何具有寫入權限的使用者,都可以改動其它使用者上傳的檔案,單是這一點,就存在很大的安全性漏洞了。如果上傳的是重要檔案,隨意的修改可以令檔案完全破壞了;如果是可執行檔或一些zip或rar檔案,會不會有些熟悉各種檔案結構的天才瘋子,將一些惡意代碼也加到那些檔案,令執行者系統受到破壞或者執行了他們的後門代碼或其它,由於本身對於這些檔案結構並不熟悉,我只說這是一個未知之數。

  但在電腦的世界中,很多不可能的事最後都被創造成可能,所以我無法下定論。但單是能破壞到檔案這一點,已是很具破壞性了,想想一個500M的影視檔案,被人多加了位元組進去的話,估計是無法再被觀看的了,播放這些檔案的程式一般都會說不是合法的影視檔案,無法播放等等。至於zip,rar等檔案,winzip或winrar肯定會說壓縮檔已遭到破壞,crc檢驗碼不對等等的錯誤。

  這個問題只是在允許斷點再傳的FTP服務中存在,但現在90%的FTP服務程式都是允許斷點再傳的,所以這問題在普遍的FTP伺服器都會存在。

  防範方法:

  如果一定需要給使用者上傳許可權的話,最好的防範方法是每個使用者都給他建立一個目錄,將那個使用者的許可權完全鎖在這個目錄內,那麼使用者就沒有許可權可以查看其它使用者的目錄,也就是說無法造成以上所說的破壞。

  以上所說的在Serv-U V4.0中測試過,測試平台是Win 2K Server。如果其它ftp服務程式不存在這種問題,那不在此文章討論範圍內。 現在windows系統中架設ftp伺服器,用得最多最流行的還是Serv-U,所以管理員們要多留心了。這文章並不是要教人做壞事,如果你用這種方法去破壞ftp伺服器的檔案,唯一要負責任的人是你。引用一句古龍小說中的話:“刀本身並沒有錯,錯的是拿它的手”。

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.