網站漏洞測試 檔案上傳漏洞的安全滲透與修復

網站安全發表於2019-09-20

很多客戶網站以及APP在上線運營之前都會對網站進行滲透測試,提前檢測網站是否存在漏洞,以及安全隱患,避免因為網站出現漏洞而導致重大的經濟損失,客戶找到我們SINE安全做滲透測試服務的時候,我們都會對檔案上傳功能進行全面的安全測試,包括檔案上傳是否可以繞過檔案格式,上傳一些指令碼檔案像php,jsp,war,aspx等等,繞過上傳目錄,直接上傳到根目錄下等等的一些漏洞檢測。

網站漏洞測試 檔案上傳漏洞的安全滲透與修復

那什麼是檔案上傳漏洞?我們SINE安全來給大家講解一下:簡單來說,檔案上傳就是可以上傳一些檔案到網站以及APP裡,大部分的網站都只允許上傳圖片格式檔案,以及文件類的檔案,之所以要做滲透測試就是要檢測該上傳功能是否存在漏洞,程式原始碼裡有沒有對POST過來的上傳資料進行安全效驗,以及檔案字尾名的檢查,有些客戶網站並沒有做安全效驗,導致可以直接上傳webshell(也叫網站木馬後門)到網站中。

當檔案上傳功能出現漏洞就可以直接執行網站木馬檔案,該webshell可以對網站程式碼進行操作,上傳,下載,編輯,以及資料庫操作,執行惡意的遠端程式碼到伺服器中,都是可以的,相當於網站的管理員許可權了,該漏洞的危害性較大。可能會導致使用者的資料洩露,以及資料庫被篡改。

根據我們SINE安全多年的滲透測試經驗來看,客戶網站存在檔案上傳漏洞的地方總結如下:

1.會員上傳頭像功能

網站漏洞測試 檔案上傳漏洞的安全滲透與修復

2.上傳文件功能

3.提交意見反饋+截圖上傳

4.新增文章的圖片上傳

網站漏洞測試 檔案上傳漏洞的安全滲透與修復

5.留言功能上傳圖片

網站漏洞測試 檔案上傳漏洞的安全滲透與修復

存在的上傳漏洞型別:副檔名繞過漏洞,以及檔案解析漏洞,content-type繞過漏洞,檔名大小寫繞過上傳漏洞,檔案頭繞過漏洞,JS前端繞過上傳漏洞,我們SINE安全滲透測試這麼多客戶當中,出現JS前端繞過漏洞頻率最多,很多程式設計師在設計程式碼過程中,只對JS前端的訪問使用者做了安全效驗,並沒有對網站後端做安全效驗,導致可以直接修改字尾名進行上傳指令碼檔案。我們來舉例看下:

網站漏洞測試 檔案上傳漏洞的安全滲透與修復

首先該上傳功能在前臺網站當中是公開的,任何一個註冊的會員都可以上傳,在更換頭像這裡,可以自定義選擇圖片進行上傳,我們透過抓包截圖post的資料包,並修改資料庫裡的filename值,將副檔名修改為jsp,php就可以直接上傳到網站中。

關於滲透測試中檔案上傳漏洞的修復辦法是:對檔案上傳的格式做白名單設定,值允許上傳jpg,png,gif,等的圖片格式檔案,如果字尾名不是以上三種,直接返回上傳失敗,再一個對檔案程式碼做安全效驗,不僅僅是在JS裡做判斷,還要在後端做安全效驗,對上傳的目錄地址進行鎖定,指定上傳的目錄地址,對圖片的資料夾目錄做無執行指令碼許可權,防止執行JSP,PHP,ASP等指令碼的webshell檔案。如果您對網站目前是否存在上傳漏洞,可以找專業的滲透測試公司,國內SINE安全,啟明星辰,綠盟都是比較不錯的安全公司,網站前期上線之前一定要做滲透測試,全方位的檢測網站存在哪些漏洞,提前修復,促使後期網站平臺的發展有序進行,不會因為漏洞而導致業務終止。


來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/31542418/viewspace-2657662/,如需轉載,請註明出處,否則將追究法律責任。

相關文章