從滲透測試到漏洞掃描 看我們如何對網站做安全防護

網站安全發表於2019-12-04

客戶網站前端時間被攻擊,網站被劫持到了 du博網站上去,透過朋友介紹找到我們SINESAFE做網站的安全防護,我們隨即對客戶網站進行了全面的滲透測試,包括了網站的漏洞檢測與程式碼安全測試,針對於發現的漏洞進行了修復,包括網站安全部署等等方面,下面我們將這一次的安全應急處理過程分享給有需要的客戶。

從滲透測試到漏洞掃描  看我們如何對網站做安全防護

首先客戶網站採用的架構是PHP語言開發,mysql資料庫,使用的是linux centos系統作為網站的執行環境,程式碼使用的是開源的某CMS系統,我們首先打包壓縮了一份網站原始碼到我們本地的電腦,人工對其程式碼進行全面的滲透測試與檢測,首先我們會從網站的安裝檔案入手,我們檢視到使用的是install.php作為網站安裝的檔案,一般這裡會存在網站漏洞,例如:沒有對其做安全驗證,導致可以任意的安裝網站,覆蓋配置檔案,甚至可能會出現表單裡不做安全過濾,導致寫入webshell一句話木馬程式碼到config.php檔案裡。

從滲透測試到漏洞掃描  看我們如何對網站做安全防護

經過我們SINE安全技術的人工程式碼安全審計,發現客戶網站存在任意重灌網站漏洞,漏洞檔案:install.php,檢視到使用的變數值為DEL_INSTALLER=1的時候才會刪除安裝檔案,我們看到預設值=0.也就是說不會刪除安裝檔案,我們可以訪問該程式碼,直接執行重灌操作。

從滲透測試到漏洞掃描  看我們如何對網站做安全防護

繼續檢查程式碼是否還存在其他的漏洞,在檢查到配置檔案config.php程式碼中,有呼叫到cookies方面的賦值,繼續追蹤分析發現存在越權漏洞,管理員登入網站後,會儲存cookies,但是這個cookies的構建很簡單,是使用了emhash的方式,對傳入的key值進行了MD5加密操作,最終cookies的構成是由賬號名以及HASH值拼接構成的,那我們就可以偽造cookies,直接越權操作其他管理員賬號,甚至可以以普通使用者的許可權,去操作網站管理員的許可權。

從滲透測試到漏洞掃描  看我們如何對網站做安全防護

我們SINE安全工程師對後臺程式碼進行安全審計的時候發現,存在上傳漏洞,可以上傳php檔案,後臺有個設定上傳字尾名的功能,但是預設網站對新增PHP的字尾名做了過濾,會將PHP稀釋掉,以及不允許,那麼我們在實際的滲透測試中如何繞過呢?看到後臺有資料庫備份恢復的功能,那麼我就可以將資料庫裡的字尾名改為php,再直接恢復到網站中去,直接上傳PHP指令碼後門也叫webshell到網站裡去。

從滲透測試到漏洞掃描  看我們如何對網站做安全防護

至此客戶網站的所有滲透測試以及漏洞檢測已完畢,共發現3處漏洞,1個是install.php安裝重置漏洞,1個是越權漏洞,1個是檔案上傳漏洞,針對以上3個漏洞,我們SINE安全對其做了漏洞修復,對install的變數值進行了判斷,當網站安裝後,自動刪除install.php檔案,對越權做了使用者的所屬許可權判斷,如果不是當前使用者的cookies直接返回錯誤狀態,對後臺的資料庫備份功能做限制,只能備份,不能恢復,恢復操作使用phpmyadmin來進行網站的資料恢復,如果您對網站的安全不是太懂的話,建議找專業的網站安全公司來處理解決,做好網站安全,才能保障使用者的每一次訪問。


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

相關文章