在企業云上安全中,除了服務器內部漏洞風險和DDOS攻擊等外部攻擊風險外,還有一種風險是內部用戶風險,由于這類風險往往是由內部用戶的異常操作造成的,且內部用戶的操作在安全檢測中天然擁有高可靠性,因此具有極高的隱蔽性,在真正發生安全事件后往往引起巨大危險。
騰訊云安全運營中心中帶有的UBA模塊,即用戶行為分析模塊,在云上安全中可幫助企業做好用戶安全的管理,該模塊主要基于騰訊云用戶在控制臺的相關操作記錄以及使用云進行自動化操作的相關記錄,進行用戶安全性分析,并提示運維人員及時處理相關風險。
由于云后臺只是粗略記錄了用戶相關操作的事件類型,因此無法僅通過用戶的單條操作記錄進行風險判定,VPS租用,只有在某些層面上的統計量才具有一定意義。UBA模塊正是在這種背景下,服務器租用,提出了基于風險場景的用戶安全檢測機制。下面我們將圍繞用戶安全檢測機制的三大模塊及其應用場景,為大家介紹如何利用云原生SOC降低內部用戶操作風險。
檢測機制由三個模塊構成:用戶身份識別模塊、檢測閾值生成模塊以及場景檢測模塊。
一、用戶身份識別模塊
在實際工作中,不同子用戶擔任的角色不一樣,涉及的權限與工作量也必然不一樣,為了方便用戶自查以及后續模塊的利用,需要對用戶進行身份的識別。目前,一個用戶的身份由四個身份因子組成,分別為:是否高風險、是否api、是否人類以及操作密度。具體含義如下所示:
是否高風險:該用戶在14天內的操作記錄是否涉及高風險權限(用戶權限提升、資產高風險權限修改)
是否api:該用戶在14天內的操作記錄是否存在規律性
是否人類:該用戶除去規律性操作外是否存在其他操作
操作密度:該用戶7天內的操作密度。由7天內每天操作記錄總數的四分位數得出,具體規則如下所示:
根據得到的用戶各身份因子,可以得到用戶的具體身份,規則如下所示:
在獲取用戶身份后,管理員可以審核用戶身份是否符合預期,并及時處理不符合預期的用戶。其中high_risk_api_ops和high_risk_ops用戶在一天記錄量低于200的情況下進行了高風險操作,需要核查是否安全。
二、檢測閾值生成模塊
閾值即一個用戶在某個場景下統計量的預期最大值,但是不同身份的用戶的預期值是不一樣的,例如一個運維用戶和一個普通觀察用戶的預期值不一樣,運維用戶根據工作量和負責事務的不同預期最大值也不一樣。因此閾值生成模塊的目的是根據該用戶歷史的數據以及用戶身份自動生成用戶在每個場景下的檢測閾值。
本模塊在閾值生成中遵循一個假設,即用戶的操作數量符合正態分布,并按照置信度及一定的規則取合適的值作為最終的檢測閾值,具體的生成規則如下所示:
(一)用戶權限提升
(二)資產高風險權限修改
(三)用戶權限遍歷
三、場景檢測模塊
目前uba模塊已有的風險場景有以下四種:用戶權限提升、資產高風險權限修改、用戶權限遍歷、新用戶高危操作。
(一)用戶權限提升
該類場景聚焦于權限提升類的操作事件,例如綁定某一策略到特定用戶。這一類操作事件在實際工作中基本由運維人員操作產生且大多是經由主賬號操作產生。若一個子賬號在短期內進行的權限提升類操作次數異常,則該用戶可能被盜號或操作行為不當,均需告知用戶及時排查處理。
基于以上需求,用戶權限提升場景的檢測邏輯如下:
在上述檢測邏輯中,將主賬號和子賬號區分,對于主賬號的風險評分更加寬松。
(二)資產高風險權限修改
該類場景聚焦于資產高風險權限修改類的操作事件,例如修改安全組規則。這一類操作事件在實際工作中基本由運維人員操作產生,但是可能存在運維人員為了方便工作,為自己的子賬號提權后也進行了該類操作。由于目前未對子賬號身份作進一步劃分,因此未對這類子賬號做特殊處理。這類場景與用戶權限提升場景的檢測邏輯類似,如下所示: