webshell
網站的後門工具
webshell就是以asp、php、jsp或者cgi等網頁文件形式存在的一種代碼執行環境,主要用於網站管理、伺服器管理、許可權管理等操作。使用方法簡單,只需上傳一個代碼文件,通過網址訪問,便可進行很多日常操作,極大地方便了使用者對網站和伺服器的管理。正因如此,也有小部分人將代碼修改後當作後門程序使用,以達到控制網站伺服器的目的。
顧名思義,“web”的含義是顯然需要伺服器開放web服務,“shell”的含義是取得對伺服器某種程度上操作命令。webshell主要用於網站和伺服器管理,由於其便利性和功能強大,被特別修改後的webshell也被部分人當作網站後門工具使用。
一方面,webshell被站長常常用於網站管理、伺服器管理等等,根據FSO許可權的不同,作用有在線編輯網頁腳本、上傳下載文件、查看資料庫、執行任意程序命令等。
另一方面,被入侵者利用,從而達到控制網站伺服器的目的。這些網頁腳本常稱為WEB腳本木馬,比較流行的asp或php木馬,也有基於.NET的腳本木馬與JSP腳本木馬。國內常用的WebShell有海陽ASP木馬,Phpspy,c99shell等。
WebShell被當作後門使用時具有隱蔽性,一般有隱藏在正常文件中並修改文件時間達到隱蔽的,還有利用伺服器漏洞進行隱藏,如 "..." 目錄就可以達到,站長從FTP中找到的是含有“..”的文件夾,而且沒有許可權刪除,還有一些隱藏的WEBSHELL,可以隱藏於正常文件帶參數運行腳本後門。
webshell可以穿越伺服器防火牆,由於與被控制的伺服器或遠程過80埠傳遞的,因此不會被防火牆攔截。並且使用webshell一般不會在系統日誌中留下記錄,只會在網站的web日誌中留下一些數據提交記錄,沒有經驗的管理員是很難看出入侵痕迹的。
從根本上解決動態網頁腳本的安全問題,要做到防注入、防爆庫、防COOKIES欺騙、防跨站攻擊(xss)等等,務必配置好伺服器FSO許可權。最小的許可權=最大的安全。防範webshell的最有效方法就是:可寫目錄不給執行許可權,有執行許可權的目錄不給寫許可權。防範方法:
1、建議用戶通過ftp來上傳、維護網頁,盡量不安裝asp的上傳程序。
2、對asp上傳程序的調用一定要進行身份認證,並只允許信任的人使用上傳程序。
3、asp程序管理員的用戶名和密碼要有一定複雜性,不能過於簡單,還要注意定期更換。
4、到正規網站下載程序,下載后要對資料庫名稱和存放路徑進行修改,資料庫名稱要有一定複雜性。
5、要盡量保持程序是最新版本。
6、不要在網頁上加註後台管理程序登陸頁面的鏈接。
7、為防止程序有未知漏洞,可以在維護后刪除後台管理程序的登陸頁面,下次維護時再通過上傳即可。
8、要時常備份資料庫等重要文件。
9、日常要多維護,並注意空間中是否有來歷不明的asp文件。
10、盡量關閉網站搜索功能,利用外部搜索工具,以防爆出數據。
11、利用白名單上傳文件,不在白名單內的一律禁止上傳,上傳目錄許可權遵循最小許可權的原則。