在對(duì)客戶(hù)網(wǎng)站以及APP進(jìn)行滲透測(cè)試服務(wù)時(shí)候,越權(quán)漏洞對(duì)業(yè)務(wù)系統(tǒng)的正常運(yùn)轉(zhuǎn)影響很大,很多客戶(hù)網(wǎng)站信息被泄露,數(shù)據(jù)庫(kù)被篡改一大部分原因跟越權(quán)漏洞有關(guān),前端時(shí)候某金融客戶(hù)因?yàn)閿?shù)據(jù)被泄露,通過(guò)老客戶(hù)介紹,找到我們SINE安全做滲透測(cè)試服務(wù),找出數(shù)據(jù)被泄露的原因以及目前網(wǎng)站APP存在的未知漏洞,根據(jù)我們十多年的滲透經(jīng)驗(yàn)來(lái)分享這次網(wǎng)站安全測(cè)試的整個(gè)過(guò)程。
首先要收集客戶(hù)的資料,我們SINE安全技術(shù)與甲方的網(wǎng)站維護(hù)人員進(jìn)行了溝通,確定下網(wǎng)站采用的是php語(yǔ)言(Thinkphp二次開(kāi)發(fā)系統(tǒng)),數(shù)據(jù)庫(kù)類(lèi)型是Mysql,服務(wù)器采用的是linuxcentos,買(mǎi)的是香港阿里云ECS,數(shù)據(jù)庫(kù)采用的是內(nèi)網(wǎng)傳輸并使用了RDS數(shù)據(jù)庫(kù)實(shí)例作為整個(gè)網(wǎng)站APP的運(yùn)營(yíng)環(huán)境,在對(duì)客戶(hù)有了一定的了解后,客戶(hù)提供了網(wǎng)站的會(huì)員賬號(hào)密碼,我們模擬攻擊者的手法去黑盒測(cè)試目前網(wǎng)站存在的漏洞,登陸網(wǎng)站后,客戶(hù)存在交易系統(tǒng)功能,使用的是區(qū)塊鏈以及虛擬幣進(jìn)行幣與幣之間的交易金融網(wǎng)站,包括幣幣交換,轉(zhuǎn)幣,提幣,沖幣,包括了去中心化,以及平臺(tái)與虛擬幣交易所進(jìn)行安全通信,第三方的API接口,也就是說(shuō)客戶(hù)的幣上了鏈,直接到交易所進(jìn)行公開(kāi)交易,資金安全很重要,只要出現(xiàn)一點(diǎn)安全隱患導(dǎo)致的損失可能達(dá)到幾十萬(wàn)甚至上百萬(wàn),不過(guò)還好客戶(hù)只是用戶(hù)信息泄露,針對(duì)這一情況,我們展開(kāi)了全面的人工滲透測(cè)試。
首先我們對(duì)用戶(hù)測(cè)試這里進(jìn)行漏洞檢測(cè),在這里跟大家簡(jiǎn)單的介紹一下什么是越權(quán)漏洞,這種漏洞一般發(fā)生在網(wǎng)站前端與用戶(hù)進(jìn)行交互的,包括get.post.cookies等方式的數(shù)據(jù)傳輸,如果傳輸過(guò)程中未對(duì)用戶(hù)當(dāng)前的賬戶(hù)所屬權(quán)限進(jìn)行安全判斷,那么就會(huì)導(dǎo)致通過(guò)修改數(shù)據(jù)包來(lái)查看其它用戶(hù)的一些信息,繞過(guò)權(quán)限的檢查,可直接查看任意用戶(hù)的信息,包括用戶(hù)的賬戶(hù),注冊(cè)手機(jī)號(hào),身份認(rèn)證等信息。接下來(lái)我們來(lái)實(shí)際操作,登陸網(wǎng)站,查看用戶(hù)信息,發(fā)現(xiàn)鏈接使用的是這種形式,如下:/user/58,上面的這個(gè)網(wǎng)址最后的值是58,與當(dāng)前我們登陸的賬戶(hù)是相互對(duì)應(yīng)的,也是ID值,USERID=58,也就是說(shuō)我自己的賬戶(hù)是ID58,如果我修改后面的數(shù)值,并訪問(wèn)打開(kāi),如果出現(xiàn)了其他用戶(hù)的賬戶(hù)信息,那么這就是越權(quán)漏洞。/user/60,打開(kāi),我們發(fā)現(xiàn)了問(wèn)題,直接顯示手機(jī)號(hào),用戶(hù)名,以及實(shí)名認(rèn)證的身份證號(hào)碼,姓名,這是赤裸裸的網(wǎng)站漏洞啊!這安全防范意識(shí)也太薄弱了。
用戶(hù)信息查看這里存在越權(quán)漏洞,發(fā)生的原因是網(wǎng)站并沒(méi)有對(duì)用戶(hù)信息查看功能進(jìn)行權(quán)限判斷,以及對(duì)賬戶(hù)所屬權(quán)限判斷,導(dǎo)致發(fā)生可以查看任意用戶(hù)ID的信息,如下圖所示:
漏洞很明顯,這是導(dǎo)致用戶(hù)信息泄露的主要原因,并且我們?cè)跍y(cè)試用戶(hù)注冊(cè)的賬戶(hù)也發(fā)現(xiàn)了用戶(hù)信息泄露漏洞,我們抓取了POST到用戶(hù)注冊(cè)接口端這里,可以看到數(shù)據(jù)包里包含了userid,我們滲透測(cè)試對(duì)其ID值修改為61,然后服務(wù)器后端返回來(lái)的信息,提示用戶(hù)已存在,并帶著該ID=61的用戶(hù)信息,包含了姓名,郵箱地址,錢(qián)包地址,等一些隱私的信息,如下返回的200狀態(tài)代碼所示:
通過(guò)上面的漏洞可以直接批量枚舉其他ID值的賬戶(hù)信息,導(dǎo)致網(wǎng)站的所有用戶(hù)信息都被泄露,漏洞危害極大,如果網(wǎng)站運(yùn)營(yíng)者不加以修復(fù)漏洞,后期用戶(hù)發(fā)展規(guī)模上來(lái),很多人的信息泄露就麻煩了。如果您的網(wǎng)站以及APP也因?yàn)橛脩?hù)信息被泄露,數(shù)據(jù)被篡改等安全問(wèn)題困擾,要解決此問(wèn)題建議對(duì)網(wǎng)站進(jìn)行滲透測(cè)試服務(wù),從根源去找出網(wǎng)站漏洞所在,防止網(wǎng)站繼續(xù)被攻擊,可以找專(zhuān)業(yè)的網(wǎng)站安全公司來(lái)處理,國(guó)內(nèi)SINESAFE,深信服,三零衛(wèi)士,綠盟都是比較不錯(cuò)的安全公司,在滲透測(cè)試方面都是很有名的,尤其虛擬幣網(wǎng)站,虛擬幣交易所,區(qū)塊鏈網(wǎng)站的安全,在網(wǎng)站,APP,或者新功能上線之前一定要做滲透測(cè)試服務(wù),提前檢查存在的漏洞隱患,盡早修復(fù),防止后期發(fā)展規(guī)模壯大造成不必要的經(jīng)濟(jì)損失。
我們專(zhuān)注高端建站,小程序開(kāi)發(fā)、軟件系統(tǒng)定制開(kāi)發(fā)、BUG修復(fù)、物聯(lián)網(wǎng)開(kāi)發(fā)、各類(lèi)API接口對(duì)接開(kāi)發(fā)等。十余年開(kāi)發(fā)經(jīng)驗(yàn),每一個(gè)項(xiàng)目承諾做到滿(mǎn)意為止,多一次對(duì)比,一定讓您多一份收獲!