保護敏感數據對付惡意內部人員的九大妙招

導讀:有意或無意的內部人員威脅一直都大量存在。本文將探討保護敏感數據免受訪問數據的人員的損害的多種方法。雖然內部威脅難以應對,但只要利用適當的工具,也並非不可能。

有意或無意的內部人員威脅一直都大量存在。在經濟困難時期,其惡尤甚。由於數字信息的激增,將信用卡數據、個人身份信息和知識產權變成現金、財產的手段,以及由此造成的風險都與日俱增。我們不再對受到信任的內部人員竊取敏感數據的行爲感到驚奇。企業日益發現,最大的威脅來自內部。

  如今,許多企業同意最有價值的IT資產存在於應用程序和數據庫中。多數企業還承認應用程序和數據庫的安全水平最低,這就使其成爲系統管理員、數據庫管理員、顧問、合夥人、客戶的惡意活動的首要目標。

  本文將探討保護敏感數據免受訪問數據的人員的損害的多種方法。雖然內部威脅難以應對,但只要利用適當的工具,也並非不可能。

  一、知道敏感數據存在於哪些數據庫

  看一下最近的安全類文章,你會發現解決特定安全問題的居多。原因在於全面安全,即平等地保護一切的觀念過於昂貴,並且不易衡量。雖然這個觀念很容易理解,但確認關鍵的資產卻絕非易事。對於數據庫及其包含的敏感數據而言,尤其如此。此類數據可能是信用卡號、個人身份信息、僱員、醫療記錄、研究報告、業務計劃、絕密文件等。實際上,每家企業都有需要保護的敏感信息,但往往並不知道信息在哪裏。

  首先需要確認數據庫自身。但此任務未必如像乍看起來那麼簡單。面向服務架構(SOA)可能很龐大且複雜。例如,企業可能對包含敏感數據的數據庫進行了某種測試,此外,還有可能存在一些未經驗證的數據庫。

  一旦確認了數據庫,對敏感數據進行分類並確認其包含的對象就顯得至關重要了。必須對分類進行驗證,其目的是爲了減少一些似是而非的情況。驗證過程應當是自動化的,並支持多次執行,而且還要隨着時間的推移而支持可擴展性,並保證準確性。

  二、勿輕信本機的數據庫工具

  如果是擁有特權的內部人員作案,如數據庫管理員和系統管理員,再相信受到其***的系統的安全信息將毫無意義。如果惡意的內部人員可以訪問數據庫並可能操縱本地的審計日誌,這些日誌就毫無用處。這就像讓犯罪份子成爲現場調查員一樣。因而必須實施責任分離:安全和操作必須分離。不能相信那些存在於受***的數據庫系統中的審計信息或由這種數據庫創建的審計信息。此外,本地的數據庫審計日誌還會帶來一些技術問題。例如:

·         在很多情況下,並沒有啓用本地數據庫審計。

·         本地審計的啓用靠手工完成,容易出現錯誤;數據庫管理員可能啓用了並不充分的審計。

·         本地審計會對被審計的服務器帶來高昂的費用。啓用本地審計有可能耗盡數據庫主機資源,影響系統的效率。

·         不同的數據庫提供了不同的審計功能。在異構環境中對每個數據庫版本和類型啓用審計會耗費大量的資源,因爲其輸出是不同的,有可能不完整,而且對於並不精通每種數據庫的人員來說,這種輸出結果也難以解析。

·         許多數據庫並不能捕獲被變造的SQL查詢。

  在捕獲數據庫的審計日誌時,應當獨立於數據庫工具:強化責任分離、增強數據庫的性能、確立用戶責任等。

  三、監視善意的、惡意的和有特權的用戶

  需要訪問敏感數據的用戶也是能夠給這種數據帶來威脅的用戶。設計DMZ、業務流程外包以及SOA等,目的都是爲了改善訪問,提高運營效率,促進信息共享等。但事物總有其兩面性。

  監視善意人員:懷有惡意的人有可能僞裝成善人。監視內部和外部的好人,特別是那些接觸敏感數據的人。

  監視惡意人員:這是因爲來自不可信的外部人員的多種風險仍然存在,所以你無法在沒有傳統網絡安全控制的情況下就進行操作。但利用這些機制來保護敏感數據並非根本解決之道。網絡安全的根本設計目的並不是爲了解決數據安全。

  監視特權人員:這是因爲這些人掌握着關係到企業存亡的大權。在許多情況下,他們不但負責運營,在很多情況下,還負責安全。頗具諷刺意味的是,特權人員還被要求保障系統的安全。

  不管對可信用戶、不可信用戶還是特權用戶,對敏感數據的保護需要時時刻刻地進行。要假設每個人都可以訪問數據,假設每個人都想竊取數據。

  由於Web服務器是外部***者用以竊取數據的典型***媒介,傳統的網絡安全控制對於減輕數據***的效率是很低的,需要實施應用程序防火牆來檢測和防止基於Web的***,如SQL注入***、跨站腳本***、cookie投毒、會話劫持等。確保數據安全控制能夠監視所有的特權用戶活動,以及應用程序的用戶通信。所實施的控制必須包括事件阻止、警告、報告、審計等。最後,確保這些安全控制獨立於操作人員,從而能夠高效地監視特權用戶對數據的使用。

四、對數據庫的使用進行分析

  許多人員認爲惡意內部用戶的焦點問題是,用戶在哪裏與敏感數據交互。傳統的網絡安全控制,如防火牆(使用簽名匹配方法),專注於檢測和阻止特定的事件,在應對人員和數據時就顯得太簡單了。如果一家企業能夠決定正常的活動是怎樣的,就可以根據用戶活動的源頭(源用戶、源應用程序、源位置)、目的(目標數據庫和數據庫對象)、用戶活動的環境(時間、經常性的用法、成功及失敗的活動等)來對使用情況進行分類。可以檢測缺乏簽名的數據使用的異常情況。一個證明分析的價值的例子是業務邏輯***。業務邏輯***可以使web應用程序的功能用來對付業務,它破壞的是業務邏輯而不是應用程序。

  分析應用程序和數據庫的交互也很重要。這樣做可以更好地防禦SQL注入***,並確認由於應用程序的設計缺陷而造成的異常數據庫活動。以這種方式分析應用程序還可以揭示:在一個不合適的環境中使用後將會顯得不正常的各種合法應用:

  1) 在單個設備與多個設備通信時,有可能被看成是惡意軟件的傳播和漫延,而實際上有可能是一臺備份服務器或一臺代理服務器。
  2) 在非運營時間進行的大量數據傳輸有可能被認爲是信息竊取,而實際上有可能是合法的數據庫備份。
  3) 還可以發現潛在的惡意模式,例如:

·         過度的文件下載

·         在可疑的時間發現了用戶活動

·         非授權用戶企圖訪問保密數據,例如,開發人員試圖訪問人力資源部門的系統

·         可疑的無效活動(如大量的非法登錄企圖)

  分析並不像一次性的掃描。因爲應用程序和數據庫屬於連續變化的動態環境,因而對應用程序及數據庫的使用情況進行不斷分析和更新是很重要的,這應當成爲一個成熟的數據安全策略的不可缺少的一部分。

  五、協調Web應用程序和數據庫之間的活動

  監視用戶的全部任務就是跟蹤用戶並讓其爲自己的活動負責。確認網絡活動的責任人可能很困難。在使用連接池的多數現代應用程序中,並沒有在本地記錄Web應用程序和數據庫之間的用戶會話。連接池通過再次使用已打開的數據庫連接而不是爲每個用戶打開數據庫連接,從而改善了應用程序的性能。雖然應用程序的性能得到了提高,但連接池也掩蓋了每個請求活動的用戶身份,這意味着確實沒有方法可以將數據庫活動與特定用戶關聯起來。

  企業可以重新編寫客戶應用程序和數據庫代碼來支持此功能。不過,這是一個昂貴的建議,需要爲企業中應用程序和數據庫的每個版本都這樣做,而且增加的代碼可能會帶來漏洞。

  Web應用程序和數據庫活動的關係協調必須在這兩者之外實現,而且要獨立於廠商、版本等。以這種方式跟蹤用戶會話可以更好地控制會話記錄,而不會額外地耗用Web和數據庫應用程序的資源,也不會使寶貴的開發資源偏離其它項目。可以在Web應用程序、數據庫之間有效地協調用戶會話,不但可以捕獲查詢,還可以捕獲作爲結果而返回的數據。

  六、以人類的直覺來強化基於機器的分析

  預防性的安全控制的可升級性總是有限的,如果沒有人的分析,純粹從技術中獲得的價值總是有限的。實時的警告一般源自純技術分析得到的結論。報告可以從兩方面來強化這個過程。首先,報告可以更長遠地檢測趨勢,如幾個月都在濫用資源的方式。其次,報告利用人類的直覺來強化基於機器的分析。

  對內部人員而言,擁有一套使人能夠根據結果做出結論的簡易而有效的方法是至關重要的。這是因爲人可以考慮更多的因素,而不僅僅通過應用程序和數據庫的分析所捕獲的數據。例如,某用戶表現不佳,並且有傳言說他要離開公司到某競爭對手那裏去。因爲IT安全團隊不可能擁有公司每個人的全面情況,因而,這份報告能使公司的各種人員都能使用是很重要的,如非技術經理、人力資源部門、法律部門等。這種由現實分析與應用程序和數據庫的詳細證據的組合,可以生成比單純一個方面更多的精確結果。

七、通過日誌分析對犯罪情況進行取證調查

  警告、報告、個別事件分析在發現惡意內部人員時都扮演着重要的角色。但高效的內部人員調查要求更多的靈活性。詳細檢查可能缺乏有力審計線索的多個異構數據庫,藉以調查內部人員是不足取的。企業利用PerlgrepSEDawk等工具來搜索審計數據,查找特定的已知惡意條目也是不可取的。這種方法是不可升級的,而且對於查找未知的威脅也沒有什麼用處。

  在涉及審計日誌時,一張圖片比一萬個日誌可能更有說服力。與審計數據的可視化交互會形成一種因果關係,如果不使用可視化工具,就很難注意到這種關係。例如,分析人員可以根據用戶、登錄、被監視的資產(如服務器等)來搜索信息。通過使用這些搜索,分析人員就可以訪問底層的事件細節。這種信息有可能會促使分析人員查找新的以前沒有注意的趨勢。在多數內部人員調查中,一旦確認了惡意活動的跡象,就可以問三個問題:內部人員還做了什麼?這種狀況持續了多長時間?誰還牽涉到類似的活動中了?

  在調查中,必須考慮下面的事件順序:

·         檢測到SQL錯誤——但並非所有的SQL錯誤都是在生產環境中發現的。

·         分析人員可以輕易地利用可視化工具,過濾並且不選擇非生產環境中的資源。

·         下一步,從與SQL錯誤相關的用戶方面進一步調整其分析,進一步更新數據。

·         某特定用戶的錯誤比其它用戶更多。

·         確認該用戶爲一位開發人員,而且他所訪問的系統屬於生產環境中的。

·         進一步挖掘此數據,發現該用戶試圖訪問的信息位於信用卡和工資表中。

·         其它細節還有可能顯示出該用戶訪問這些數據的成功和失敗的企圖。

·         趨勢報告可顯示出,此事件發生了多長時間,還有誰牽涉到類似的活動中了。

  八、保護數據庫中的敏感數據

  數據庫安全是保護敏感數據免受內部人員危害的最關鍵的領域之一,因爲數據庫中存儲着惡意內部人員需要的信息。這些數據庫一般十分複雜且動態變化,難以鎖定。更糟的是,數據庫管理員一般重視正常的運行時間和可用性,而安全則是以後纔會想到的事情。以往,這造成了IT安全和數據庫管理員之間的分離。有兩種解決方案可以很好地適應數據庫管理員和IT安全的需要,即數據庫防火牆和數據庫活動監視解決方案。

  數據庫防火牆:正如傳統的網絡防火牆解決以網絡爲中心的***一樣,數據庫防火牆可以阻止以***形式或數據竊取形式直接針對數據庫的惡意活動。數據庫防火牆可以提供的一些關鍵功能有:

·         阻止數據庫***和欺詐活動

·         提供敏感數據的實時、自動化的保護

·         洞察用戶訪問數據的方式

·         利用靈活的視圖和審計分析進一步調查被審計的事件

·         通過有效的補丁來透明地保護數據庫

  藉助於數據庫防火牆,虛擬補丁可用於解決通過漏洞評估解決方案發現的漏洞,而不必重寫代碼、應用補丁、經歷冗長而昂貴的漏洞修補過程。數據庫防火牆可以阻止這種企圖:利用已經打上了虛擬補丁的漏洞進行***,或對此***發出警告,從而使企業更安全地運營,直至其有時間和資源直接解決漏洞。

  數據活動監視:數據庫防火牆在數據庫層提供了類似於傳統網絡防火牆的功能,而數據庫活動監視能夠捕獲獨立於數據庫和數據庫管理的用戶和數據庫之間的雙向通信,從而提供了強健的審計。數據庫活動監視有助於解決五個關鍵的數據庫審計問題:

  1、審計過程獨立於被審計的數據庫系統嗎?不要依賴於數據庫的審計信息。
  2、審計線索能夠確立用戶責任嗎?特定的事件需要與特定的用戶責任相關聯。
  3、審計線索包括適當的細節嗎?審計系統必須收集足夠有用的細節。如果有問題的審計系統是數據庫的本地方案,答案一般是否定的。
  4、審計線索能夠確定與標準的正常活動的本質差異嗎?決定正常活動和異常活動之間的差別是至關重要的。
  5、審計線索的範圍足夠嗎?

  必須監視整個數據庫系統,其範圍包括:數據庫軟件、操作系統軟件、數據庫協議。注意,數據庫協議並不遵循某個開放標準而且經常變化,因而常常是***者的切入點。

  數據庫防火牆和數據庫活動監視一起提供數據庫的保護、監視、警告,並且提供審計質量數據,能夠調查並對針對數據庫的惡意活動進行報告。

  九、保護用戶用於訪問數據庫的Web應用程序

  雖然敏感數據存在於數據庫中,但多數用戶是通過一個Web應用程序來訪問數據庫的。因而,除了要保護數據庫層,還需要保護Web應用程序層。保護在線應用程序和數據使其免受複雜的應用程序級***需要雙管齊下的方法,既要考慮開發又要考慮生產。

  開發:在保護Web應用程序時,在應用程序進入生產前可以採取幾個步驟來改善安全。嚮應用程序的開發人員培訓安全編碼,並利用安全開發生命週期(SDLC)來改善安全代碼的開發。還有幾種可以測試並分析代碼的模式,如靜態代碼測試、動態代碼測試、架構風險分析、測試濫用情況、黑盒測試、白盒測試等。

  許多企業在開發階段還使用Web應用程序防火牆。在此情況下,Web應用程序防火牆並不提供防火牆功能,但監視除外。更準確地說,Web應用程序防火牆向開發人員提供了一種檢查其應用程序操作的更好視圖。在beta測試階段,對於動態客戶和客戶數據而言,這更爲有效。Web應用程序防火牆可以提供:

·         透明地監視Web應用程序和通信

·         監視客戶如何使用Web應用程序及應用程序的工作方式

·         監視所期望的和真實的用戶行爲

·         關於Web應用程序參數的細節,如長度和類型

·         Web連接的性能結果

·         監視數據庫活動(如果結合使用數據庫活動監視和數據庫防火牆)

  生產:所有的安全編碼、測試及最佳方法已經鎖定。由於威脅不斷演變,而且代碼絕不會完美或100%的安全,因而需要在生產階段強化Web應用程序的安全。Web應用程序防火牆能夠提供多種好處,例如阻止惡意活動、監視、警告、報告等。另一個關鍵方面是解決Web應用程序的漏洞。Web應用程序防火牆能夠執行虛擬補丁,但這種工作是在Web應用程序層完成的。

  Web應用程序防火牆提供的其它功能包括:

·         在多個應用程序和版本之間的操作

·         警告或阻止惡意事件

·         Web應用程序的***檢測

·         管理應用程序風險的深度防禦

  Web應用程序防火牆在開發和生產階段可以提供增強安全性的高效機制。通過在Web應用程序層提供事件防禦和檢測,可以減輕源自內部或外部的對敏感數據的***,而敏感數據就會更安全。

  總結

  到目前爲止,業界已經找到了大量的方法和技術來減輕惡意的內部人員威脅。然而,還需要一種統一的技術。數據安全需要一種透明性。通過將應用程序和數據庫信息關聯起來,對企業全面的數據安全形勢形成一種整體的觀點,同時又強化防止、檢測、審計內部人員活動,這是可能的。

  當今的***伎倆利用了數據庫和應用程序之間的諸多弱點。從偵察階段到實際的***階段,非常關鍵的一點是,將數據庫和應用程序之間的信息與真正理解用戶和數據的交互方式關聯起來,並且將合法的活動與潛在的或已知的惡意活動隔離開來。

  內部人員的威脅分析,可以從以數據爲中心的多個信息源中獲得好處,這是因爲單個源提供的信息可能並不完整。發現和分類應當用於確認關鍵的資產及其包含的信息。利用Web應用程序防火牆來保護應用程序,利用數據庫防火牆來保護數據庫,並應當利用數據庫活動監視來提供數據庫的審計。可以將這些方案一起用於減輕內部人員的威脅,即使對於極複雜的運行着關鍵任務的分佈式環境,也不應當影響Web應用程序和數據庫操作的性能。

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章