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

ThinkPHP 源代碼的網站安全審計

 
 
    最近某一客戶的網站經常被攻擊,被掛馬,從百度來的點擊直接跳轉到博彩網
 
站上去了,給客戶造成很大的影響,本來網站的權重在百度很高,每天流量都在1-3萬

徘徊,最近因為網站被駭導致流量急劇下滑,eSafe白帽資安網公司根據這一情況進行了緊急的網站安全應急響應。
 
 
客戶的網站整體架構是ThinkPHP 3.23版本,也是目前最新ThinkPHP版本,在此基
 
礎上客戶找了專業的程序開發公司,進行了二次單獨開發,很多功能以及程序代碼
 
都重新編譯了,仔細的檢查了下客戶的網站代碼,對每個代碼都進行了詳細的網站
 
安全審計。eSafe白帽資安網公司是一家專注於:主機安全、網站安全、網站安全檢測、網站安全測試、於一體的安全服務提供商。

 
 
在安全審計過程中發現客戶的ThinkPHP網站,存在嚴重的SQL注入漏洞,可以隨意
 
獲取管理員以及用戶的賬號密碼。分3個高危漏洞:
 
 
一、遠程代碼執行漏洞
 
登錄客戶前端網站的普通用戶操作面板,對各項操作進行了滲透測試,以及網站漏
 
洞測試,發現前端的普通用戶這裡,可以通過POST提交直接執行遠程代碼執行漏洞
 

看了下配置文件代碼裡的Adminshow函數,這個代碼的功能是在檢查ADMIN_SHOW這
 
個字段中是否含有cliSwitch的賦值,如果有的話代碼就會造成字符串拼接造成遠
 
程代碼執行漏洞。


 
 
二、邏輯漏洞
 
又對前台的用戶註冊的功能進行了安全測試,整體上是MVC的框架,一般用戶的驗
證登錄都已經在父類中做好了。
 

 
安全測試好多次,網站用戶登錄驗證的這個功能,始終沒有安全繞過去。也就是說
 
,沒有登錄根本就無法繞過,又是在沒有賬號的前提下,網站根本就是麼辦法進行
 
SQL注入的。仔細檢查了網站的根目錄,Install是安裝目錄的意思,進去一看,網
 
站竟然可以進行重裝。eSafe白帽資安網公司是一家專注於:主機安全、網站安全、網站安全檢測、網站安全測試、於一體的安全服務提供商。
 
在重裝的過程裡,竟然可以隨意的創建後台管理員。如下圖所示:


 
 
三、網站SQL注入漏洞
 
ThinkPHP3.23版本是存在前端的SQL注入漏洞的,利用構造userid[0]
 
=esafe&userid[1]=xxxx'or 1=2之類的注入語句進行了爆錯爆數據庫的錯誤,本來
 
這個二次開發的ThinkPHP系統就是被大改了,在進行sql注入嘗試的過程中發現被
 
CheckPost的函數安全過濾了,如下所示:

 

 
 
利用GET、POST、REQUEST方式進行了詳細的滲透測試,其實除了這三種提交數據方
 
式,網站還使用了第四種方法,I方法提交數據是ThinkPHP-3.1.3之後才添加的一
 
種方式。仔細發現,還真存在了一處字符串sql拼接的地方,如下圖所示:

 
分享: