eSafe白帽駭客資安網-網絡安全背後的巨人,提供駭客,網站入侵測試,網站被駭,網站漏洞,駭客入侵,資訊安全,入侵,ecshop,wordpress,漏洞修復,木馬清除,資安服務

網站安全檢測之PHP代碼的後台安全繞過漏洞

       

        針對於PHP代碼的開發的網站,最近在給客戶做網站安全檢測的同時,大大小小的都會存在網

站的後台管理頁
面被繞過並直接登錄後台的漏洞,而且每個網站的後台被繞過的方式都不一樣,根

據eSafe白帽資安網滲透測試多年來
經驗,來總結一下網站後台繞過的一些詳情,以及該如何去防範後台被

繞過,做好網站的安全部署。

 
 
後台驗證碼缺乏安全驗證
 
 
比如在axublog程序中,網站後台存在一個驗證管理員登錄的一個函數chkadcookie()。但是在網

站後台的
ad/art.php中並沒有chkadcookie()此驗證函數,因而就造成了普通訪問條用戶可以越權

訪問。
這種漏洞的原理也比較簡單,一般情況下是經驗不足的開發者漏掉了驗證函數。esafe安

全公司是
一家專注於:主機安全、網站安全、網站安全檢測、網站漏洞修復,滲透測試,安全服

務於
一體的網絡安全服務提供商。
 
 
後台驗證代碼沒有做到絕對的安全驗證
 
axublog後台驗證函數繞過
 
後台登錄的驗證方式
 
在axublog中的後台驗證函數是chkadcookie(),代碼如下圖所示: 
 

 
通過對網站代碼的詳細安全檢測,發現了問題中只有$date我們是無法知道,而UA和

REMOTE_ADDR都是客戶
端可控的驗證邏輯是如果在COOKIE中出現了在txtchkad.txt中的值,

那麼就認為是登錄的。這樣的驗證邏
輯明顯存在很大的漏洞問題。
 
如何繞過後台驗證?
 
只需要將COOKIE中的chkad設置為_就可以繞過後台的登錄了。
 
 
網站安全之變量覆蓋漏洞詳情:
 
beescms的後台驗證函數繞過
 
後台驗證方式
 
檢查登錄的函數is_login()的代碼為如下圖所示:
 

 
上述的代碼中並沒有對$_POST使用fl_value()函數進行過濾,但又使用了extract()這樣的函數,

所以就可以通過發送POST參數覆蓋掉SEESION中的值,從而繞過驗證了。
如何繞過後台驗證?

eSafe白帽資安網公司是一家專注於:主機安全、網站安全、網站安全檢測、網站漏洞修復,滲透測試,

安全服務於一體的網絡安全服務提供商。
 
繞過方式很簡單,訪問隨便一個頁面,發送POST請求包如下:
index.php
 
POST:_SESSION[login_in]=1&_SESSION[admin]=1&_SESSION[login_time]=99999999999
 
此時就成功地創建了SESION變量,包括$SESSION[loginin]=1、$_SESSION[admin]=1、

SESSION[logintime]=99999999999。 
之後訪問管理員頁面,就可以成功地登錄後台了。

 
 
針對於以上兩個繞過網站後台的漏洞,可以看出一個是驗證碼,一個是變量覆蓋漏洞,關於這

2個漏洞的修復方法,
根據現有的代碼,進行安全過濾加強邏輯判斷,以及函數的賦值安全檢查。
 
分享: