|
3.蠻力攻擊(BruteForce)
蠻力攻擊,就像其名字所暗示的,就是不停的撬,直到“鎖”打開(kāi)為止的方法。對(duì)于Oracle數(shù)據(jù)庫(kù)來(lái)說(shuō),就是用某種自動(dòng)執(zhí)行的進(jìn)程,通過(guò)嘗試所有的字母數(shù)字組合來(lái)破解用戶(hù)名和密碼。
Unix的管理員就可以利用一款名為JohntheRipper的密碼破解軟件來(lái)執(zhí)行這類(lèi)的攻擊,F(xiàn)在如果你下載某個(gè)補(bǔ)丁,你也可以利用這款軟件來(lái)對(duì)Oracle進(jìn)行蠻力攻擊,敲開(kāi)其密碼。不過(guò)根據(jù)密碼的復(fù)雜程度不同,這可能是個(gè)很費(fèi)時(shí)的過(guò)程,如果你想加快這個(gè)進(jìn)程,可以事先準(zhǔn)備一張包含所有密碼加密的表,這樣的表叫做Rainbowtable,你可以為每個(gè)用戶(hù)名準(zhǔn)備一張不同的rainbowtable,因?yàn)檫@種密碼加密算法把用戶(hù)名作為助燃劑。在這里就不再深入介紹更多的細(xì)節(jié)問(wèn)題了。
Oracle服務(wù)器的默認(rèn)設(shè)置是,對(duì)某個(gè)特定帳戶(hù)輸錯(cuò)密碼達(dá)十次就會(huì)自動(dòng)鎖定該帳戶(hù)。不過(guò)通!皊ysassysdba”權(quán)限沒(méi)有這個(gè)限制,這可能是因?yàn)槿绻沔i定了管理員,那所有人都將被鎖定。這樣的設(shè)置為我們黑客破解軟件(OraBrute)如開(kāi)辟了一條生路,它們會(huì)晝夜不停地敲打你數(shù)據(jù)庫(kù)的前門(mén),直到它乖乖打開(kāi)為止。
防范此類(lèi)攻擊的方法
想要抵御此類(lèi)攻擊,可以使用之前提及的對(duì)付預(yù)設(shè)密碼攻擊的方法。不過(guò)好奇心過(guò)重的數(shù)據(jù)庫(kù)管理員也可能下載上面提到的工具侵入自己的系統(tǒng)。這說(shuō)明了你真正的風(fēng)險(xiǎn)來(lái)自何方。
4.從后門(mén)偷竊數(shù)據(jù)
在安全領(lǐng)域,這個(gè)概念被稱(chēng)為數(shù)據(jù)向外滲漏(exfiltration),這個(gè)詞來(lái)自軍事術(shù)語(yǔ),其反面是向敵人內(nèi)部滲透(infiltration),意思就是在不被發(fā)現(xiàn)的情況下偷偷潛出。對(duì)于從目標(biāo)數(shù)據(jù)庫(kù)獲取數(shù)據(jù)的過(guò)程,可能就像從一些磁帶備份中挑揀數(shù)據(jù)和還原數(shù)據(jù)庫(kù)或者像從一個(gè)被毀壞的磁盤(pán)重復(fù)制一份拷貝一樣簡(jiǎn)單。不過(guò),也有可能涉及到窺探網(wǎng)絡(luò)傳輸以獲得相關(guān)的數(shù)據(jù)包。
Oracle有一個(gè)名為UTL_TCP的程序包,能夠使外部連接指向其他服務(wù)器。對(duì)它稍微改編一下,就可以利用它從數(shù)據(jù)庫(kù)發(fā)送一套低帶寬數(shù)據(jù)流到遠(yuǎn)程主機(jī)。Oracle也附帶了一些有用的程序包來(lái)隱藏?cái)?shù)據(jù)流里的信息,如果你在發(fā)動(dòng)潛入行動(dòng)的時(shí)候擔(dān)心入侵檢測(cè)系統(tǒng)會(huì)監(jiān)測(cè)到你的不法活動(dòng),那么可以充分利用這些功能秘密嵌入,包括DBMS_OBFUSCATION_TOOLKIT和DBMS_CRYPTO。
防范此類(lèi)攻擊的方法
防范此類(lèi)攻擊的最佳辦法是安裝入侵檢測(cè)系統(tǒng),這些系統(tǒng)能夠檢測(cè)網(wǎng)絡(luò)中流入和流出的數(shù)據(jù)包。有一些檢測(cè)系統(tǒng)還提供深入數(shù)據(jù)包檢測(cè),可以確實(shí)檢查某些SQL,并可以通過(guò)設(shè)定規(guī)則在某種情況下觸發(fā)報(bào)警器。這些工具還能夠查找泄密跡象,例如添加的UNION、各種類(lèi)型的short-circuiting命令、利用“–”注釋進(jìn)行截?cái)嗟鹊取?
5.監(jiān)聽(tīng)器
計(jì)算機(jī)世界最讓人覺(jué)得了不起的事情就是,不管有多么困難的事,總有辦法馴服它。尤其是在安全領(lǐng)域,一些漏洞如此的簡(jiǎn)單,而這些漏洞的出現(xiàn)僅僅是因?yàn)橛脩?hù)(也包括我們現(xiàn)在扮演的角色——黑客)并沒(méi)有像軟件設(shè)計(jì)者(程序員或軟件開(kāi)發(fā)員)本來(lái)預(yù)想的那樣思考和行動(dòng)。
Oracle監(jiān)聽(tīng)器的設(shè)置是為了能夠?qū)崿F(xiàn)遠(yuǎn)程管理。那么如果攻擊者把監(jiān)聽(tīng)器的logfile設(shè)置為Unix.rhosts文件呢?這樣攻擊者就可以輕松的對(duì).rhosts文件進(jìn)行寫(xiě)操作。Unix上的這個(gè)文件設(shè)置了什么人可以不用密碼而使用rsh、rlogin和rcp命令登錄。你可以想想將會(huì)發(fā)生什么事情。
這其實(shí)只是圍繞Oracle監(jiān)聽(tīng)器安全問(wèn)題的冰山一角而已。其他的還有緩沖區(qū)溢出等一大堆問(wèn)題需要注意。事實(shí)上Litchfield的《Oracle黑客手冊(cè)》里花了一整章的內(nèi)容來(lái)討論這個(gè)主題。
防范此類(lèi)攻擊的方法
從預(yù)防的角度而言,Oracle已經(jīng)做出了一定措施來(lái)更好的保障系統(tǒng)安全,前提是你能夠把它實(shí)施到位。首先,為監(jiān)聽(tīng)器設(shè)置一個(gè)管理密碼。對(duì)于擔(dān)負(fù)著管理不斷增加的密碼重?fù)?dān)的管理員而言,這看起來(lái)像是多余的,不過(guò)在你需求其他途徑來(lái)保障監(jiān)聽(tīng)器安全之前,好好地想想上面提到的和沒(méi)提到的威脅。Oracle也添加了ADMIN_RESTRICTIONS,能夠阻止特定的遠(yuǎn)程控制事件。 本新聞共 3頁(yè),當(dāng)前在第 2頁(yè) 1 2 3 |
【收藏】【打印】【進(jìn)入論壇】 |
|
|
|
|
|
|
|