安全實踐者總被教育說要更智慧地使用數據。但問題是,很多數據科學家都迷失在自己的數學和算法世界中,而疏于從業務角度闡述自己的研究價值。
大數據平臺Dataiku分析架構師兼銷售工程負責人肯尼斯·桑福德( Kenneth Sanford )博士稱,安全專家需與數據科學家更緊密合作,理解公司企業想要達成的目標,比如是想要合規,還是想要確定如果遭遇勒索軟件攻擊會造成什么損失。
桑福德表示,“定義業務問題非常重要,像是宕機時間的業務損失和不合規的經濟處罰之類的。”
Rapid7首席數據科學家羅博·路迪斯( Bob Rudis )補充道,公司企業需后退一步,觀察他們的過程,確定哪些可以通過數據科學做得更好。
公司企業需問問自己安全問題與業務問題之間的聯系。
桑福德和路迪斯構建了一套六步創建內部DNS查詢分析模型的方法,可以有效減少甚至清除掉查詢中的惡意代碼。
1. 定義業務問題
安全實踐者經常迷失在技術細節中而沒有仔細考慮手頭的業務問題。舉個例子,如果目標是分析DNS查詢請求,確定要分析的是成千上萬的內部DNS請求還是某網站或電子商務站點的外部DNS請求就很重要。只要確定出哪些才是更重要的,數據科學家就能建立模型分析這些活動。
2. 確定哪些數據源最適合解決問題
這一步決定模型解決業務問題的樣式。如果公司確定要解決的是內部用戶點擊網絡釣魚鏈接的問題,就需要建立針對所有內部DNS請求的模型。從所需數據類型的角度看,你將需要合法電子郵件集、被黑電子郵件集和電子郵件源IP及源域名的集合。數據科學家需能創造性地想象出一個所有數據都可用的世界。
3. 列出數據清單
這一步你需要盤點可用數據,列出數據清單。雖然應該盡善盡美,認識到局限所在也是必要的。說回DNS主題,大多數DNS數據來自于路由器、手機、服務器和工作站。你需要盤點所有查詢類型,確定是否符合自己能處理的格式,確定自己是否具備恰當存儲并訪問這些數據的IT基礎設施。如果你存儲空間不夠,那就需要搞清楚自己到底需要什么,配置這些基礎設施需要花費多少預算。
4. 實驗多種數據科學技術
現在可以坐下來打開電腦實驗哪種數據科學技術最適合自己了。是高度可解釋的線性模型,還是高深莫測的深度學習算法?無論哪種,切記不要為了追求高深的數學而部署算法。目標應該始終指向選出最佳方式,讓機器給出人力所不及的分析,讓公司能夠做出明智的決策。DNS案例中,就是構建能持續以高置信度判定DNS請求是否惡意的模型。
5. 從現實世界視角測試
測試時,團隊會希望確定模型是否產生過多誤報或漏報,以及分析是否夠快,是否能支撐業務所需。從現實世界角度測評模型很重要。DNS樣例中,你應測試模型能否減少公司內部產生的惡意DNS查詢請求的數量。
6. 監測與持續改進
測試過程可能持續數周,一旦測試完成,就是時候將模型應用到生產中了。但是,必須認識到,這些模型需要持續的監測和改進。這與部署殺毒軟件不同,殺毒軟件你每隔幾周就會收到可用于更新的病毒特征碼。模型則需要持續監測以確保能符合公司抵御惡意DNS請求的目標。