數(shù)據(jù)安全治理關(guān)鍵技術(shù)之數(shù)據(jù)庫脫敏技術(shù)詳解
數(shù)據(jù)安全治理之API監(jiān)測系統(tǒng) ,解決API接口安全問題【安華金和】
新一代數(shù)據(jù)庫脫敏技術(shù),為敏感數(shù)據(jù)建立保護盾!
數(shù)據(jù)庫脫敏系統(tǒng)與金融行業(yè)案例解讀
數(shù)據(jù)安全治理建設(shè)思路的著力點——數(shù)據(jù)安全咨詢服務【安華金和】
數(shù)據(jù)庫防火墻功能有哪些?-數(shù)據(jù)安全-安華金和
數(shù)據(jù)安全關(guān)鍵技術(shù)之數(shù)據(jù)庫脫敏技術(shù)詳解【安華金和】
中國數(shù)據(jù)安全治理落地指導書籍《數(shù)據(jù)安全治理白皮書5.0》正式發(fā)布(附下載)
上個月,安華金和關(guān)注比特幣勒索事件,分析數(shù)據(jù)庫被勒索的原理,下一次,也許不是比特幣。數(shù)據(jù)庫勒索事件,安華金和有對策。
數(shù)據(jù)勒索這一黑客技術(shù)在2013年開始爆發(fā),無數(shù)用戶深受其害,勒索軟件將用戶的數(shù)據(jù)文件進行加密,如果不繳納贖金這些文件將無法使用。然而,一波未平,一波又起。勒索軟件已經(jīng)將魔掌伸向了數(shù)據(jù)庫。
近日,諸多企業(yè)DBA發(fā)現(xiàn)他們所管理的Oracle數(shù)據(jù)庫無法訪問,并且在報錯頁面上提示著“您的數(shù)據(jù)庫已經(jīng)被鎖定,如需恢復請發(fā)送5個比特幣到指定賬戶”。從提示中,我們可以很清晰的看出,這并不是數(shù)據(jù)庫發(fā)生的常規(guī)故障,而是被專業(yè)黑客將數(shù)據(jù)庫鎖定了!
安華金和針對本次數(shù)據(jù)庫勒索事件進行了全面分析,將整個勒索的過程進行了還原,我們發(fā)現(xiàn)整個勒索過程分為以下幾個步驟:
1、風險散播
整個勒索過程的源頭是黑客組織向互聯(lián)網(wǎng)各大技術(shù)論壇投放了經(jīng)過“改動”的PL SQL Developer軟件程序,該程序是做Oracle運維必備的客戶端工具,只要安裝了該經(jīng)“改動”版本的PL SQL Developer程序,那么就預示著你已經(jīng)成為了被索的對象。
2、風險潛伏
經(jīng)過“改動”的PL SQL Developer軟件程序內(nèi)置一些惡意的腳本,這些惡意代碼不會馬上爆發(fā),而是一直潛伏在數(shù)據(jù)庫運維人員的終端環(huán)境中。這些惡意代碼會判斷當前受感染的數(shù)據(jù)庫實例從創(chuàng)建時間那天到現(xiàn)在是否大于1200天,如果不滿足則一直潛伏,如果滿足則執(zhí)行勒索代碼。(時間越長,數(shù)據(jù)就越多,用戶就越心切)
3、風險爆發(fā)
勒索爆發(fā)后,會根據(jù)當前一系列條件判斷采用哪種攻擊方式,一種是將tab$表內(nèi)容清空,一種是將USER表內(nèi)容清空,而結(jié)果都是一樣的,數(shù)據(jù)庫無法正常連接了!
通過上述分析,我們可以得出結(jié)論,即:受感染的PL SQL Developer向數(shù)據(jù)庫發(fā)起數(shù)據(jù)清除指令,從而導致數(shù)據(jù)庫無法正常連接。
通過互聯(lián)網(wǎng)搜索此類攻擊行為如何解決,給出的答案基本都是采用官方的PL SQL Developer程序進行運維,但我們非常清楚,這種情況我們是無法規(guī)避的,那么如何從技術(shù)角度有效的將這類問題規(guī)避呢?
安華金和認為要解決這類數(shù)據(jù)庫勒索行為,在解決眼下問題的同時,還需通過技術(shù)手段防止勒索事件的再次襲擊,所以應該分兩步走:風險鏟除和防御布局。
風險鏟除
要對當前數(shù)據(jù)庫是否存在勒索潛伏隱患進行全面檢查并將風險徹底鏟除。
防御布局
與此同時,針對勒索行為進行主動防御戰(zhàn)線的部署,防患于未然。
在本方案中,我們將根據(jù)上述的解決思路進行方案的詳細闡述
著眼當下 鏟除威脅
勒索特征全面檢查
潛在受到勒索的環(huán)境中,有兩部分存在勒索特征,一部分是受感染的數(shù)據(jù)庫客戶端工具,一部分則是受感染的數(shù)據(jù)庫,所以需要通過專業(yè)的數(shù)據(jù)庫掃描工具進行全面的檢查。
1、數(shù)據(jù)庫運維環(huán)境檢查
全面檢查運維終端上的數(shù)據(jù)庫運維工具運行環(huán)境,針對各類數(shù)據(jù)庫客戶端工具(PL SQL Developer、SQL Plus、Toad等)進行詳細檢查, 準確發(fā)現(xiàn)運行環(huán)境中存在惡意勒索腳本或相關(guān)代碼,在掃描結(jié)果中將呈現(xiàn)出檢查出來所有包含勒索代碼特征的文件位置,管理員可以及時將這些文件粉碎。
2、數(shù)據(jù)庫惡意代碼檢查
全面檢查數(shù)據(jù)庫中存儲過程和觸發(fā)器中是否存在符合勒索特征的惡意代碼,并將代碼內(nèi)容呈現(xiàn)在掃描結(jié)果中,管理員可以手動將這一部分惡意代碼刪除。
3、數(shù)據(jù)庫安全缺陷檢查
勒索軟件的攻擊方式多種多樣,隨著時間推進,勒索軟件也不會不斷演變、變種,那么很有可能會利用數(shù)據(jù)庫存在的安全缺陷發(fā)起新一輪的攻擊。所以需要對數(shù)據(jù)庫的安全漏洞進行全面檢查,通過掃描會對將數(shù)據(jù)庫現(xiàn)存所有漏洞以及數(shù)據(jù)庫現(xiàn)存一系列的不安全配置項(如,弱口令、缺省配置、權(quán)限寬泛配置等)管理員可以針對這些漏洞掃描結(jié)果,進行相應的缺陷補救。
專業(yè)安服團隊修復
安華金和具備專業(yè)的數(shù)據(jù)庫安全服務團隊,可通過現(xiàn)場服務的方式,人工對用戶的數(shù)據(jù)庫運維、應用、數(shù)據(jù)等環(huán)節(jié)進行全面的分析檢查及問題修復。
結(jié)合安華金和自研的安服配套工具(掃描類、滲透類等)以及安服工程師的多年安防經(jīng)驗,對用戶的數(shù)據(jù)庫整體安全現(xiàn)狀進行摸底,將所有問題剖析出來與用戶共同制定解決方案。并可為用戶帶來數(shù)據(jù)庫運維安全常識的培訓,提升運維人員的安全意識。
放眼未來 防御布局
被動的防御總是彰顯不足,為了徹底杜絕數(shù)據(jù)庫勒索攻擊,我們需要通過多條防線的建立確保勒索行為進不到數(shù)據(jù)庫。
惡意攻擊防御
勒索軟件在經(jīng)過這一輪洗禮后,諸多安全團隊肯定會給出解決辦法,因此勒索軟件肯定會將勒索方式進行改良,而且很有可能會借用數(shù)據(jù)的漏洞攻擊以及SQL注入的手段發(fā)起新一輪的攻擊。因此我們需要建立健全的防御體系,防止勒索行為的發(fā)生。
1、虛擬補丁防護
要想防御通過數(shù)據(jù)庫漏洞發(fā)起的攻擊行為,我們都知道可以通過打上數(shù)據(jù)庫廠商發(fā)布的安全補丁的方式去解決。但是,給數(shù)據(jù)庫打補丁,尤其是打安全類的補丁,所有的數(shù)據(jù)庫管理人員都心有余悸,因為事實證明,在打完補丁后,數(shù)據(jù)庫總會出現(xiàn)這樣那樣的問題,導致數(shù)據(jù)庫各種不穩(wěn)定。
針對這種情況,安華金和提供虛擬補丁方案,即將所有的漏洞補丁移植到數(shù)據(jù)庫安全防護系統(tǒng)中,通過將數(shù)據(jù)庫防護系統(tǒng)串聯(lián)部署到運維側(cè)與數(shù)據(jù)庫系統(tǒng)中間,從將勒索軟件利用漏洞入侵的行為拒之門外。
2、SQL注入防護
數(shù)據(jù)庫安全防護系統(tǒng)通過對SQL語句進行注入特征描述,完成對SQL注入行為的檢測,從而防止勒索軟件通過SQL注入的方式感染數(shù)據(jù)庫。系統(tǒng)提供缺省SQL注入特征庫。
3、加密腳本識別及解析
本次數(shù)據(jù)庫勒索過程中,黑客很狡猾的把注入到數(shù)據(jù)庫的惡意存儲過程及觸發(fā)器進行了wrap加密(wrap為Oracle自帶的加密機制),在Oracle執(zhí)行這些代碼時會自動把它們解密后再執(zhí)行。
為此,安華金和提供wrap加密腳本識別及解析能力,可準確識別出提交到數(shù)據(jù)庫中的信息是否包含wrap加密標志,并可對帶有wrap加密標志的請求進行阻斷;與此同時,還可對經(jīng)過wrap加密后的信息進行還原解析,將加密后的信息解密成明文,便于用戶了解這些惡意腳本中隱含的操作內(nèi)容。
目前的數(shù)據(jù)庫勒索軟件是通過刪除數(shù)據(jù)庫登錄驗證信息的方式限制了用戶對數(shù)據(jù)庫的訪問請求,這種技術(shù)手段還略顯笨拙。安華金和預言,今后的數(shù)據(jù)庫勒索軟件一定會效仿文件勒索的方式,對數(shù)據(jù)庫表中數(shù)據(jù)進行類似加密劫持,如果是這種方式的話修復的難度將會大大增加。
因此,安華金和提供更為精細的管控方案,用以應對更為復雜的勒索方式。如果黑客想要達到對數(shù)據(jù)庫表數(shù)據(jù)篡改,勢必會以運維側(cè)為跳板發(fā)起攻擊,因為運維側(cè)與數(shù)據(jù)庫中間的通道最“寬敞”,這樣攻擊起來殺傷力最大。因此,如果我們需要對篡改行為進行精確防護,必須要嚴格把守運維側(cè)與數(shù)據(jù)庫之間這道關(guān)。
通過建立運維管控體系,將所有運維行為標準化,在這里我們提出數(shù)據(jù)庫運維行為審批的理念,即所有運維人員如果想操作數(shù)據(jù)庫則必須通過審批。在審批環(huán)節(jié)中,系統(tǒng)執(zhí)行“三查一構(gòu)”:
檢查風險威脅:檢查審批提交的語句是否包含勒索特征,如果包含則自動退回申請;
檢查語法語意:檢查審批提交的語句是否存在語法語義錯誤,從而提高語句執(zhí)行準確程度;
檢查語句執(zhí)行:檢查運維人員執(zhí)行的語句是否是當時申請的語句,如果不是則禁止執(zhí)行;
構(gòu)筑安全模型:隨著系統(tǒng)不斷的使用,系統(tǒng)將會自動學習從而對SQL語句的執(zhí)行進行安全建模。
由此,我們通過運維管控體系的建立,關(guān)閉傳統(tǒng)運維直達數(shù)據(jù)庫的通道,從而拒絕了勒索軟件在暗中發(fā)送數(shù)據(jù)庫表數(shù)據(jù)篡改的請求。為保障正常運維行為的執(zhí)行,需通過標準化的窗口進行運維行為的發(fā)起,通過審批環(huán)節(jié)對提交的語句進行機器智能識別及人工判斷的方式,確保提交的語句對數(shù)據(jù)庫無害,進而達到在不影響正常運維的前提下,確保了數(shù)據(jù)庫不被勒索軟件篡改的風險。