少妇尝试黑人粗吊受不了,久久精品免费久精品蜜桃,男受被做哭激烈娇喘gv视频,扒开女人狂c操

?
內(nèi)容中心
按關(guān)鍵字查找
ORACLE 12C 安全隱患系列(二)
作者:思成 發(fā)布時(shí)間:2017-03-16

摘要

索引是數(shù)據(jù)庫優(yōu)化性能的關(guān)鍵技術(shù),同時(shí)也是從9i開始(前面未做考證)到現(xiàn)今的12C中,一直存在的安全隱患。索引給數(shù)據(jù)庫帶來的安全隱患有多種方式,例如:在PARAMETERS中注入惡意代碼導(dǎo)致的緩沖區(qū)溢出(CVE-2012-0052);通過SYSTEM.OL$插入觸發(fā)器,任意執(zhí)行SQL語句(CVE-2011-3512);拿到高權(quán)限用戶的表的創(chuàng)建索引權(quán)限,進(jìn)行任意提權(quán)(CVE-2010-0902)等。經(jīng)過多年發(fā)展,大部分安全漏洞已經(jīng)被徹底封死,但CVE-2010-0902帶來的提權(quán)思路并未封死,直至今天在12C下,如果條件允許還能死灰復(fù)燃。

要想徹底根除索引權(quán)限帶來的(CVE-2010-0902)安全隱患,就必須搞清楚三個(gè)問題:1.索引可以舍棄嗎? 2.如何利用索引提權(quán)?3. 如何合理配置索引?

Index 

大部分情況下,對(duì)于一個(gè)存在著安全隱患的功能來說,最穩(wěn)妥的處理方式就是棄之不用。但總有一些功能我們沒法直接舍棄,只能盡更大的努力去配置,而索引就屬于這樣的一種功能。

索引的價(jià)值在于能夠極大地提高特定數(shù)據(jù)的查詢速度。因?yàn)閿?shù)據(jù)庫的最基層單位是塊,所有的數(shù)據(jù)在物理磁盤上是以塊的形式存儲(chǔ)的,為確保對(duì)磁盤操作的原子性,訪問數(shù)據(jù)就會(huì)一并訪問所有數(shù)據(jù)塊。磁盤上的這些數(shù)據(jù)塊與鏈表類似,它們都包含一個(gè)數(shù)據(jù)段和一個(gè)指針,指針指向下一個(gè)節(jié)點(diǎn)(數(shù)據(jù)塊)的內(nèi)存地址,而且它們都不需要連續(xù)存儲(chǔ)(即邏輯上相鄰的數(shù)據(jù)塊在物理上可以相隔很遠(yuǎn))。

當(dāng)我們要查詢某一字段的時(shí)候,如果該值是唯一的,會(huì)使用線性查找,理論上要訪問N/2個(gè)數(shù)據(jù)塊,其中N指的是一個(gè)表所涵蓋的所有數(shù)據(jù)塊。如果該字段值不唯一,那么就更麻煩了,要搜索整個(gè)表空間,理論上要訪問全部N個(gè)數(shù)據(jù)塊。

然而,如果我們將這些唯一值的字段進(jìn)行排序,就可以使用二分查找,也就是說理論上只要訪問log2 N個(gè)數(shù)據(jù)塊就可以找到目標(biāo)。同樣,對(duì)不唯一值字段進(jìn)行排序,找到邊緣值,也就不用再搜索表中的其他數(shù)據(jù)塊了。這樣一來,性能也會(huì)有實(shí)質(zhì)性的提升。

而索引完成的正是對(duì)特定字段進(jìn)行排序的工作。最終往往會(huì)以“樹”的形式存儲(chǔ)。索引唯一明顯缺點(diǎn)就是額外占用磁盤空間。鑒于其突出價(jià)值,索引功能還是要好好保留,做好正確配置,小心使用。

Index Privilege提權(quán)

在Oracle對(duì)索引修修補(bǔ)補(bǔ)多個(gè)版本之后,大部分漏洞早已堵上,現(xiàn)在剩余的是利用創(chuàng)建索引權(quán)限進(jìn)行提權(quán)的這類安全隱患。Oracle規(guī)定,只有表的所有者擁有對(duì)該表創(chuàng)建權(quán)限的權(quán)利。其他用戶想在別的用戶表上創(chuàng)建索引可以通過兩個(gè)途徑:1.簡單粗暴的系統(tǒng)權(quán)限- Create Any Index,如果一個(gè)用戶具有系統(tǒng)權(quán)限Create Any Index,則該用戶可以對(duì)任意用戶的表創(chuàng)建索引,即便對(duì)那張表沒有訪問權(quán)限);2.細(xì)膩特定的對(duì)象權(quán)限- Create Index,指定某個(gè)用戶對(duì)一張?zhí)囟ǖ谋碛袆?chuàng)建索引的權(quán)限。下面,我們將舉個(gè)例子為大家說明如果一個(gè)低權(quán)限用戶擁有SYS用戶某張表的權(quán)限會(huì)發(fā)生什么?

首先創(chuàng)建用戶hacker_user,只給予hacker_user最基本的權(quán)限。

 1.png

SYS用戶創(chuàng)建一張表test_table,這張表將是hacker_user用來提權(quán)的關(guān)鍵,向表中插入一條數(shù)據(jù),最后把表的查詢和創(chuàng)建索引的權(quán)限給予低權(quán)限用戶hacker_user。

2.png

切到hacker_user用戶,首先建立調(diào)用者權(quán)限函數(shù)GETDBA。GETDBA的核心語句是:EXECUTE IMMEDIATE 'GRANT DBA TO hacker_user'; 這句話是把hacker_user提權(quán)到DBA權(quán)限。接下來就需要DBA權(quán)限用戶調(diào)用這個(gè)函數(shù)了。由于用戶hacker_user有SYS表test_table的創(chuàng)建索引權(quán)限,于是利用這個(gè)權(quán)限構(gòu)造SYS用戶調(diào)用GETDBA,創(chuàng)建函數(shù)形索引可以利用SYS權(quán)限調(diào)用GETDBA函數(shù),具體如下圖:

3.png

注:12C最新版本索引創(chuàng)建會(huì)失敗,提示缺乏INHERIT PRIVILEGES。INHERIT PRIVILEGES默認(rèn)沒有賦予SYS。在SYS用戶下執(zhí)行GRANT INHERIT PRIVILEGES ON USER SYS TO PUBLIC ;可正常建立。具體內(nèi)容請(qǐng)查閱《ORACLE 12C 安全隱患系列(一)又喜又悲的新功能-INHERIT PRIVILEGES》一文。

創(chuàng)建成功后,執(zhí)行查詢語句,目的是調(diào)用一次索引,使其執(zhí)行,完成整個(gè)提權(quán)過程。最后查詢DBA用戶發(fā)現(xiàn)hacker_user已經(jīng)被成功提權(quán)。

4.png

這種提權(quán)的方式不僅可以針對(duì)SYS用戶,可以針對(duì)任意具有特定權(quán)限的用戶,目標(biāo)往往就是利用這些權(quán)限,進(jìn)行越權(quán)或提權(quán)操作。12C下對(duì)創(chuàng)建的所有用戶默認(rèn)都賦予INHERIT PRIVILEGES,不會(huì)出現(xiàn)類似SYS的情況。這里就不用其他權(quán)限用戶給大家做額外的演示了,過程都是類似的,針對(duì)不同權(quán)限的用戶修改GETDBA中的語句GRANT DBA TO hacker_user 即可。

Index Privilege檢查和配置

Oracle對(duì)索引提權(quán)采用的是治標(biāo)不治本的方式,因此就需要我們的數(shù)據(jù)庫用戶特別注意,要避免錯(cuò)誤的配置導(dǎo)致不法分子對(duì)數(shù)據(jù)庫實(shí)施利用索引的提權(quán)攻擊。想要檢查是否存在Index Privilege入侵的隱患,可以切到SYS用戶下進(jìn)行語句查詢:

SELECT OWNER||'.'||TABLE_NAME||':'||GRANTEE FROM DBA_TAB_PRIVS WHERE PRIVILEGE = 'INDEX' AND GRANTEE!=OWNER ORDER BY 1;

此語句可以批量檢查索引權(quán)限的擁有者和創(chuàng)建者是否相同,如果不同,需要進(jìn)一步調(diào)查來確定是否存在索引注入的可能性?;蛞愿邫?quán)限用戶為單位,檢查是否存在高權(quán)限用戶索引被賦予其他用戶的情況存在。

5.png

通過上述查詢,從中很容易發(fā)現(xiàn)用戶HACKER_USER具有test_table的索引權(quán)限,需要對(duì)其進(jìn)行清理。清理請(qǐng)使用語句:REVOKE INDEX ON sys.test_table FROM hacker_user;

請(qǐng)注意,很多應(yīng)用可以在數(shù)據(jù)庫上創(chuàng)建一些表并修改一些權(quán)限。例如Oracle eBusiness suite的某些版本,在安裝應(yīng)用的時(shí)候把SYS.DUAL的索引權(quán)限賦予了public,直接導(dǎo)致了任意用戶可以利用SYS.DUAL上的索引漏洞執(zhí)行任意SQL語句(CVE-2015-0393)。

結(jié)論

Index Privilege的安全問題從9i到12c還一直存在,好似一塊甩不掉的狗皮膏藥,屬于典型的便利和安全之間的矛盾。想從兩者之間獲得平衡,Oracle必須從用戶的角度考慮,最大化地提高性能和用戶體驗(yàn)。而涉及安全問題,目前就需要以圍魏救趙的方式進(jìn)行封堵,防止索引權(quán)限提權(quán)的出現(xiàn)。因?yàn)檫@種方法無法從根源上切掉隱患,這就需要Oracle用戶時(shí)刻注意不要把表的索引權(quán)限賦予比創(chuàng)建表權(quán)限低的用戶,要始終繃緊安全這根弦。


?
啊啊啊用力插入操我视频| 中文字幕人妻丝袜诱惑电影| 大鸡巴操小嫩逼免费全裸| 啊啊 好舒服 艹逼AV| 嗯啊,啊哈,不行了视频| 国产亚洲精品久久久久5区| 97日日碰人人模人人澡| 盗摄私密推油视频一二区| 加勒比无码专区中文字幕| 小受被内射操哭| 久久青草精品38国产 | 粉嫩无圣光小泬免费视频| 国产婬乱a一级毛片视频| 久草视频 这里只有精品| 国产一区二区三区欧美日本| 大陆日逼小视频| 精品一区二区三区三级视频| 日韩精品一区二区三区费| 棒棒插逼逼免费网站视频| 果冻国产精品一区二区三区| 小洁和公h文翁17| 好黄好爽好想喷水的视频| 操女生逼逼视频网站下载| 青青青在线视频免费播放| 黄涩污摸逼操射视频下载| 国产亚洲色婷婷久久精品| 10000拍拍18勿入免费看| 国内精品久久久久影视老司机| 日本熟妇色熟妇在线观看| 揉逼逼鸡巴操逼肉穴视频| 亚洲欧美国产五月天综合| 加勒比五月综合久久伊人| yw尤物av无码国产在线观看| 被解救的姜戈| 国产AV-肉欲| 亚洲日本久久久一区二区| 久久久久久亚洲精品不卡| r18视频一区二区三区| 69视频在线观看精品免费| 男人捅女人小穴91视频| 7799精品视频天天看|