安全日誌分析系統架構

2022-01-30 運維幫

轉自訂閱號:新浪安全中心

0×00 概要

基於Openresty+的WEB安全防護系統來講, 對於類似的這種系統來說,對其日誌進行的分析是一種很常見的應用場景,對應安全防護系統來說,產生威脅日誌給安全人員看幾乎是必須的。而平時創建日誌分析系統很多都是同時匯聚很多系統的日誌的, WAF,IDS,網關,很多系統產生日誌都可以用同一系統,匯聚日誌,分析日誌。我們先回顧一下基於Openresty+的WEB防護系統的那張圖。

這張圖上圖的非常抽象概況,只是指明了WAF管理結點直接推送數據給日誌中心,而數據的傳輸靠的就是syslog傳輸的,然後, 通過日誌分析系統對WAF威脅檢查的誤報率和漏報率進行統計,但這個圖上的這個日誌系統圖是高度概括的,只是一個方框,而這篇的目地是把日誌分析系統實現具體化一些,將一個框圖內部通過更細的視圖展示出來。

0×10 系統構成圖

這張圖上的日誌系統比上一張圖更具體的說明了其內部構成,並舉了兩個例子,一個是郵件服務的例子,另一個是移動應用網關的系統例子,實際生產中,我們收集了更多系統的日誌,顯然都畫到一張圖上也畫不下。典型的應用系統都會涉及到負載均衡,集群,應用伺服器,而且是多層級的。我們只用少數的例子說明一上問題。

0×11 郵件網關

上圖的左邊的系統,是一個典型的郵件系統的移動端的網關服務,也是一個多層級的基於負載均衡的系統, 當用戶想通過域名訪問郵件網關時,DNS伺服器會根據有戶的線路,把用戶的請求轉給對應線路的郵件網關的負載均衡的IP,在這之前也可在負載均衡前加一個威脅過濾的服務,如果共享一臺的話過濾服務的,這臺伺服器需要有智能選路的功能。當主請求到達負載均衡服務時,負載均衡把請求轉給後端的郵件網關,郵件網關再做完相關的檢查後,會把請求現轉給exchange郵件服務的負載均衡,由負載均衡決定由具體的那臺伺服器進行處理,如果在網關階段主請求就有問題,就會拒絕請求。

在這個過程中,有多少結點產生日誌,就可以匯聚多少的日誌數據。

郵件網關的日誌(Openresty)。

郵件伺服器的的日誌。(Exchange)

WAF系統日誌。


0×12 移動網關

上圖右邊的系統是一個移動網關,移動服務網關和郵件網關功能類似,讓外網用戶的請求通過網關轉給內網伺服器。圖上畫是基於單層負載均衡,當代入到內部系統時,內網的被請求系統是不是基於負載均衡就不考慮了。這個應用系統,日誌中心只是收集網關上的數據,網關代入到內網服務,並不向日誌中心發數據,應用本身就是代理,可以聚合日誌的地方主要是:

辦公移動網關的日誌(Openresty)。

WAF系統。

0×13 日誌分析系統

日誌分析的內部實現要比圖上畫的複雜,圖只是將日誌中心的基本服務部署畫出來,有些mongo資料庫和kafka隊列沒有體現在圖上。日誌中心分析系統的核心存儲中心就是ES集群,還有管理數據存儲的數據管理結點服務, 到管理節點使用的也是負載均衡技術,因為管理結點有一個以上。並且,日誌分析系統,提供數據檢索的WEB服務,與WEB服務相接關聯的業務:

1.日誌審計系統。

2.可視化大屏幕。

3.自動化分析服務。

0×20 安全日誌處理業務

我們構建日誌中心的目地是為了安全運維工作使用,我們對上一個圖進行了加工,將原畫收集兩個系統的圖,只改成收集郵件系統,把空出來的位置,用於展示日誌中心的三大核心業務。

0×21 日誌審計查詢

我們把分布在各個子系統中的日誌收集起來的一個目地是為了集中查詢,我們通過創建安全審計的WEB服務,通過瀏覽器,對散落各地的日誌進行快速的審計查詢。這樣我們不用一臺臺的登上伺服器去查看各個伺服器上的文本日誌,提高工作效率。

0×22 大屏幕可視化

平時我們會關注很多應用系統的服務狀態,當有了日誌系統,我們可以根據系統的日誌,來判斷系統的服務狀態和安全狀態,我們可以通過對日誌進行分析,來判斷系統是否被掃描攻擊。

0×23 智能自動化任務

我們通過啟動定時任務,去定期的檢查系統的安全狀態,生成安全報告。

0×30 業務系統實現

有進對於安全運維的人員來說,不關心系統的具體實現,只關心是否可以提供相應的服務。對於開發人員來說,就要隱藏一些實現細節,讓安全運維人員把精力集中在安全業務上。下面是一個更具體的日誌中心系統的

這是一個抽象的數據流圖,表示了原始的日誌數據的,從那裡的服務產生的,如何通過Input(輸入監聽)和Stram進行邏輯組織的,存儲到了那裡,通過提供服務,對外提供日誌的查詢操作。這個圖從左向右看是:伺服器產生日誌數據,數據通過代理推送到監聽數服務上,通過日誌中心的管理結點,將數據存到集群裡,然後對外開放了WEB REST服務,提供基於HTTP的查詢服務。然後基於查詢服務,再次開發實現了日誌審計查詢,可視化大屏幕展示,和AI自動化處理。

0×40 日誌中心物理部署

我們通過一個更具象化的部署圖,展現出日誌中心服務都應該由那些服務組成。

為了說明問題,還是簡化了系統的展示圖,實際的項目中的部署圖可能與這張圖可能不太一樣,差別體現在,有的服務是多點,有的的單點服務,更理想的狀態,我們還是希望伺服器都是有備份機的,而且是解耦互不影響的。

0×50 總結

有時考慮到企業的運營成本,構建一個日誌中心可能並不能使用商用的系統,比如說Graylog免費,就不買商用的解決方案splunk。那怎麼辦呢?如果預算不夠就用開源吧。 我們本身也基於graylog做了日誌分析系統。無論我們使有什麼樣的工具,對於安全運維來說,常用需求是固定的,而技術是日新月異,比如現在有新的日誌分析產品Aplace Flink等。這章我們只是給出一個大體的日誌中心的架構圖,之後我們會用具體的軟體來實現圖上的架構。

運維幫提供購買雲主機大優惠

主流雲廠商都已和運維幫達成戰略合作,不管是1臺還是100臺,都可以享受到價格優惠,請聯繫群秘書。

歡迎加入「運維幫地方群」,現在有北京地方群、上海地方群、深圳地方群、成都地方群、廣州地方群、杭州地方群。入群請先加群秘書(長按識別下方二維碼),加群秘書時請告知所在城市及公司。

群秘書微信,掃描下方二維碼

相關焦點

  • 實時海量日誌分析系統的架構設計、實現以及思考
    由於需要對日誌進行實時分析,所以Storm是我們想到的首個框架。Storm是一個分布式實時計算系統,它可以很好的處理流式數據。利用storm我們幾乎可以直接實現一個日誌分析系統,但是將日誌分析系統進行模塊化設計可以收到更好的效果。模塊化的設計至少有兩方面的優點:模塊化設計可以使功能更加清晰。
  • 聚銘綜合日誌分析系統助力湖南軟體職業學院加強網絡安全防護建設
    近日,聚銘網絡走進湖南湘潭,攜手湖南軟體職業學院,深入考察了解學校網絡安全需求,以聚銘綜合日誌審計分析系統(SAS)助力學校加強網絡安全防護建設。日積月累下,學校網絡上分散堆積了眾多不同格式、不同語義的網絡日誌信息,缺乏訪問控制及完整性保護。與此同時,學校在網絡與信息安全的管理、技術方面的能力還不夠專業,缺乏專業的人才進行管理處理。學校亟需一個有效的網絡安全防護系統幫助其統籌管理學校信息網絡,提高網絡安全防護能力。
  • 開源安全平臺 wazuh 架構介紹
    做安全防禦,入侵檢測是必不可少的,而入侵檢測通常分為網絡層面和主機層面,今天就來看一個帶有主機入侵檢測功能的安全平臺,他不止包含主機入侵檢測的功能,還包含其他的一些功能,比如:基線漏洞監控、合規性掃描,能力強的還可以根據檢測的結果自動響應。
  • 系統日誌管理規範
    系統日誌管理是為了規範系統日誌管理過程,加強系統日誌的管理與保護,提升信息系統安全保障能力。
  • 基於 Kafka 和 ElasticSearch,LinkedIn是如何構建實時日誌分析系統的?
    及時有效地搜索日誌是 SRE  (Site Reliability Engineer) 日常工作的重要內容。LinkedIn 從使用 Splunk 到建立基於 ES 和 kafka 的日誌分發、索引系統,為 SRE 提供了近似實時的搜索平臺來檢索超過 400 多個子系統的日誌。在本文中,來自LinkedIn的李虓將和大家分享這套系統從無到有的一些技術架構經驗。
  • 支付寶系統架構參考(架構圖)
    轉自微信公眾號支付圈支付寶是中國支付行業的一個標兵,無論是業務能力還是產品創都引領者中國支付行業的前沿,作為支付業務的基礎系統的複雜性和穩定性是支付業務是否能夠及時快速安全處理的根本
  • 閒聊Windows系統日誌
    這個事還真不好幹,你把證據,犯案時間都確定的時候,要求翻看監控(日誌)對應犯罪嫌疑人時,突然說監控(日誌)沒有記錄。不過現在都要求保留至少6個月的日誌,因此這種原因會少了很多,然而我對於Windows中系統日誌不了解,在解讀時經常摸不著頭腦,所以就認真的分析了evtx格式的系統日誌。這篇文章可能記錄的不是很全面,師傅們多多指教。
  • 架構師之路--談架構師的基本素養和日誌處理
    slf4j剛開始使用的時候遇到了很多問題,因為大家都在使用自己的日誌系統和通用接口。比如:common-logging(jakarta common logging 簡稱jcl)是apache提供的一個通用的日誌接口。用戶可以自由選擇第三方日誌組件作為具體實現。具體實現比較常用的有java.util.logging,log4j,logback。
  • 應急響應-作業系統日誌收集與分析
    一、Windows日誌收集與分析    在運維工作過程中,如若windows伺服器被入侵,往往需要檢索和分析相應的安全日誌
  • 納秒級高性能日誌系統 · ATC 2018
    本文要介紹的是 2018 年 ATC 期刊中的論文 —— NanoLog: A Nanosecond Scale Logging System[^1],該論文實現的 NanoLog 是高性能的日誌系統,與 C++ 社區中的其他日誌系統,例如:spdlog、glog 和 Boost Log 相比,它的性能可以高出 1 ~ 2 個數量級,我們在這篇文章中來簡要分析
  • 網際網路支付系統整體架構詳解
    在異步處理程序中,訂單根據處理結果變更狀態後,也要發消息通知相關系統。支付系統架構整體設計每個公司根據其業務和公司發展的不同階段,所設計的支付系統也會有所不同。我們先看看網際網路公司的一些典型的支付系統架構。支付寶我們先看看業內最強的支付寶系統。
  • Windows主機日誌分析辦法與思路
    2、採集日誌樣本先補充幾個前提條件:①Windows 伺服器系統的審核功能必須是啟用的,並且配置好審計策略的,一旦系統出現故障、安全事故才可以查看得到系統的日誌文件,有助於排除故障,追查入侵者的信息等。②日誌還得提前做好定期備份,最好是全量異地備份,往往入侵者也不是傻子,一般會「毀屍滅跡」或者更高明的「移花接木」篡改日誌內容。
  • 企點電話SDK的日誌追蹤系統
    在查詢日誌時,會利用多種條件進行篩選,還需要支持準實時的檢索能力。相對來講,對日誌的保存時間要求並不長,幾天到幾周即可,也沒有複雜的聚合和分析需求,日誌入庫後,一般不會對其進行二次處理和再分析,根據日誌的查詢需求和空間佔用情況,定期進行清理即可。
  • Windows系統安全事件日誌取證工具:LogonTracer
    LogonTracer這款工具是基於Python編寫的,並使用Neo4j作為其資料庫(Neo4j多用於圖形資料庫),是一款用於分析Windows安全事件登錄日誌的可視化工具。它會將登錄相關事件中的主機名(或IP位址)和帳戶名稱關聯起來,並將其以圖形化的方式展現出來,使得在日誌取證時直觀清晰。
  • 金融行業微服務架構解析
    離線分析:按TraceID匯總,通過Span的ID和ParentID還原調用關係,分析鏈路形態。日誌中心架構日誌分析是運維工程師解決系統故障,發現問題的主要手段。日誌主要包括系統日誌、應用程式日誌和安全日誌。系統運維和開發人員可以通過日誌了解伺服器軟硬體信息、檢查配置過程中的錯誤及錯誤發生的原因。
  • 電子取證(Forensics)-Windows日誌分析
    日誌類型不同類型的日誌放在不同的位置,這裡主要介紹三種日誌,應用程式日誌、安全日誌以及系統日誌,其中這三種日誌記錄的位置和記錄信息如下。日誌類型日誌位置存儲內容安全日誌%SystemRoot%\System32\Winevt\Logs\Security.evtx記錄系統的安全審計事件,包含各種類型的登錄日誌、對象訪問日誌``、進程追蹤日誌、特權使用、帳號管理、策略變更、系統事件。安``全日誌也是調查取證中最常用到的日誌。
  • 雲安全架構連載之一-Azure整體架構及安全亮點詳解
    Governance, Azure Sentinel, Azure Monitoring, and Azure Information Protection): 1、身份以及設備安全包括Office 365(現在是Microsoft 365是企業雲端辦公解決方案)、Microsoft's Azure Active Directory(基於混合雲身份管理的雲端活動目錄
  • 技術開源|TA大數據分析系統的高可用架構從設計到實現
    > 寫在前面隨著大數據時代的到來,對海量數據進行數據分析,並依據分析結果進行精細化運營成為各大企業的重要課題。
  • 日誌系統新貴 Loki,確實比笨重的 ELK 輕
    ELK或者EFK比較重,再加上現階段對於ES複雜的搜索功能很多都用不上最終選擇了Grafana開源的Loki日誌系統,下面介紹下Loki的背景。我們都知道,k8s的基本單位是pod,pod把日誌輸出到stdout和stderr,平時有什麼問題我們通常在界面或者通過命令查看相關的日誌,舉個例子:當我們的某個pod的內存變得很大,觸發了我們的alert,這個時候管理員,去頁面查詢確認是哪個pod有問題,然後要確認pod內存變大的原因,我們還需要去查詢pod的日誌,如果沒有日誌系統,那麼我們就需要到頁面或者使用命令進行查詢了:
  • twitter系統架構分析