事務(wù)過程
2012年10月19日上午,同事在平常巡檢時(shí)發(fā)現(xiàn)一套對(duì)外辦事的電子商務(wù)系統(tǒng)后臺(tái)Oracle數(shù)據(jù)庫(kù)中呈現(xiàn)了一個(gè)名為zwell的用戶,并且,該用戶具有DBA權(quán)限。
遵循治理劃定,所有的Oracle數(shù)據(jù)庫(kù)均有DDL觸發(fā)器,查看觸發(fā)器發(fā)現(xiàn):
1CREATE ZWELL CREATE USER zwell IDENTIFIED BY ******* WD_WEB 2012/9/7 13:53:59 11028547 FALSE SYSTEM 5 WD_WEB 57 ptserver8 10.x.x.x tcp DATABASE
1WD_WEB 12200617 ROLE PRIVILEGE GRANT 2012/10/9 15:38:20 10.0.8.10 grant dba to zwell
此用戶在2012/9/7 13:53:59,經(jīng)由過程CREATE USER zwell IDENTIFIED BY ******* SQL語(yǔ)句成立,發(fā)出此SQL的辦事器為WEB辦事器集群第8臺(tái)(ptserver8),IP地址為WEB集群F5接口地址(10.x.x.x)。并且,在2012/10/9 15:38:20,經(jīng)由過程grant dba to zwell SQL語(yǔ)句,將zwell用戶晉升為DBA權(quán)限。
此用戶已成立了1個(gè)多月,例行查抄只查抄具有DBA權(quán)限的用戶,導(dǎo)致此用戶被成立很長(zhǎng)時(shí)候后才被發(fā)現(xiàn)。
經(jīng)由過程對(duì)WEB辦事器的apache日記進(jìn)行查抄,在2012/9/7 13:53:59秒前后有大年夜量的SQL注進(jìn)行動(dòng),發(fā)出SQL注進(jìn)進(jìn)侵的源IP(113.71.184.32)屬于廣東省佛山市電信(如圖1所示)

圖1
但因?yàn)閍pache日記記及時(shí)候挨次標(biāo)題問題,導(dǎo)致那時(shí)并未找到SQL注進(jìn)的對(duì)應(yīng)日記。
10月19日下戰(zhàn)書,告急對(duì)此電子商務(wù)網(wǎng)站進(jìn)行利用縫隙掃描,發(fā)現(xiàn)高??p隙。
10月19日夜間, 鑒于短時(shí)候內(nèi)沒法確認(rèn)被進(jìn)侵路子及目標(biāo),經(jīng)多方商討,建議進(jìn)步前輩行以下措置:
1.利用系統(tǒng)數(shù)據(jù)庫(kù)用戶存在IMP_FULL_DATABASE權(quán)限,而此權(quán)限應(yīng)為過度授權(quán),具有此權(quán)限則可成立用戶。進(jìn)行權(quán)限收回。
2.盡快點(diǎn)竄數(shù)據(jù)庫(kù)賬戶暗碼,和相干把持系統(tǒng)暗碼。
3.將數(shù)據(jù)庫(kù)版本由10.2.0.1進(jìn)級(jí)至10.2.0.5。
4.對(duì)數(shù)據(jù)庫(kù)內(nèi)關(guān)頭信息進(jìn)行審計(jì)。
10月20日凌晨,對(duì)apache日記進(jìn)行細(xì)心查抄后,確認(rèn)此次進(jìn)侵為SQL編制進(jìn)侵,進(jìn)侵進(jìn)口為/service/service.do盲注編制,發(fā)出SQL注進(jìn)進(jìn)侵的源IP(119.57.81.78)屬于北京市東四IDC機(jī)房。
2012年10月20日下戰(zhàn)書,再次查抄發(fā)出成立用戶SQL的ptserver8辦事器的apache日記,發(fā)現(xiàn)了與成立用戶對(duì)應(yīng)的日記信息(如圖2所示)。

圖2

圖3
成立用戶把持也是經(jīng)由過程/service/service.do進(jìn)行SQL注進(jìn),至此,全部進(jìn)侵流程均已查清。
事務(wù)闡發(fā)
在此次安然事務(wù)中,黑客利用WEB頁(yè)面的盲注縫隙,采取SQL注進(jìn)的編制成立了zwell用戶,并且操縱了Oracle 10.2.0.1的提權(quán)縫隙,付與zwell用戶DBA權(quán)限。
經(jīng)驗(yàn)教訓(xùn)
1.WEB利用應(yīng)進(jìn)行完美的代碼查抄,避免SQL注進(jìn)縫隙
有良多編制可以避免SQL注進(jìn)縫隙,好比,最多見的,利用綁定變量,但因?yàn)榇死梅ǘ葹橥獍_辟編制,供給商之前已開辟了一套根本版本,此版本為根本版本的進(jìn)級(jí)版本,是以,根本版本存在的標(biāo)題問題也一并帶進(jìn)了出產(chǎn)環(huán)境,導(dǎo)致此縫隙的存在。
2.未進(jìn)行完美的代碼安然查抄
今朝有良多東西可以對(duì)利用進(jìn)行安然查抄,近似的SQL注進(jìn)型縫隙一般都可以查抄出來,但因?yàn)閭}(cāng)促上線,經(jīng)驗(yàn)也不敷豐碩,是以,導(dǎo)致利用帶著縫隙上線。
3.數(shù)據(jù)庫(kù)版本未進(jìn)級(jí)
這是一個(gè)典型的標(biāo)題問題。數(shù)據(jù)庫(kù)版本太低導(dǎo)致存在提權(quán)縫隙,假定數(shù)據(jù)庫(kù)打了補(bǔ)丁,起碼不會(huì)導(dǎo)致zwell用戶被晉升權(quán)限。
4.平常查抄不敷周全
只對(duì)具有DBA權(quán)限的用戶進(jìn)行查抄,導(dǎo)致被報(bào)復(fù)打擊后很長(zhǎng)時(shí)候才發(fā)現(xiàn)報(bào)復(fù)打擊行動(dòng)。
5.保留日記
對(duì)WEB利用,日記是很有需要進(jìn)行保留的,假定日記沒有被改動(dòng),根基都可以從日記中重現(xiàn)全部安然事務(wù)的完全過程。
6.即便可以或許查到來歷IP,此IP常常也是肉機(jī)IP,好比,在此次事務(wù)中,兩次行動(dòng)應(yīng)是統(tǒng)一人完成,但成立用戶的來歷IP為廣東省佛山市電信,提權(quán)IP為北京市東四IDC機(jī)房。
啟明星斗公司數(shù)據(jù)庫(kù)審計(jì)專家點(diǎn)評(píng)
數(shù)據(jù)庫(kù)的風(fēng)險(xiǎn)首要來歷于兩個(gè)方面,一個(gè)是外部報(bào)復(fù)打擊,另外一個(gè)是內(nèi)部人員(有權(quán)限人員)的背規(guī)把持(用心或無(wú)意),本案牘例就是外部人員報(bào)復(fù)打擊的一個(gè)典型過程。具體步調(diào)是:經(jīng)由過程利用系統(tǒng)縫隙進(jìn)行報(bào)復(fù)打擊,成立賬戶,再操縱本地縫隙提權(quán),然后操縱高權(quán)限用戶進(jìn)行系列背法把持。
從上面的案例可以看到,要包管數(shù)據(jù)庫(kù)安然,除數(shù)據(jù)庫(kù)系統(tǒng)本身安然以外,利用系統(tǒng)的安然也需要一并考慮。不但要對(duì)數(shù)據(jù)庫(kù)系統(tǒng)進(jìn)行安然加固和嚴(yán)格的權(quán)限節(jié)制,對(duì)利用系統(tǒng)也要進(jìn)行代碼縫隙查抄、進(jìn)侵防護(hù),建議在安然扶植時(shí),除要進(jìn)行數(shù)據(jù)庫(kù)的權(quán)限節(jié)制、數(shù)據(jù)加密、安然審計(jì)以外,對(duì)利用辦事器的代碼查抄、進(jìn)侵防御等辦法也要考慮,可恰當(dāng)擺設(shè)一些常常利用的安然產(chǎn)品,包含:數(shù)據(jù)庫(kù)加密、數(shù)據(jù)庫(kù)審計(jì)、WEB利用防火墻、進(jìn)侵檢測(cè)等。