王駿翔
(中遠海運科技股份有限公司, 上海 200135)
某大型航運企業(yè)的郵件系統(tǒng)建設(shè)于2015年,承載著企業(yè)總部及其下屬各單位辦公人員的日常郵件業(yè)務(wù),總賬戶數(shù)約13 000個。目前已圍繞該系統(tǒng)建設(shè)部署防病毒、防垃圾郵件和防攻擊等安全保障措施,滿足網(wǎng)絡(luò)安全等級保護三級的建設(shè)要求,但因該系統(tǒng)具有互聯(lián)網(wǎng)業(yè)務(wù)屬性,在安全運營維護方面存在一些難點,主要表現(xiàn)在:
1) 系統(tǒng)的訪問性相對開放,回溯可疑用戶較為困難;
2) 企業(yè)分支機構(gòu)較多、地域分布較廣,且涉及境內(nèi)和境外,可疑行為較難定位;
3) 用戶通過手機收發(fā)郵件時,較難定位其可疑性;
4) 互聯(lián)網(wǎng)IP(Internet Protocol)地址繁多,系統(tǒng)本身無法區(qū)分和過濾其物理地域(國家、區(qū)域等);
5) 日常辦公業(yè)務(wù)中登錄和退出操作的頻率較高,日志數(shù)據(jù)量較大,系統(tǒng)本身無法有針對性地進行分析。
因此,圍繞大型企業(yè)郵件系統(tǒng)開展信息系統(tǒng)安全分析很有必要,是企業(yè)信息系統(tǒng)安全工作的一部分。對于郵件系統(tǒng)賬戶安全而言,用戶行為分析不僅是一個收集和統(tǒng)計信息的過程,更是一個提升管理和安全防控水平的過程,是未來郵件智能化安全防控的發(fā)展趨勢。企業(yè)級郵件系統(tǒng)安全分析平臺的主要作用是在盡可能少的人工干預(yù)下,結(jié)合運用算法分析模型、企業(yè)特性和安全預(yù)警機制,在不影響郵件系統(tǒng)全天高效、穩(wěn)定運行的情況下,通過對外圍數(shù)據(jù)進行采集和分析統(tǒng)計,實現(xiàn)輔助性的安全防護、實時監(jiān)控和提前預(yù)警。
本文針對以上企業(yè)安全管理需求,借鑒面向?qū)ο蟮脑O(shè)計思想,結(jié)合跨平臺、多語言的研發(fā)手段,構(gòu)建一套基于用戶行為識別的郵件系統(tǒng)安全分析平臺,提供有關(guān)郵箱賬戶安全風(fēng)險的大數(shù)據(jù)分析、企業(yè)可信任或授權(quán)的黑白名單配置和用戶登入地軌跡分析等多維度的安全分析服務(wù),有效提升企業(yè)郵件系統(tǒng)對其用戶賬號狀態(tài)的安全分析和預(yù)警能力,繼而主動并及時發(fā)現(xiàn)潛在的賬號盜用、信息泄露等安全隱患,大幅度提高企業(yè)郵件系統(tǒng)的信息安全保障能力。
1) 掌握動態(tài)數(shù)據(jù),精準定位。
(1) 實時掌握系統(tǒng)賬戶登入信息情況;
(2) 準確發(fā)現(xiàn)用戶當前所屬地與其企業(yè)/公司所屬地的地域差異;
(3) 精準確定用戶登入/操作的頻率和地區(qū);
(4) 及時過濾已知可疑的境內(nèi)和境外IP。
2) 維護基礎(chǔ)數(shù)據(jù),可靠穩(wěn)定。
(1) 通過定期分析和維護企業(yè)所屬地域,保證分析維度數(shù)據(jù)的準確性;
(2) 通過定期分析和維護賬戶所屬地域,保證分析對象的準確性;
(3) 通過自動收集、維護底層數(shù)據(jù)源信息,保證分析數(shù)據(jù)的精準性。
充分結(jié)合實際維護中普遍存在的難點和重復(fù)性問題,采用面向?qū)ο蟮脑O(shè)計思路[1]逐步開展模塊設(shè)計,以滿足大型企業(yè)郵件系統(tǒng)安全運營團隊的需求:
1) 企業(yè)級郵件系統(tǒng)的維護相對呈現(xiàn)出多樣化和瑣碎化的特征,日常維護人員通常會針對賬戶的安全性采用一些傳統(tǒng)的主動詢問和被動告知的方式,當企業(yè)層級或分支機構(gòu)較多、系統(tǒng)使用人數(shù)成規(guī)模化急劇增加時,面臨著較難維護和運營的困境;
2) 大型企業(yè)存在較多分支機構(gòu),且呈現(xiàn)出地域化特點,針對實際用戶的所屬地管理較難收集和分析比對,由此引發(fā)的安全預(yù)警和分析力度很難顯現(xiàn);
3) 以每日新增的海量用戶行為操作數(shù)據(jù)和地域數(shù)據(jù)為基礎(chǔ),對接企業(yè)已有的網(wǎng)絡(luò)安全感知平臺的可疑數(shù)據(jù),實現(xiàn)對用戶行為的識別和管理。
根據(jù)企業(yè)已有系統(tǒng)安全運營的情況,在不影響現(xiàn)有郵件系統(tǒng)架構(gòu)的前提下,設(shè)計并建設(shè)一套基于用戶行為識別的安全分析平臺,以圖形化的界面靈活管理所有與安全運營有關(guān)的分析和管理工作。平臺分層架構(gòu)圖見圖1。
系統(tǒng)后臺的基礎(chǔ)信息采集和分析模塊作為分析平臺的重要組成部分,能對郵件系統(tǒng)的用戶基礎(chǔ)數(shù)據(jù)、賬戶登入操作信息、企業(yè)基礎(chǔ)數(shù)據(jù)和外部安全數(shù)據(jù)源進行有效整合,建立企業(yè)自身適用的算法模型,是幫助安全運營團隊及時了解和掌握系統(tǒng)用戶當前的基礎(chǔ)信息和使用軌跡的有效手段;結(jié)合第三方的互聯(lián)網(wǎng)位置信息源和外部安全數(shù)據(jù)源,能準確定位賬戶的安全性或可疑狀態(tài);配合安全預(yù)警機制,能在第一時間為運營團隊提供有效的支撐數(shù)據(jù),使可疑或異常安全風(fēng)險在產(chǎn)生初期就得到處置。
圖1 平臺分層架構(gòu)圖
鑒于企業(yè)級郵件系統(tǒng)基本上以Linux X86架構(gòu)為主,在底層數(shù)據(jù)采集和分析設(shè)計部分采用Python實現(xiàn)對郵件系統(tǒng)用戶行為數(shù)據(jù)和安全算法分析的建模和處理[2]。
根據(jù)企業(yè)級郵件系統(tǒng)日常運營的特點,安全分析平臺將實現(xiàn)6類功能的數(shù)據(jù)采集、清洗、分析和綜合展現(xiàn),實現(xiàn)即時的準確性數(shù)據(jù)捕獲和告警。
1) 企業(yè)/分支機構(gòu)所在地管理。通過對企業(yè)及其分支機構(gòu)的辦公所在地進行梳理,在平臺的基礎(chǔ)數(shù)據(jù)中統(tǒng)籌配置其地域信息,為郵件用戶行為分析的安全算法提供必要的基礎(chǔ)信息。
2) 郵箱賬戶所在地管理。通過對郵件所屬賬戶的常用或近期辦公所在地進行梳理,在平臺的基礎(chǔ)數(shù)據(jù)中統(tǒng)籌配置其地域信息,為郵件用戶行為分析的安全算法提供更精準的分析依據(jù)。
3) 郵箱賬戶IP黑白名單管理。在日常運營過程中,可通過威脅告警信息對相關(guān)郵箱賬戶的IP地址進行黑白名單配置;同時,在外部安全數(shù)據(jù)源信息中,會自動對危險、可疑的IP地址進行補充。通過日常運營維護,結(jié)合外部信息,能精準過濾和定位到可疑的郵箱賬戶。
4) 境外IP登入分析。利用第三方的互聯(lián)網(wǎng)位置信息源和外部安全數(shù)據(jù)源分析采集到的郵件系統(tǒng)用戶登入操作信息,自動推送每日在境外使用的郵箱賬戶;采用安全分析算法對境外登入的可疑賬戶進行預(yù)警推送,協(xié)助運營團隊快速定位異常用戶和惡意攻擊行為。
5) 境外IP多賬戶登入分析。基于平臺存檔的所有歷史分析數(shù)據(jù),結(jié)合業(yè)務(wù)場景,采用安全分析算法對可疑的多次登入不同賬戶的境外IP進行預(yù)警推送,協(xié)助運營團隊快速定位異常IP和惡意攻擊所在地。
6) 用戶地域行動軌跡分析。對郵箱賬戶的所有登入地域進行分析,結(jié)合其日常辦公場所的區(qū)域信息,為用戶進行地理行為軌跡畫像,進一步定位和過濾其賬戶的潛在安全隱患。
通過采集郵件系統(tǒng)的用戶操作信息,提取其操作的IP地址信息;結(jié)合企業(yè)內(nèi)部的IP地址庫和第三方全球互聯(lián)網(wǎng)IP位置信息,自動分析、匹配和重構(gòu)用戶操作信息。對于數(shù)據(jù)分析部分,利用平臺關(guān)于每個郵箱賬戶的基礎(chǔ)信息,結(jié)合算法模型標記其每次操作地域的威脅等級。
在該模塊中,系統(tǒng)通過Python代碼實現(xiàn)對所有用戶操作IP地址的收集、匹配和比對分析,同時通過消息傳輸機制將實時數(shù)據(jù)準確傳輸至安全分析平臺后端的數(shù)據(jù)庫內(nèi),由平臺統(tǒng)一展現(xiàn),做到及時告警,準確定位延遲隊列和故障點[3]。用戶操作IP位置分析功能實現(xiàn)代碼如下:
def ip_locaiton_search(ip):
try:
url = "https://xxxxxxx/?ip="+ip
result = '〈div id="result"〉.*?〈/div〉'
locaiton ='〈p〉所在地理位置:〈code〉(.*?)〈/code〉〈/p〉'
headers = {'User-Agent':'ozilla/5.0 (Windows NT 6.1; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/77.0.3865.90 Safari/537.36','accept':'text/html,application/xhtml+xml,application/xml;q=0.9,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3'}
req = urllib2.Request(url, headers=headers)
html = urllib2.urlopen(req).read()
type = sys.getfilesystemencoding() # local encode format
html.decode("UTF-8").encode(type)
html = urllib2.urlopen(req).read()
parser = HTMLParser.HTMLParser()
parser.unescape(html)
resultstr = re.compile(result,re.S | re.M).findall(html)[0]
crawl_result={}
crawl_result['locaiton'] = re.compile(locaiton,re.S | re.M).findall(resultstr)[0]
#print crawl_result['locaiton']
return crawl_result['locaiton']
except Exception,e:
return '地區(qū)未獲取'
通過對系統(tǒng)中關(guān)于用戶操作的IP位置進行分析,自動推送在境外地區(qū)使用的郵箱賬戶;采用安全分析算法對境外登入的可疑賬戶進行預(yù)警和郵件自動推送,協(xié)助運營團隊快速定位異常用戶和惡意攻擊行為。郵件自動推送的境外IP登入分析功能實現(xiàn)代碼如下:
def sendMail(ip_location_data):
#mail alert for network mpls
if ip_location_data!=None:
msg_subject = '[Mail Login Ip Location Report(Foreign)'+' For '+analyze_date +']'
msg_info = "〈table border=1〉"
msg_info += '''
〈tr style='background-color:write'〉
〈td align='center' colspan='4'〉分析數(shù)據(jù)源日期:Report-Date〈/td〉
〈/tr〉
〈tr style='background-color:gray'〉
〈td align='center'〉郵箱賬戶〈/td〉
〈td align='center'〉所屬公司〈/td〉
〈td align='center'〉登入IP地址〈/td〉
〈td align='center'〉登入IP所屬地〈/td〉
〈/tr〉
'''
msg_info=msg_info.replace("Report-Date", analyze_date)
for info in ip_location_data:
msg_info += "〈tr〉"
msg_info += '〈td〉'+info['login_user'] + '〈/td〉'
msg_info += '〈td〉'+info['company'] + '〈/td〉'
msg_info += '〈td〉'+info['ip'] + '〈/td〉'
msg_info += '〈td〉'+info['ip_location'] + '〈/td〉'
msg_info += '〈/tr〉'
msg_info += "〈/table〉"
#add receivers by line
receivers_mail_add = ['wang.junxiang@coscoshipping.com']
receivers_mail_add=None
#send mail alert
SendIpLocationMail(msg_subject,msg_info,receivers_mail_add)
print ("Message:Mail Login Ip Location Report(Foreign ) send!!!")
else:
print ("Warning:Mail Login Ip Location Report(Foreign ) is none!!!")
通過對郵箱賬戶境外IP登入進行分析,比對平臺內(nèi)所有已知的歷史分析數(shù)據(jù);采用安全分析算法對可疑的多次登入不同賬戶的境外IP進行統(tǒng)計分析,協(xié)助運營團隊快速定位異常IP和惡意攻擊行為所在地[4]。圖2為境外IP多帳號登入分析界面。
圖2 境外IP多帳號登入分析界面
通過對郵箱賬戶每次登入操作的地理位置信息進行分析,篩選出每日當前行動軌跡較為可疑的賬戶;結(jié)合其近期所處的地理位置和外部安全數(shù)據(jù)源,采用安全分析算法對可疑賬戶進行預(yù)警和直觀的軌跡畫像,協(xié)助運營團隊快速定位潛在隱患賬戶。圖3為賬戶地域行動軌跡分析界面;圖4為賬戶地域行動軌跡畫像。
圖3 賬戶地域行動軌跡分析界面
圖4 賬戶地域行動軌跡畫像
系統(tǒng)通過對每日郵件系統(tǒng)境外IP登入方面的信息進行分析,主動推送和匯總以下應(yīng)用效果:
1) 平臺開始運行時,日均登入次數(shù)約為72萬次,每日境外IP登入賬號數(shù)約有2 700個,其中,每日高危賬號篩選過濾數(shù)量約為250個,高危風(fēng)險賬號篩選率約為90.7%;
2) 在經(jīng)過2個月的數(shù)據(jù)清洗和標簽維護之后,每日高危風(fēng)險賬號的篩選數(shù)量減少至約150個,篩選率約為94.4%。
將大數(shù)據(jù)的相關(guān)技術(shù)和理念引入企業(yè)郵件系統(tǒng)的日常安全防護工作中,為企業(yè)通信系統(tǒng)的正常運行和日常監(jiān)管提供有力的支撐,不僅能提高安全運營團隊的分析運營效率和服務(wù)質(zhì)量,而且能大幅度提高對業(yè)務(wù)系統(tǒng)安全分析和預(yù)測防范的力度,從根本上降低運營成本。
用戶行為分析和操作軌跡畫像是建立安全分析的基石,源于運維人員長期的工作積累,通過構(gòu)建一套針對性較強的安全分析平臺完成大型企業(yè)日常繁瑣、重復(fù)的運維管理工作,是較為高效、穩(wěn)妥和即時的解決方案。表1為某大型集團企業(yè)利用郵件安全分析平臺前后的技術(shù)指標對比。
表1 某大型集團企業(yè)利用郵件安全分析平臺前后的技術(shù)指標對比
從表1中可看出,引入基于用戶行為分析的郵件安全分析系統(tǒng),能簡化系統(tǒng)運維團隊和系統(tǒng)安全團隊的工作,降低人工失誤率,為系統(tǒng)資源的安全防護和企業(yè)信息系統(tǒng)關(guān)于網(wǎng)絡(luò)安全風(fēng)險的定級評估提供平臺支撐保障。