Pivotal數據科學了解一下
數據科學是一個蓬勃發展的行業,有人將數據科學家稱為「21世紀頭號性感職業」。從人們意識到數據的重要性以來,數據科學技術逐漸成熟並且帶來了出色的成果。越來越多的企業都意識到大數據分析(Big Data),人工智慧(AI)以及數據科學(Data Science)在商業運行中的重要性,甚至許多諮詢公司都將研究和數據科學作為他們的重要競爭力。在如此強大的市場需求下,數據科學以及相關技術領域近幾年來出現了各式各樣的發展。我們也同時看到很多數據科學家在各個專業和學術領域的成長。
Pivotal數據科學團隊
Pivotal的數據科學團隊成立於2010年,目前全球有200多個客戶,協助用戶將他們的商務需求落地為實際案例,並為客戶提供敏捷式的數據科學服務。Pivotal數據科學團隊是一支成熟的團隊專門於協助用戶建立自主式的數據科學應用。
Pivotal數據科學家與一般諮詢公司不同之處在於,我們「授人以漁」而非直接「授人以魚」。一般情況下,傳統諮詢公司會在用戶端賺取項目的費用,但Pivotal的數據科學家則不然。
Pivotal的數據科學家通過與客戶共同參與1-2個項目,並在項目中教授用戶數據科學知識和技能,這樣一來用戶就可以自己獨立做分析,真正脫離我們的幫助,而這是衡量我們成功的標準。我們希望客戶能夠自己掌控自己的數據,不用一直委外。
Pivotal實現這個目標的方法之一就是結對。結對為我們提供了知識轉移的絕佳環境:兩個數據科學家同時工作,一位來自Pivotal的數據科學家,一位是客戶的數據科學家,兩個人一起做數據項目,這就成為了一個非常有效的現場實地培訓方式。
Pivotal 數據科學的宣言是:推動業務一致的創新,加快客戶實現價值和投資回報的速度。一流的數據科學服務,推動客戶在Pivotal技術中的採用和自主權,同時重點關注知識轉移;與Pivotal的數據工程師、產品經理、開發人員和設計師合作構建數據驅動型應用。
橫向移動監測
在具體介紹數據科學案例之前,讓我們先描述一下攻擊黑客是怎麼來做的。
APT攻擊鏈
高級持續性威脅(APT)攻擊鏈有5個步驟:
尋找釣魚攻擊目標;
遠程惡意工具訪問用戶機器;
黑客可以訪問重要用戶、服務、管理賬戶及特定系統;
從目標伺服器獲取數據並分階段進行排除;
將數據導出,即發生了數據泄露。
通過與客戶進行溝通,我們發現這些黑客在第三步,也就是APT殺傷鏈中的橫向運動中,會留下了很多的小腳本,尤其當黑客入侵公司網路的時候,不同的數據源會暴露黑客的蛛絲馬跡。我們在這種情況下會用很多的橫向運動來進行了解黑客的行為。
什麼是橫向運動?
橫向移動是指攻擊者在搜索關鍵資產和數據時逐漸通過網路傳播的各種技術。
橫向移動攻擊體現了「有針對性」的攻擊和簡單化的「粉碎-搶奪」攻擊之間的最大區別。橫向移動是攻擊者不控制連接兩端的階段之一。當攻擊者控制連接的兩端時,例如命令控制或泄漏通信,它們具有令人難以置信的靈活性和隱藏交通的方式。但橫向移動使攻擊者處於更傳統的攻擊節點和目標的位置。這種單方面的方法迫使攻擊者暴露自己,並為安全性提供了探測威脅的絕佳機會。此外,攻擊者可以在受感染的主機之間進行切換,以便更深入地反彈到網路中。這個執行內部偵察、將有效載荷傳遞給連續主機的過程通常是網路橫向移動的明確指示。
除了深入挖掘網路之外,橫向移動還為攻擊者在受損網路中提供了額外的控制點。即使他們在最初受感染的機器上被發現了,這些回退位置能夠讓攻擊者保持永久性。
檢測橫向運動
事實上,入侵者是準確模仿用戶行為的。我們要做的是限制其停留時間,即初始違規和糾正措施之間的時間,這是減少損害度的關鍵,因此迅速檢測橫向運動是防禦者回應的重要部分。根據對方的可能計劃預測攻擊情況,可以讓組織預測到攻擊者為獲取高價值目標而可能採取的行動。
了解攻擊者之前的路徑,安全專業人員可以開始預測他/她未來的路徑。預測未來運動的能力對於包含橫向運動和縮短停留時間至關重要。 網路安全團隊能夠更好地預測下一步攻擊並將其隔離。安全專業人員可以確定他們應該採取的步驟,例如使某些資源離線,或通知用戶注意異樣行為。
基於規則的方法會錯失關鍵行為
靜態的規則是不完整的。
現有的發現策略違規的方法是使用基於靜態角色或規則的主體(用戶)和對象(資源)之間的關係模型。如果某個特定的主體-客體組合違反了一個條件(通常用SQL表示),就會發出警報。舉個例子,現有一條基本規則允許用戶訪問資源、文件。但是,訪問策略開發人員沒有考慮環境或情景參數(例如時間和地點),於是乎,在正常營業時間訪問敏感系統是合法的,但如果用戶在凌晨3點或3000英里之外訪問同一系統,這時候這是合法還是不合法的行為就難以判斷了。
更何況一位員工在公司里可能不止一個角色:他可能既是員工,也是客戶,既是受益人也是債務人。這些身份可能不會鏈接到企業的資料庫中。根據不同使用的身份,訪問給定系統,如果要對所有這些身份的場景進行手工建模是單調乏味且容易犯錯的。
用戶不是由程序化的訪問模型定義的,而取決於他們的行為。靜態規則對行為是盲目的。它們沒有考慮到企業活動的動態性和對運營靈活性的需求。也許你會說我們可以編寫例外情況,但在地域,用戶和資源之間增加例外,是會造成不斷增加、需要手動維護的政策邏輯混亂——而這正是管理人員試圖通過身份管理自動化來避免的。
橫向運動分析
最常用的一種方法是進行圖表(graph analytics)以及集群(clustering)和路徑(path analytics)的分析等方法來了解具體的情況。
正常用戶
在這個圖表上我們進行了一個可視化的操作。橫坐標是時間,縱坐標是伺服器。首先,比如一些正常的使用,可能會有很高的被攻擊的風險。在這個用戶上我們可以看到,在不同的時期,使用的是同一個單一的機器。在底部有一個分數,把它和一個非正常的行為進行對比,在這裡可以看到不同。
非正常用戶
在不同的時間點我們可以看到單一的用戶會有不同的信息獲取,進入不同的機器,而且它基本上對所有的這些設備都進行了訪問,獲取了信息。這和我們所說的橫向運動的風險相關,而且我們可以看到它的分數突然一下子上升了,尤其是在用戶使用了不同設備的時候,那個分數就突然一下子上升了。不需要讓監察人員每天都對這個數據或者對這個圖表進行分析,我們會有一個分數,有了分數的話,這些操作員他們可以更好的預警並處理這種情況。根據不同用戶的分數排名,分析者只需進行一些深入的調查特殊的或不正常的行為,如果行為正常的話就不需要過多的關注。
信用卡的惡意使用識別
在這個案例中,主要問題是要識別惡意企圖。利用信用卡信息,識別出信用卡的用戶,了解其可能會遭受到惡意使用的可能性。
對於信用卡公司來說,惡意企圖指的是開戶人申請信用卡後,在未來幾個月內都保持良好的信用記錄。過段時間後,用戶向銀行申請提高額度,鑒於其過去幾個月內及時還款的記錄,銀行信用卡中心經過審核同意提升該用戶的額度。但是這個用戶在刷掉了提額後的信用卡額度後,拒絕還款並消失了,這對於銀行來說是一筆損失。而我們數據科學要做的就是對這個詐騙進行偵查,以減少銀行的損失。這個銀行關注的是零售的信用卡,很多機構都有終端後台,通過跟客戶進行溝通,能夠識別出這些惡意企圖。每年可以幫助該銀行節省四億美元的收入。
DS Workflow
最開始的時候,我們對一些用戶進行採訪,了解到大概有兩種不同的數據。一種是靜態的數據,一種是行為的數據。靜態包括賬戶 、年齡,以及申請者的社會保障號、地址等等,行為的數據主要是用戶在開了信用卡之後的數據,比如說他買什麼樣的東西以及不同的交易等等這些方面的信息。之前銀行只是關注靜止的數據,而行為的數據能提供一些附加信息,進行詐騙檢測。
通過對這些所有的信息進行梳理、分析、建模:首先對靜態數據和行為數據進行採集,並建立模塊。比如說用決策樹這樣一個演算法,對於每一個信用卡持卡人都有一些預測風險評分。有了風險評分,就可以對持卡人根據他的信用評分來確定他的風險,看有沒有進行欺詐的可能性。
然後把用戶的行為數據納入到整體的數據模型當中,這裡就需要用到Greenplum,利用Greenplum匯入並集中多個數據孤島建立單一視圖分析模塊,銀行根據整合後的信息進行整體的評分,來進行預測風險。
數據科學團隊運用Greenplum,對行為數據和靜態數據進行整合,建立一個通用的系統,進而可以敏捷地得到結果,對信用風險進行評分,可以幫助客戶進行操作的分析。客戶用這些模型和分析,一年能夠節約四億美金。這對於公司來說是一個快速致勝的方式,也可以用在生產環境當中。
平台和工具的組合以及和流程的組合,共同帶來了這樣的解決方案。使用Greenplum可以更快的得到結果,可以在很短的時間內進行計算和迭代,得到高品質的模型。同時,它也是一個可以做持續的集成。讓數據科學家團隊的工作非常有效率,透過Greenplum內建多個彈性分析套件,可以做持續的集成、測試,不僅僅可以快速的創建這些模型,還能夠確保模型高品質的產出,還能夠提供培訓,對客戶的數據科學家進行培訓,可以幫助他們在未來做出更好的檢測。
如何開啟數據科學之旅呢?
有兩個研討會會對大家大有幫助: 一個是路線圖的研討會,主要是針對剛開始做數據科學的客戶,他們不知道從哪開始,需要哪些支持。在這個的研討會上,少長咸集,會有客戶端的業務代表,探討找到數據科學的機會,並且利用這些案例提供給業務領導者。一旦找到機會之後,就可以對客戶進行訪談,了解他們的業務價值和可行性,然後針對每一個用戶案例,分析這個業務單元,對這樣的業務案例來說有什麼樣的重要性,有哪些KPI,這是非常直接的方式。這裡的可行性通常都是指數據的可用性,比如,某企業想把Twitter的數據和股市的價格關聯起來,這樣子的用戶案例非常有意思,而且也可以給業務部門帶來價值。但是如果他們手上沒有Twitter的數據,那就完全不可行了,所以就要做一些相關的評估,評估這個數據有沒有可用性?數據從哪裡來?業務的規模有多大?既要考慮業務規模,又要考慮可行性。
研討會之後,可能會有一些用戶案例,對用戶案例做一個優先性的排序,看它的可用性和可行性,還有分析的路線圖,對整個公司的案例運用。
除了路線圖的研討會之外,還要做數據科學的接觸。Pivotal在與各種各樣的客戶合作,首先都要開一次範圍會議,範圍會議的目標是收集足夠的信息,以便能夠起草可與客戶分享的提案文檔。我們還利用這段時間來確認是否為客戶推薦線路圖研討會。 Pivotal數據科學範圍與Pivotal Labs範圍界限有一些相似之處,我們也採用了適用於數據科學的Labs範圍內元素。與客戶面對面坐下來面談,也許一個半小時,也許兩個小時,面對面地溝通,尋找提案亮點, 針對客戶所感興趣的機會,以及他們想實現什麼樣的目標,包括最終用戶是誰,這些用戶案例都有什麼樣的好處,有哪樣的資料庫孤島,還有數據工程人員,軟體開發人員。使用這些數據信息,Pivotal團隊會寫出一個建議書,討論這個案例的範圍、使用、目標、價格,從這兒開始,從客戶角度來說,就可能知道做這樣的一個項目到底需要做多少工作,工作量是多少。
Pivotal 的數據科學


※GemFire與Greenplum的最佳集成實踐之實施經驗談
TAG:Pivotal |