隨著網絡信息化的發展,企業組織對網絡安全的關注,由物理安全、邊界安全和系統安全,已逐漸將注意力轉移到業務安全和數據安全,對于業務數據的安全防護成本已占到企業組織IT預算成本的一半以上。特別在新時代新形勢新業態的互聯網安全中,信息安全部門已逐步成為企業組織的一級部門,企業數據已經成為組織核心資產,對于數據的保護已寫入企業的基本戰略。
企業對數據資產的安全防護存在多項工作,數據備份安全、數據存儲安全、數據脫敏及加密……以可用性為主的業務安全觀點人群中,大多還沒有完全理解數據庫安全的重要性,而據前瞻性統計發現,越來越多的企業信息安全負責人開始將數據庫安全細分領域列入自己的備忘清單。業務連續性為企業組織的根本核心,而業務安全和數據安全是企業長久發展的安全保障,在以企業數據資產為核心競爭力的現下,數據庫作為企業組織“核心競爭力”--數據資產--的容器,承載了企業核心數據,成為業務運行和數據保護的基礎設施,數據庫的安全防御問題已躍至CTO/CIO的工作內容象限的榜首。
一、數據庫面臨哪些安全威脅
企業組織的數據庫體系,不僅僅是數據庫軟件平臺本身,不會流動的數據沒有意義,當我們考慮數據庫安全的時候,顯然我們需要合理評估數據庫的受攻擊面大小,數據庫訪問涉及的認證、授權和審計問題,由于開發人員疏忽帶來的軟件漏洞和運維人員的管理不善等。各種各樣的風險都可能產生并帶來可怕的后果,筆者實驗室通過收集各漏洞平臺及企業安全運營者的反饋數據庫安全信息,參考OWASP TOP 10制定了數據庫應用防御的十大數據庫風險威脅列表。
十大數據庫安全威脅(DB Vuln Top 10)
•權限濫用
•特權提升
•數據庫軟件漏洞
•SQL注入
•審計記錄缺失
•拒絕服務
•通信協議漏洞
•身份驗證不足
•敏感數據泄露
•安全配置不規范
二、數據庫安全風險是否會發生
答案就是墨菲定律,它闡述了一個事實:如果事情有變糟糕(發生)的可能,不管這種可能性有多小,它總會發生。
墨菲(Edward A. Murphy)是美國愛德華茲空軍基地的上尉工程師。1949年,他和他的上司斯塔普少校,在一次火箭減速超重試驗中,因儀器失靈發生了事故。墨菲發現,測量儀表被一個技術人員裝反了。由此,他得出的教訓是:如果做某項工作有多種方法,而其中有一種方法將導致事故,那么一定有人會按這種方法去做。在事后的一次記者招待會上,斯塔普將其稱為“墨菲法則”,并以極為簡潔的方式作了重新表述:凡事可能出岔子,就一定會出岔子。墨菲定律的適用范圍非常廣泛,它揭示了一種獨特的社會及自然現象。它的極端表述是:如果壞事有可能發生,不管這種可能性有多小,它總會發生,并造成最大可能的破壞。
此后在技術界也不脛而走,并不是我要將其強加在數據庫安全領域,因為它道出了一個法則,即安全風險必將由可能性變為突發性的事實。
三、以墨菲定律分析數據庫安全
從墨菲定律來觀察數據庫入侵防御,我們要持以積極的態度,既然數據庫安全風險一定會發生,那我們一定要順應必然性,積極應對,做好事件應急和處置。在數據庫安全防御方面來說,要科學合理規劃全面積極的應對方案,必須做到事前主動防御、事中及時阻斷、事后完整審計。
根據墨菲定律可總結對數據庫入侵防御的啟示:
1. 不能忽視數據庫風險小概率事件
雖然數據庫安全事件不斷發生,但仍有一定數量的安全負責人認為,企業安全防護已經從物理層、網絡層、計算主機層、應用層等進行了多重防御,網絡邊界嚴格準入控制,外部威脅情報和內部態勢感知系統能完美配合,業務數據早已經過層層保護,安全威脅不可能被利用發生數據庫安全事件。
由于小概率事件在一次實驗或活動中發生的可能性很小,因此,就給人一種錯誤的理解,即在一次活動中不會發生。與事實相反,正是由于這種錯覺,加大了事件發生的可能性,其結果是事故可能頻繁發生。雖然事件原因是復雜的,但這卻說明小概率事件也會常發生的客觀事實。
墨菲定律正是從強調小概率事件的重要性的角度啟示我們,雖然數據庫安全風險事件發生的概率很小,但在入侵防御體系活動中,仍可能發生且必將發生,因此不能忽視。
2. 在數據庫安全中積極應用墨菲定律
(1)強化數據庫入侵防御的安全認知
數據庫已經成為企業安全防護的核心,預防數據庫不安全狀態的意外性事件發生,認識數據庫安全威脅事件可能發生的必然性,必須要采取事前預防措施,從網絡層、應用層和數據庫層,涵蓋業務系統(中間件)和運維DBA,全面管控,提前謀劃。既然數據庫入侵事件無可避免,那一定要保證完整原始的數據庫訪問記錄,以供審計取證留存證據,做到有據可查。
(2)規范安全管理,正確認識數據庫安全控制
安全管理的目標是杜絕事故的發生,而事故是一種不經常發生的意外事件,這些意外事件發生的概率一般比較小,由于這些小概率事件在大多數情況下不發生,所以,往往管理疏忽恰恰是事故發生的主觀原因。墨菲定律告誡我們,數據庫及業務數據的安全控制不能疏忽。要想保證數據庫安全,必須從基礎做起,對數據庫的基本安全配置,要形成統一的安全基線,對數據庫的訪問行為要做到 “白名單化”,采取積極的預防方法和措施,消除意外的事件發生。
(3)轉變觀念,數據庫入侵防御變被動為主動
傳統安全管理是被動的安全管理,是在安全管理活動中采取安全措施或事故發生后,通過總結教訓,進行“亡羊補牢”式的管理。隨著IT網絡技術迅速發展,安全攻擊方式不斷變化,新的安全威脅不斷涌現,發生數據庫安全事件的誘因增多,而傳統的網絡型入侵防御系統模式已難于應付當前對數據庫安全防御的需求。為此,不僅要重視已有的安全威脅,還要主動地去識別新的風險,主動學習,模態分析,及時而準確的阻斷風險活動,變被動為主動,牢牢掌握數據庫入侵防御的主動權。
四、正確認識數據庫入侵防御系統
1. 數據庫入侵防御系統串聯與并聯之爭
數據庫入侵防御系統,可以通過串聯或旁路部署的方式,對業務系統與數據庫之間的訪問行為進行精確識別、精準阻斷。不僅如此,合理使用還能具有事前主動防御和事后審計追溯的能力。
不過,部分用戶認為旁路的阻斷行為效果不佳,而串聯進網絡實現實時阻斷,又擔心影響業務訪問時。
串聯模式部署在業務系統與數據庫中間,通過流量協議解碼對所有SQL語句進行語法解析,審核基于TCP/IP五元組(來往地址、端口與協議)、準入控制因素和數據庫操作行為的安全策略,結合自主動態建模學習的白名單規則,能夠準確識別惡意數據庫指令,及時阻斷會話或準確攔截惡意操作語句。串聯模式部署最大風險在于不能出現誤判,否則影響正常語句通過,此必需要系統的SQL語句解析能力足夠精確,并且能夠建立非常完善的行為模型,在發現危險語句時,能夠在不中斷會話的情況下,精準攔截風險語句,且不影響正常訪問請求。因此,若想數據庫入侵防御系統發揮最佳效果,必須串聯在數據庫的前端,可以物理串聯(透明橋接)或邏輯串聯(反向代理)。
旁路部署模式,目前常用方式是通過發送RESET指令進行強行會話重置,此部署方式在較低流量情況下效果最佳。如在業務系統大并發情況下,每秒鐘SQL交易量萬條以上,這種旁路識別阻斷有可能出現無法阻斷情況,且會出現延遲。有可能因為延遲,阻斷請求發送在SQL語句執行之后,那么反倒影響了正常業務請求。所以在高并發大流量場景下,如果要實現實時精準阻斷攔截效果,就要求數據庫入侵防御系統具有超高端的處理性能。
至于串聯部署還是旁路部署更為合適,需要匹配相應的業務系統場景。數據庫入侵防御系統最終奧義是它的防御效果,即對風險語句的精準阻斷能力,從墨菲定律對比分析,旁路部署有阻斷請求的可能性則必然會發生。而串聯存在影響業務訪問的擔憂,那它始終都會發生,而正視這種風險,讓我們對數據庫入侵防御系統的精準阻斷能力有更高要求,盡可能將這種風險降到最低。
2. 數據庫入侵防御系統串聯實時同步阻斷與異步阻斷之爭
相對數據庫入侵防御系統的串并聯之爭來講,串聯實現同步阻斷與異步阻斷更為細分了,市面上存在兩類串聯的數據庫入侵防御系統;
一類就是以IBM Guardium為代表的本地代理引擎在線監聽異步阻斷,當有危險語句通過代理到DBMS時,代理會將內容信息副本發至分析中心,由中心判斷是否違法或觸犯入侵防御規則,進而給代理程序發出阻斷指令,很顯然這種部署的好處是不局限與數據庫的網絡環境,ip可達即可,而壞處就更明顯了,那就是agent與Center通信期間,sql訪問是放行的,也就是如果在前面幾個包就出現了致命攻擊語句,那么這次攻擊就會被有效執行,即防御體系被有效繞過。
另一類就是以國內廠商漢領信息為代表的串聯實時同步阻斷,當有危險語句通過串聯數據庫入侵防御系統時,入侵防御系統若監測到風險語句,立馬阻斷;無風險的語句放行,這種模式及立馬分析立馬判斷。也很顯然,這種部署模式的好處是小概率事件或預謀已久的直接攻擊語句也會被實時阻斷;而壞處也非常明顯,那就是處理效率,如果數據庫入侵防御系統處理效率不行,那就會出現排隊等待的狀態,業務的連續性就造成了影響。關鍵就是要把握這個平衡點,至少要達到無感知,這個點的取舍就取決于各個數據庫安全廠商處理sql語句的算法能力了。
結束語:
墨菲定律并不復雜,將它應用到數據庫入侵防御領域,揭示了在數據庫安全中不能忽視的小概率風險事件,要正視墨菲定律轉為積極響應,應充分理解墨菲定律,抵制 “數據庫層層保護不存在風險”、“別人都是這樣做”、“數據庫入侵防御系統并聯不會誤阻斷” 等錯誤認識,牢記只要存在風險隱患,就有事件可能,事件遲早會發生,我們應當杜絕習慣性認知,積極主動應對數據庫安全風險。