◆劉玉婷 蘇永東 趙曉平 歐 瑋
(云南電網(wǎng)有限責任公司信息中心 云南 650217)
電力營銷系統(tǒng)海量用戶行為日志安全分析技術研究
◆劉玉婷 蘇永東 趙曉平 歐 瑋
(云南電網(wǎng)有限責任公司信息中心 云南 650217)
隨著電力體制改革和能源互聯(lián)網(wǎng)不斷推進,營銷系統(tǒng)在電力企業(yè)生產(chǎn)支撐中的作用日益關鍵,一旦遭到攻擊、破壞將對企業(yè)、社會和國家造成十分嚴重的影響。本文在對國內(nèi)某電力企業(yè)營銷系統(tǒng)原始日志分析的基礎上,對原始日志進行數(shù)據(jù)清理,去除噪聲記錄、提取關鍵特征,形成適合數(shù)據(jù)挖掘的日志格式,據(jù)此開展海量用戶行為日志安全分析工作,并利用統(tǒng)一安全信息檢索平臺完成了可視化展現(xiàn),并針對后續(xù)深入的數(shù)據(jù)挖掘工作給出了研究方向。
電力營銷系統(tǒng);用戶行為日志分析;日志數(shù)據(jù)清理;數(shù)據(jù)挖掘可視化;統(tǒng)一安全信息檢索
隨著電力企業(yè)信息化水平的不斷提升,能源互聯(lián)網(wǎng)和電力體制改革的不斷推進,電力營銷系統(tǒng)在企業(yè)日常生產(chǎn)中的重要性日益凸顯。2015年云南電網(wǎng)推廣CSG II營銷管理系統(tǒng),重點包括業(yè)擴報裝、抄核收、客戶服務和用電檢查四大功能,覆蓋了20個客戶全方位服務流程、10類營銷客服業(yè)務專業(yè)、342項協(xié)同業(yè)務。負責存儲和管理云南電網(wǎng)下屬供電單位的用戶數(shù)據(jù)、業(yè)擴數(shù)據(jù)、計量數(shù)據(jù)、計費參數(shù)、銀電互聯(lián)、抄表信息、電費臺賬、賬務數(shù)據(jù)和財務結(jié)算等數(shù)據(jù)。由于系統(tǒng)橫向協(xié)同關系復雜,涉及與營業(yè)廳、自助終端、第三方支付、移動應用等系統(tǒng)的接口,同時還與安全級別程度較高的電網(wǎng)運行系統(tǒng)對接,如調(diào)度自動化系統(tǒng)、配電自動化系統(tǒng)、負荷控制系統(tǒng)等。系統(tǒng)用戶數(shù)量眾多,任何一個環(huán)節(jié)的安全破壞極易導致自身及其他系統(tǒng)的安全相繼受損,甚至造成較大的社會影響,因此其安全性十分重要。
目前云南電網(wǎng)營銷系統(tǒng)配備了較為完善的安全防護措施,能夠抵御常規(guī)的攻擊,但對于目前流行的APT滲入等攻擊方式,以及內(nèi)部人員惡意行為,缺少快速、及時的發(fā)現(xiàn)手段,僅能通過操作日志后期審計發(fā)現(xiàn),效率低、時間長,僅能用于事后追責,無法在初始階段發(fā)現(xiàn)異常并阻斷。利用海量用戶行為日志分析技術,可以實現(xiàn)用戶異常行為的及時檢測與報警,管理人員能夠快速確認異常,并及時采取措施,能夠有效避免嚴重后果的產(chǎn)生。
最初的用戶行為分析更關注于電子商務平臺對用戶點擊、停留時間等一系列行為的分析,從而分析出用戶的興趣點,并針對性的給出推薦產(chǎn)品,從而提升用戶體驗和銷售額。
在信息安全領域,Malek Ben Salem和Shlomo Hershkop首次利用大量用戶行為記錄進行數(shù)據(jù)挖掘從而實現(xiàn)內(nèi)部威脅檢測的方法進行了研究,第一次正式提出了內(nèi)部威脅,并且將其細化為了Traitor(組織合法成員)和Masquerader(外部偽裝的內(nèi)部成員)兩類攻擊,并且根據(jù)兩類攻擊者的特點進行了分析,提出了可行的應對建議。[1]。
2013年,美國國際科學應用國際公司SAIC聯(lián)合美國四家高校聯(lián)合開發(fā)了PRODIGAL[2]系統(tǒng),專門用于美國敏感部門的內(nèi)部威脅檢測。目前PRODIGAL已經(jīng)在美國的部分涉密企業(yè)實際部署。該產(chǎn)品使用與IT相關的7類111個數(shù)據(jù)集進行計數(shù)與比例作為特征,同時使用人員關系圖作為輔助分析,應用指示器、異常和場景三個維度作為異常檢測的起點,綜合使用了15種機器學習算法實現(xiàn)內(nèi)部威脅的檢測。
隨后陸續(xù)有研究人員提出基于多域信息融合的內(nèi)部威脅檢測方法[3]、基于用戶行為動態(tài)變化的內(nèi)部威脅檢測方法[4]等,均在一定程度上降低了誤報率。然而仍然存在一定的應用困難,無法形成成熟產(chǎn)品應用于實際企業(yè)環(huán)境中。
同時,上述研究成果難以直接應用于營銷系統(tǒng)用戶行為分析當中,主要原因是營銷系統(tǒng)記錄了用戶登錄時間、修改數(shù)據(jù)、功能訪問的信息,與現(xiàn)有研究成果中記錄用戶登錄終端、使用Email、瀏覽網(wǎng)頁、使用/連接設備等數(shù)據(jù)模型差異較大,特征點也存在較大差異。
2.1 營銷系統(tǒng)日志數(shù)據(jù)清理與數(shù)據(jù)提取
(1)系統(tǒng)原始日志結(jié)構(gòu)分析
目前,云電營銷系統(tǒng)主要記錄有3類日志信息:功能訪問日志、系統(tǒng)數(shù)據(jù)修改日志、系統(tǒng)登錄注銷日志,分別存放在數(shù)據(jù)庫3個系統(tǒng)表中。
登錄日志的信息包括:登錄日志標識、人員標識、登錄類型、登錄賬號、用戶姓名、登錄IP、服務器IP、服務器名稱、注銷時間、登錄時間、失敗次數(shù)、響應時長等字段。
功能訪問日志包括日志記錄標識、人員標識、功能菜單標識、菜單名稱、訪問時間、訪問URL、訪問IP等。
系統(tǒng)數(shù)據(jù)修改日志包括記錄標識、修改的數(shù)據(jù)表名、修改的數(shù)據(jù)記錄主鍵與記錄行、修改類型(增、刪、改)、修改日期、修改人員標識、修改說明(本條日志的可讀概要說明)、時間戳(精確時間)、修改人員訪問IP。
三類日志基本上記錄了用戶在本系統(tǒng)上進行的操作,部分涉及IP的字段也無參考意義,比如服務器IP,在登錄時往往由負載均衡分配,并且僅在登錄日志中出現(xiàn),相關用途并不大。
并且這三張日志表對于用戶行為來說,是存在依賴關系的,比如數(shù)據(jù)修改日志一定是和特定的功能調(diào)用日志相關聯(lián)的,而文獻[3]提出的多域信息融合方法適用于關聯(lián)性較弱的領域,如登錄、設備、HTTP、Email等,難以直接應用該成果。
根據(jù)分析結(jié)果,如果需要對某個用戶的操作記錄進行分析,那有必要將三個記錄表合成1份進行分析;而如果需要對系統(tǒng)總體的操作情況進行分析,那么保持操作內(nèi)容的分離性是十分有必要的。
(2)營銷系統(tǒng)日志數(shù)據(jù)清理
為了去除原始日志中多余的信息,使日志記錄更適合于數(shù)據(jù)挖掘工具分析,并能夠同時適用于單用戶行為分析和多用戶綜合操作分析,需要在現(xiàn)有日志中提取關鍵特征,并根據(jù)特征進行日志格式的設計。

圖1 清理過的日志格式
我們遵循3W2H原則,設計了who what how where when日志格式,設計有日志記錄主鍵、操作賬戶、操作、操作細節(jié)、源IP、操作時間4個字段。數(shù)據(jù)庫表結(jié)構(gòu)如圖1所示。
其中LOGID為本條日志的唯一索引,用于數(shù)據(jù)庫對記錄進行管理,實際挖掘中可以去除本屬性。
RYBS和DLZH是一個一一對應的字段,DLZH是人可讀的賬號名稱,RYBS是賬號表中的主鍵數(shù)字編碼,實際挖掘中可以僅使用DLZH,原始日志記錄中不僅保存了用戶標識,還保存有用戶中文名、用戶全網(wǎng)統(tǒng)一的用戶名(形如xxx@xxx.cn),為了后續(xù)便于聯(lián)合準入系統(tǒng)進行關聯(lián)分析,DLZH字段保存了用戶全網(wǎng)統(tǒng)一的用戶名。
ACT字段描述了本條記錄的行為,我們設計了營銷系統(tǒng)中有Login、Logout、FuncInvoke、Add_data、Modify_data、Del_data共6種操作類型,分別代表登錄、注銷、功能調(diào)用、增加數(shù)據(jù)、修改數(shù)據(jù)和刪除數(shù)據(jù),可以用于粗略的行為分析,也可以用于對每一類操作進行過濾,以進行深入挖掘。
Detail字段是ACT字段的詳細描述,對于Login、Logout來說沒有詳細信息,僅重復填充;對于FuncInvoke來說,由于原日志中記錄的菜單編碼、URL和菜單名稱均是一一對應的,為保證可讀性,Detail字段記錄了調(diào)用的功能菜單名稱;而Add_data、Modify_data、Del_data字段在原始日志中記錄的內(nèi)容包括修改的數(shù)據(jù)表名以及該條數(shù)據(jù)的記錄主鍵值,實際應用中單獨參考數(shù)據(jù)主鍵沒有實際意義,而結(jié)合實際記錄進行分析將給系統(tǒng)帶來較大壓力,極可能影響系統(tǒng)穩(wěn)定運行,因此此處Detail字段僅記錄修改的表名。
IP字段記錄的是該賬戶進行本次操作的源IP地址。
DLSJ字段記錄的是本次操作發(fā)生的時間。
(3)數(shù)據(jù)清理總結(jié)
通過上述數(shù)據(jù)清理工作,將不同類型的日志進行特征提取、日志合并,去除對數(shù)據(jù)挖掘意義不大或目標不明確的記錄字段,形成一個適合進行數(shù)據(jù)挖掘的日志記錄格式,為后續(xù)的挖掘工作奠定了基礎。
而要想獲得良好的數(shù)據(jù)挖掘結(jié)果,成功應用聚類、決策樹等挖掘算法,還需要對記錄進行分類,針對本項研究內(nèi)容需要從海里日志記錄中提取一定數(shù)量的日志樣本,對樣本中每一個操作記錄進行人工分析,標識該記錄的異常、正常等,作為挖掘模型的訓練數(shù)據(jù)集,并保留一部分識別出的記錄,去除標識字段結(jié)果,用于數(shù)據(jù)挖掘模型測試。
由于時間有限,目前暫未進行上述工作,在后續(xù)工作中將開展相關工作。
2.2 電力營銷系統(tǒng)用戶行為日志分析
分析特征提取與模型設計
(1)賬號共享情況檢測
通過對賬號登錄的IP地址進行統(tǒng)計,能夠發(fā)現(xiàn)多人共用賬號的情況,進一步對登錄和注銷時間內(nèi)同一賬號同一IP的登錄注銷記錄統(tǒng)計,可以發(fā)現(xiàn)單機多重登錄的情況,便于落實安全管理制度。針對營銷系統(tǒng)登錄情況,針對同一賬號統(tǒng)計登錄IP的個數(shù),個數(shù)大于1認為賬號存在賬號共享使用的情況。
(2)賬戶異常登錄情況檢測
對賬號登錄的IP地址進行次數(shù)統(tǒng)計,提取出最常登錄的3個IP地址,當最常登錄的IP地址變化時,結(jié)合網(wǎng)絡準入系統(tǒng)協(xié)同驗證,對于未在本人證書插入的終端IP上的登錄行為認為是異常。
(3)賬號口令破解情況檢測
通過檢測一個較短時間周期(1小時)內(nèi)單個IP上登錄的賬戶數(shù)量以及不同賬號的登錄失敗次數(shù),其數(shù)量顯著較高的IP可以懷疑其進行賬戶口令破解或登錄測試。
(4)用戶在線與登錄情況統(tǒng)計
通過對用戶工作時段和非工作時段的登錄時長進行統(tǒng)計,分析營銷系統(tǒng)各賬戶每天使用系統(tǒng)的情況,包含單帳戶登錄時長和總用戶在線時長,可以用來識別僵尸賬號和時間過長的異常賬戶。統(tǒng)計一段時間每天(8:00-18:00,18:01-次日7:59)各賬戶的登錄記錄,根據(jù)記錄中的登錄時間和注銷時間及登錄次數(shù)計算每個時間區(qū)間內(nèi)的賬號在線時長,最后計算總用戶在線時長。
(5)用戶菜單訪問情況統(tǒng)計
通過對賬號菜單調(diào)用情況進行統(tǒng)計,分析用戶訪問功能的情況,統(tǒng)計一段時間內(nèi)(1天或1周)各菜單的調(diào)用情況并進行排序,獲得該用戶最常用的前10個菜單列表,當菜單列表變化時認為用戶行為存在改變,需要進一步調(diào)查。
(6)用戶數(shù)據(jù)修改情況統(tǒng)計
通過對單個用戶的數(shù)據(jù)修改情況進行統(tǒng)計,分析用戶在數(shù)據(jù)修改方面的情況,統(tǒng)計一段時間內(nèi)(1天或1周)用戶執(zhí)行新增、修改、刪除的數(shù)據(jù)表名數(shù)量,獲得該用戶最經(jīng)常增加、修改、刪除的前10個數(shù)據(jù)表,當數(shù)據(jù)列表變化時認為用戶行為存在改變,需要進一步調(diào)查。
2.3 檢測模型在信息安全統(tǒng)一檢索平臺的實現(xiàn)
(1)賬號共享情況檢測及賬戶異常登錄情況檢測
通過對每個賬戶的登錄次數(shù)進行計數(shù)并對每個賬戶進行聚合,搜索過去110天內(nèi)所有登錄行為日志,同時對總計數(shù)情況使用分割條形式的賬戶字段聚合,利用統(tǒng)一信息安全檢索平臺中的可視化工具進行繪圖,縱軸為登錄次數(shù),橫軸為登錄賬戶,不同顏色代表登錄的IP,如圖2所示。可以看出有10個賬戶涉及賬戶共享。

圖2 賬戶異常登錄情況

圖3 賬戶口令破解情況檢測
(2)賬號口令破解情況檢測
通過檢測一個較短時間周期(1小時)內(nèi)單個IP上登錄的賬戶數(shù)量以及不同賬號的登錄失敗次數(shù),其數(shù)量顯著較高的IP可以懷疑其進行賬戶口令破解或登錄測試。對總計數(shù)情況使用分割條形式的IP字段聚合,利用統(tǒng)一信息安全檢索平臺中的可視化工具進行繪圖,縱軸為登錄次數(shù),橫軸為IP,不同顏色代表登錄的賬戶,如圖3所示。可以看出第二列的IP存在多個賬戶登錄的情況,需要進行深入調(diào)查。
(3)用戶在線與登錄情況統(tǒng)計
通過統(tǒng)計用戶登錄與在線時長,形成如圖4所示的賬戶在線情況,通過排列趨勢的變化發(fā)現(xiàn)異常用戶使用系統(tǒng)的情況。

圖4 用戶登錄與在線統(tǒng)計
(4)用戶菜單訪問情況統(tǒng)計
用戶對菜單的訪問情況統(tǒng)計如圖5所示,即實際應用中需要跟蹤前5個賬戶的情況。