999精品在线视频,手机成人午夜在线视频,久久不卡国产精品无码,中日无码在线观看,成人av手机在线观看,日韩精品亚洲一区中文字幕,亚洲av无码人妻,四虎国产在线观看 ?

基于Mycat的擬態數據庫中間件研究①

2019-10-18 06:41:22曹國棟喻衛東
計算機系統應用 2019年10期
關鍵詞:數據庫環境

曹國棟,倪 明,喻衛東,王 燦

(華東計算技術研究所,上海 201808)

現在社會,信息技術飛速發展,伴隨著數以億計的數據產生,數據庫作為整個系統中信息輸入和輸出的重要組件,對于其保護和處理,日益成為人們關注的焦點.據統計僅2018年數據泄露事件高達945次,導致的信息泄露數量達到45億條之多,信息量陡增133個百分點.

2018年5 月,在南京舉辦的“強網杯”擬態防御挑戰賽,在國內外22支頂尖戰隊的高強度攻擊下,擬態防御設備成功封堵了所有攻擊,即使開放管理員權限,在擬態防御設備中隨意注入后門,也沒有任何戰隊突破擬態防御,為擬態防御進行全方位、高強度的安全檢驗.擬態防御[1,2](Cyberspace Mimic Defense,CMD)是在功能等價的條件下提供可控的執行環境的跳變和遷移,使攻擊者對目標環境的難以掌握[3,4].在擬態環境中,海量數據存儲與訪問是系統設計與使用的瓶頸問題,利用開源的分布式存儲數據庫中間件Mycat,通過對數據進行水平切分,將不同的表映射到不同的數據庫中,通過集群管理,事務分布式處理[5],實現數據庫容量的擴充和數據庫結構的冗余,加之其對SQL語句有攔截和分析的作用,依據指紋特征對執行體指紋化SQL指令進行特征化處理,發現并剔除攻擊者注入的非法指令.Mycat對數據庫返回的數據進行表決,判斷異常數據庫,并對出現故障的數據庫進行還原保護,實現數據庫的擬態化.

1 擬態介紹

擬態防御(CMD)是中國工程院鄔江興院士在2013年的提出的關于網絡空間安全防御的創新性理論,網絡空間擬態防御是基于一種主動防御和被動防御相結合的網絡安全防御架構,克服了以往計算機系統漏洞,后門或者病毒的時間不確定性,危害未知性,資源破壞性,為將來的網絡安全防御提供普適創新的理論和方法指導[6,7].

1.1 擬態防御應用

在網絡基礎設施中,一些高校和科研院所已提出了擬態防御中異構性的構造方法,文獻[8]提出了利用軟硬件多樣性實現多源異構化處理方法;文獻[9,10]提出了利用軟件多樣化編譯對單一軟件進行異構化處理的方法,也隨之研制出了包括擬態Web服務器[11,12]、擬態防御路由器[13,14]擬態DNS服務器[15]等應用設備.

1.2 擬態防御原理

擬態防御的基本原理是:在不依賴未知攻擊特征信息的前提下,通過多個等價等功能的不同體系結構的執行體,利用動態異構冗余架構(DynamicHetero geneous Redundant Architecture,DHRA)[2],DHRA模型如圖1所示,實現運行環境、網絡、數據、軟件等結構的主動切換或快速轉移,代表性技術如表1,使攻擊者難以判斷目標對象的運行環境和機制,提高攻擊者在時間維度和空間維度的攻擊成本和難度[8].

圖1 DHRA模型

表1 動態性技術分類

在高可靠的非相似余度“容錯”模式下,執行體通過可重組,可重構,可重建和可重定義等動態構造方法,實現異構性,動態性和冗余判斷.動態異構冗余模型(DHRA)由輸入,輸入代理,執行體集(A1,A2,A3,… ,An),多模/策略表決器,輸出組成.根據系統輸入,異構元素池中選擇異構元素,組成m個異構構件,通過系統的策略調度,形成n個異構執行體,經過對執行體產生的結果多模判決,決定系統輸出[2].

2 擬態數據庫中間件

數據庫中間應用于Web服務器和數據服務器之間,對兩者之間交互的數據庫指令進行攔截.擬態數據庫中間件要實現數據庫的切分和擴容,集群管理,事務分布式處理,與此同時,要實現對SQL語言進行特征處理,識別和執行SQL指紋語句,剔除攻擊者注入的非法指令,并對出現故障的數據庫進行還原保護.

基于此現狀,本研究提出利用Mycat在擬態環境中作為數據庫的中間件,借助于動態冗余異構模型設計,利用擬態安全的環境為依托,簡化擬態環境中數據的切分,存取和同步,調用對應SQL指紋指令對前端指紋SQL執行進行去指紋化.

2.1 中間件簡介

Mycat是用于解決傳統關系型數據庫大數據存儲不足而設計的開源分布式數據存儲中間件[16],使用NIO重構的網絡模塊,優化緩沖內核,增強聚合等基本特性,兼容Oralce、PostgreSQL等多種數據庫,實現跨語言,跨平臺,跨數據庫的通用中間件,并提供和原生數據庫一致的命令訪問的支持,可實現集群管理,自動擴容,智能優化的功能[5],Mycat架構如圖2.Mycat作為中間件,其功能更好的對數據庫實現擬態防御中動態異構冗余模型(DHRA)構造,使數據的訪問和處理更安全,高效.

2.2 中間件在擬態中集群管理

由于在擬態環境中需要多個執行體,為保證執行體執行的數據統一和多模裁決,所有執行體共用一個數據庫集群,這就要求數據庫能夠同時容納并處理大量數據,并且對指紋SQL語言有切分判決能力.Mycat作為數據庫的中間件能在擬態環境中搭建以Mysql為底層節點的分布式數據庫系統[17],系統通過Mysql的通信協議[18]與用戶以及底層數據庫通信,實現負載均衡、指紋SQL語句重寫、讀寫分離、多臺數據庫并行處理以及結果集合并等功能[5],又因其是開源程序,Mycat對整個集群能透明地訪問和管理,集群管理如圖3,這在擬態環境中,集群管理為數據的安全訪問和處理提供了更可靠高效的保障.

圖2 Mycat架構

圖3 Mycat集群管理

2.2.1 數據庫中間件的切分

在擬態環境中,多個異構執行體訪問同一數據庫,這就對數據庫存儲和運算能力有一定的要求.作為執行體和數據庫的中間件,Mycat對執行體發送的SQL語句進行攔截分析,通過邏輯表中的取模分片算法、分片枚舉、Hash分片等特定算法,將數據的存儲和讀取,由一個數據庫分散到多個數據庫中,減少了單個數據庫存儲和運算壓力,實現數據分布式存儲[5],Mycat分布式數據存儲構架如圖4.

圖4 Mycat分布式數據存儲構架

2.2.2 數據庫中間件高可用性

在擬態環境中,多個執行體對數據庫進行頻繁的數據存儲和讀取,Mycat作為執行體和數據庫連接點,其本身的高可用性涉及所連接數據庫乃至整個擬態系統的高可用性.數據庫經過切分后,在各個節點的數據庫獨立運行前提下,Mycat使用主從復制高的可用配置,將dataHost中的writeNode配置為主節點,readNode配置為從節點,在邏輯表中,可配置多個readNode和writeNode,實現多寫多讀.在Mycat正常運行時,其內部對dataHost中的全部readHost和WriteHost節點定期發起心跳檢測[5],將全部的DML SQL發送給第一個writeNode,當第一個writeNode所在的節點出現宕機,默認3次心跳檢測失敗后,Mycat將自動切換到下一個可用的writeNode,并執行DML SQL語句.由于Mycat是無狀態中間件,在擬態環境下,用HAProxy等負載均衡軟件部署為集群模式[1],Mycat高可用架構如圖5.

圖5 Mycat高可用架構

2.2.3 數據庫中間件分布式處理

事務處理由一組操作構成,其具有原子性(atomicity)、隔離性(isolation)、持久性(durability)和一致性(consistency)4 個特性[5],在擬態環境中,我們希望通過中間件的分布式處理[17](Distributed Transaction Processing,DTP)將所有SQL語句正確執行.分布式事務處理(DTP)是在一個或多個數據庫完成SQL語句執行過程的集合,其關鍵是知道事務在數據庫中任何地方所做的動作,通過事務準備,提交,反饋,產生統一的結果,如果某個步驟發生錯誤,就需要回滾到上一步已經完成的操作.X/Open定義了分布式事務處理模型,其由應用程序 (ApplicationProgram,AP)、資源管理器(ResourceManagement,RM)、通信資源管理器 (Communication Resource Management,CRM)、事務管理器(Transaction Management,TM)四部分組成[5].AP可以和TM以及RM通信,TM和RM互相之間可以通信,TM和RM通過XA接口進行雙向通信,TM通知RM提交事務或者回滾到上一事務正確執行完的點,RM把提交結果通知給TM.

在擬態環境中,在準備階段,Mycat中事務管理器通知節點數據庫準備分支事務,節點數據庫準備結果;在提交階段,事務管理器通知節點數據庫提交分支事務,節點數據庫將結果提交給Mycat,正常提交執行過程如圖6.當在第一階段出現某一個數據讀取和改寫失敗,第二階段就回滾到第一階段已經預提交成功的數據,提交失敗執行過程如圖7.

圖6 提交成功

圖7 提交失敗

2.2.4 數據庫中間件對指紋SQL處理

現在網絡數據竊取成功,主要是攻擊者了解并熟悉被攻擊系統的語言,進而注入代碼攻擊成功,在擬態環境中,SQL腳本采用基于指紋化的數據庫指令異構[2],通過對正常的執行語句加入指紋,讓攻擊者不了解指紋化的執行語言,使其注入的指令是無法正確執行.當指紋SQL語句通過Mycat時,數據庫首先判斷請求的地址,若請求來自網站端,將請求指令加到執行體對性的隊列中,然后進行指紋SQL語言過濾,指紋SQL處理結構如圖8,利用多模表決機制,將SQL語句進行一致性表決,表決一致,則執行正常SQL語句,表決不一致,則進行異常處理.

圖8 指紋SQL處理結構圖

數據庫返回的結果保存到緩沖區中,相同的數據會被映射到Hash表中的相同位置,所有結果返回完整后,對數據庫返回內容的完整性進行Hash比較,比較通過后,數據返回給執行體,若比較不一致,把出錯信息發送給擬態系統的反饋調度服務器進行決策調度.

Hash表中數據信息進行比較偽代碼如下所示:數據庫的返回結果Ri包括多個數據包,形式為:Ri={P1,P2,···,Pn}

Foriin 1..n:

Pi= get_resp()

Put_to_push()//將數據庫返回的結果放入Hash表中

If get(Pi)>n/2+1//相同結果超過一半時

Send(Pi)//返回結果

Remove(Pi)//刪除已經對比完成的數據

2.2.5 數據庫多模表決機制

在擬態環境中,用動態冗余架構特性改變傳統防御環境中的相似性,確定性和靜態性;利用矢量空間多模裁決機制,如圖9,形成非協同條件下,多元動態目標協同一致攻擊難度以實現“面防御”功能.在數據庫環境中,目標對象外部SQL服務請求依據策略分發給各個數據庫,數據庫的輸出矢量經過Hash表比較進行裁決輸出.

多模表決器按照規則對n個功能相同但相互獨立的數據庫的輸出進行表決操作,保證系統正確輸出,本文采用n取k表決模型,當k個數據庫正常讀取時,便認為數據庫正常運行,當k個及以上數據庫返回的數據異常時,才會輸出錯誤非正常數據,在異構冗余的擬態環境中,不同的數據庫運行環境不同,攻擊注入方式不同,無論從時間和技術上,對攻擊者都是極大的消耗,由此數據庫的安全性和可靠性得以提高.

圖9 擬態表決器模型

3 實驗與分析

為了驗證Mycat在擬態環境中能夠高效保障數據的讀取和安全性,我們在開源的企業辦公系統然之協同中,使用三模異構冗余模型進行實驗測試,然之協同的優勢如下:

(1)功能齊全,能滿足日常的辦公需求,使用范圍廣,人數無限制.

(2)私有化部署,安全性高.

(3)開源產品,能修改代碼滿足個性化需求.

硬件配置如表2.

表2

3.1 環境配置

在擬態環境中,3個異構執行體運行的系統分別為windows7(IP:192.168.126.133),Ubuntu (IP:192.168.126.134)和centos (IP:192.168.126.135),Mycat安裝在IP 地址為 192.168.126.141,并建立“ranzhi”數據庫.

(1)Schema.xml配置

Schema.xml作為Mycat最重要的配置文件之一,管理著邏輯庫,分片規則,節點主機等信息,關鍵代碼如下:

在各自的系統中,安裝然之協同,其所連立的數據庫設置為Mycat所在的物理地址和Mycat的端口,如圖10.

圖10 執行體Mycat連接

3.2 實驗結果分析

(1)指紋SQL識別

通過Mycat,指紋SQL能夠在數據庫中正常執行,如圖11,無指紋的SQL語言,不能運行,如圖12.

圖11 指紋SQL執行結果

圖12 無指紋SQL執行結果

(2)數據庫注入測試

在一般的數據庫中,進行數據庫注入攻擊測試,數據庫返回數據,如圖13,圖14所示.

當使用本文中擬態環境中的數據庫,進行相同的數據庫注入攻擊,未能返回數據,攻擊失敗,如圖15所示.

圖13 數據庫注入過程

圖14 數據庫注入結果

圖15 數據庫注入失敗

數據庫安全測試如表3所示.

經上述實驗,在擬態環境中,數據庫成功防御數據庫注入攻擊,保障了數據庫安全.

表3 數據庫安全測試結果

4 結論與展望

通過在擬態環境中使用Mycat作為數據庫訪問的中間件,實現了數據庫的集群管理,高可用性,以及對指紋SQL語言的處理,極大的提高擬態防御中對數據安全的保障和數據存儲,讀取的高效性.在未來的信息時代,網絡空間的數據存取和保護越來越得到重視,隨著社會科技的發展,會有更多的數據庫中間件出現,其功能和架構模式也會不斷的更新和成熟,數據庫中間件在擬態環境中會發揮更大的作用.

猜你喜歡
數據庫環境
長期鍛煉創造體內抑癌環境
一種用于自主學習的虛擬仿真環境
孕期遠離容易致畸的環境
不能改變環境,那就改變心境
環境
孕期遠離容易致畸的環境
數據庫
財經(2017年15期)2017-07-03 22:40:49
數據庫
財經(2017年2期)2017-03-10 14:35:35
數據庫
財經(2016年15期)2016-06-03 07:38:02
數據庫
財經(2016年3期)2016-03-07 07:44:46
主站蜘蛛池模板: 最新无码专区超级碰碰碰| 激情六月丁香婷婷四房播| 免费高清毛片| 亚洲视屏在线观看| 精品一区二区三区自慰喷水| 免费国产不卡午夜福在线观看| 草草影院国产第一页| 永久在线精品免费视频观看| 色综合久久综合网| 91在线视频福利| 香蕉国产精品视频| 19国产精品麻豆免费观看| 亚洲精品成人片在线观看| 亚洲中文无码av永久伊人| 97综合久久| 97超爽成人免费视频在线播放| 不卡无码h在线观看| 国产性猛交XXXX免费看| 亚洲色欲色欲www在线观看| 日本手机在线视频| www.国产福利| 国产亚洲欧美在线中文bt天堂| 亚洲精品图区| 国产资源免费观看| 啪啪啪亚洲无码| 亚洲日韩精品欧美中文字幕| 欧洲成人免费视频| 国产99在线观看| 欧美成人h精品网站| 中文字幕首页系列人妻| 免费国产黄线在线观看| 尤物午夜福利视频| 亚洲欧洲自拍拍偷午夜色无码| 日本午夜视频在线观看| 国产一区二区三区免费观看| 午夜在线不卡| 91av成人日本不卡三区| 国产精品妖精视频| 成人在线天堂| 亚洲国产成人久久精品软件| 天天色天天综合网| 亚洲日本中文字幕天堂网| 无码高潮喷水在线观看| 毛片免费在线视频| 精品撒尿视频一区二区三区| 99久久99这里只有免费的精品| 欧美日本视频在线观看| 又粗又硬又大又爽免费视频播放| 欧美一级视频免费| 欧美精品H在线播放| 婷婷色中文| 亚洲欧美另类久久久精品播放的| 毛片最新网址| 亚洲91精品视频| 国产波多野结衣中文在线播放| 国产在线麻豆波多野结衣| 69av免费视频| 欧洲av毛片| 在线国产你懂的| 亚洲成人精品在线| 中文字幕有乳无码| 欧美人在线一区二区三区| 久久青草免费91线频观看不卡| 在线日本国产成人免费的| 亚洲无码高清一区二区| 好久久免费视频高清| 久久精品波多野结衣| 国产成人精品一区二区不卡| 99在线小视频| 久久伊伊香蕉综合精品| 欧美成人二区| 中文一区二区视频| 99久久精品国产综合婷婷| 亚洲综合久久成人AV| 中文一区二区视频| 国产主播福利在线观看| 中文字幕在线视频免费| 成人精品亚洲| 色婷婷视频在线| 色屁屁一区二区三区视频国产| 成人国产精品网站在线看| 国产精品丝袜视频|