看三家不同企業(yè)如何令開發(fā)與安全團隊無縫協(xié)作:微軟、威瑞森和 Pokémon Company(口袋妖怪公司)。
開發(fā)團隊與安全團隊之間的關系總是容易引發(fā)論戰(zhàn)。安全團隊會在涉及數(shù)據(jù)和系統(tǒng)防護的問題上將開發(fā)人員視為惹麻煩的人,而開發(fā)人員則常常把安全團隊當成打斷自己工作流的人。
如果公司沒能創(chuàng)建開發(fā)和安全團隊之間的協(xié)作環(huán)境,沒能為安全和開發(fā)團隊樹立共同目標,那二者互相看不順眼再正常不過。缺乏為共同目標協(xié)作的文化,兩支團隊難免彼此沖突。
DevSecOps 是安全成為開發(fā)過程組成部分的一種方式。該方式要求開發(fā)人員和安全人員相互理解和尊重各自團隊的工作。成功的 DevSecOps 過程會減少兩支團隊的壓力,避免漏洞被無意間引入代碼。
本文分析的三家公司,微軟、威瑞森和口袋妖怪公司,都有各自不同的商業(yè)模式和安全需求。但三者均得益于在內(nèi)部開發(fā)過程中采取了 DevSecOps 方法。
威瑞森開發(fā)者儀表板提供漏洞可見性
向云端遷移的過程中,威瑞森 IT 部門的 AppSec 團隊需要一種方法來推動安全 DevOps 操作。他們還想要在公司內(nèi)部驅(qū)動企業(yè)文化的改變。應用安全 IT 總監(jiān) Manah Khalil 解釋道:
我們需要更可持續(xù)性的東西,可以幫助我們的中心化團隊構(gòu)筑更大影響力,同時又不會給 IT 應用團隊增加太多負擔。
為完成這些目標,他們采用了 DevSecOps 方法,但依然需說服開發(fā)者接受這種方法。為推進此方法和培育安全文化,威瑞森創(chuàng)建了開發(fā)者儀表板程序。該程序?qū)⒙┒垂芾淼募夹g方面與個人責任相結(jié)合,幫助將安全思維灌注到公司開發(fā)人員腦中。
開發(fā)者儀表板是對威瑞森業(yè)務應用中漏洞引入方式的集中式實時記錄。該程序監(jiān)視 2,100 個程序(萬行代碼級),跟蹤記錄掃描頻率、結(jié)果和每個應用中漏洞的類型及密度。開發(fā)生命周期中漏洞引入的位置和引入者均可由此呈現(xiàn)。
通常,你可以測量軟件中的漏洞數(shù)量和密度,但這些東西怎么與安全文化關聯(lián)起來?你手上的儀表板太多了:有關注構(gòu)建質(zhì)量的,有觀測代碼質(zhì)量的,有查看新構(gòu)建生成、測試和部署頻率的……但這些很大程度上不過意味著待辦事項列表。我們試圖將之作為尋求改變和安全文化轉(zhuǎn)變的一種方式。
該儀表板從多個源頭拉取信息,包括資產(chǎn)管理、學習管理系統(tǒng) (LMS)、版本控制、代碼分析、集成開發(fā)環(huán)境工具、第三方掃描工具、配置數(shù)據(jù)和 Web 及防火墻日志。Khalil 認為,我們在該開發(fā)者儀表板中打造的每一樣東西都是為了做出改變,然后量化該變動的。
此開發(fā)者儀表板能夠提供威瑞森漏洞風險的綜合視圖,就可能給業(yè)務引入的風險為開發(fā)者提供近實時反饋。還有助于為個人和公司帶來更長期性的改變。
經(jīng)驗:找辦法增加能讓開發(fā)人員變得更好的自主權和機會。命令開發(fā)人員修復漏洞不是可持續(xù)的方法,僅僅短期內(nèi)有所幫助。持續(xù)給予開發(fā)人員即時反饋能使他們找出提升技術的方法。
口袋妖怪公司從設計上擁抱安全,保護兒童隱私
2016 年《口袋妖怪 Go》手游的大獲成功給口袋妖怪公司同期帶來了責任問題。看到 8 億下載量,而且其中很多還是兒童下載的,該公司知道:自己不僅必須遵從歐盟《通用數(shù)據(jù)保護條例》(GDPR) 等隱私標準,還必須向憂慮的父母展現(xiàn)出能夠守護好孩子個人數(shù)據(jù)的可信賴感。這意味著必須創(chuàng)建通行整個公司的安全文化,包括開發(fā)部門。
《口袋妖怪 Go》由拆分自谷歌的 Niantic 開發(fā)。游戲運營由兩家公司共同承擔??诖止緡H的信息安全總監(jiān)兼數(shù)據(jù)保護官 John Visneski 稱:他們控制應用上執(zhí)行的東西,控制一定比例的后端,我們控制《兒童在線隱私幫助法案》(COPPA) 合規(guī)相關的一點后端。
但這只是數(shù)據(jù)拼圖的一部分。不僅僅是《口袋妖怪 Go》,該公司其他應用、實體交易卡牌游戲的當面對戰(zhàn)、某些視頻游戲等也會收集用戶數(shù)據(jù)。
目標不是我可以說 ‘好的,我們可以收集這些’,或者 ‘不行,我們不能收集那些?!?而是要在整個公司內(nèi)樹立起安全文化。最終,員工不知不覺中就成為了隱私和安全專家。
Visneski 覺得這比簡單地讓安全充當反對者更能被公司里其他部門的人接受,參與度更高。他說:我們的安全哲學是:首先是業(yè)務促進者,然后才是安全專業(yè)人員。
我們試圖確保提出的第一個問題不是關于風險的;這不是什么威脅或花哨工具的問題。我們首先想的是公司需要什么、業(yè)務目標是什么,我們的技術團隊怎樣讓業(yè)務更有效、更高效?
這種思維方式可以防止安全人員僅僅被視為阻止業(yè)務人員做這做那的人,讓安全團隊成為業(yè)務人員想要在會議上看到,能夠幫助他們達成目標的人。
該公司啟用 Sumo Logic 就是安全成為業(yè)務促進者的一個樣例。該日志管理與分析提供商主要是為安全分析功能而引入的,但現(xiàn)在整個公司都在用,包括 DevOps 在內(nèi)。Visneski 稱:我們的第二大用戶是在我們游戲工作室干活的那些人。這就讓我們得以將數(shù)據(jù)安全集成到全公司,切實驅(qū)動業(yè)務流程。
經(jīng)驗:安全需被開發(fā)者視為驅(qū)動力和合作伙伴。如果安全團隊與開發(fā)團隊都具備 “從業(yè)務出發(fā)” 的思維方式,那他們就更有可能在開發(fā)和漏洞測試過程中協(xié)同。
共享信息、最佳實踐將微軟的開發(fā)與安全擰在一起
軟件巨頭微軟認為自己在開發(fā)與安全運營上達成了共同目標,而這一共同目標為其內(nèi)部及商業(yè)軟件和服務構(gòu)筑了更好的安全。
微軟的方法很簡單,建立在持續(xù)的良好培訓和溝通上。但執(zhí)行該方法并不簡單。該方法的執(zhí)行需要兩支團隊的認同、持續(xù)的培訓、有效溝通,以及最重要的,得到高管層的認可。
微軟 CISO Bret Arsenault 表示,最初,他們提出了安全開發(fā)生命周期,就是在盒裝產(chǎn)品中做威脅建模和代碼質(zhì)量保障的方法論。然后,2008 年,開始做在線服務?,F(xiàn)在,他們的安全工程團隊既做運營安全,也做服務和產(chǎn)品安全。而且每月都對每個團隊進行安全審查,確保安全無處不在。
這些團隊在紅區(qū) (Red Zone) 會議上分析安全最佳實踐。Arsenault 稱:我們相互采用對方的[最佳實踐],既有技術,也有經(jīng)驗和能力。
缺乏理解和糟糕的溝通會給安全和開發(fā)團隊之間的關系蒙上陰影。兩支團隊需要共享知識,需覺得能相互幫助達成共同目標。為此,微軟創(chuàng)建了 Strike 培訓項目。微軟云和 AI 部門安全工程副總裁 Bharat Shah 表示,改變并推動文化——改變 DNA,是通過教育和一系列行為與評估達成的。
微軟從三個角度看待該改變。首先,通過業(yè)務執(zhí)行標準培訓所有員工,其中總是包含安排培訓。緊接著就是微軟所謂的 “安全地基”,讓他們能在更深層次上為所有員工解決安全問題。
第三層添加了專為所有微軟工程師設計的 Strike 培訓。這是閉門培訓,帶領微軟工程師了解攻擊者所作所為,幫助他們理解全局威脅態(tài)勢。
這些 Strike 培訓讓開發(fā)人員和工程師理解微軟安全事件背后的原因、黑客使用的技術和戰(zhàn)術,以及自己可用的工具。其目標是幫助他們打造一張同事與資源網(wǎng),讓他們能夠用來確保安全嵌入到自己所做的每件事中。
你怎么確保你的代碼、身份、密碼和其他所有東西都做對了?我們是非常規(guī)范的。
Arsenault 將培訓視為把 IT 和安全黏合到一起的關鍵因素,但運營團隊月度審查、微軟管理和評估風險的方式,以及該風險評估如何從工程師上報至董事會和風險管理委員會,才是讓這一切有效運作的東西。
每月一次,我老板會審查安全記分卡,每張都指導并推動你認為對團隊來說重要的東西。這是一種由上至下的文化,培訓則在由下至上層面上的。
Shah 團隊中的安全保障專家查看代碼中的錯誤和缺陷,查閱所有核心審查。然后他們會將自己看出的東西轉(zhuǎn)至工程團隊其他成員,某些情況下有助于清除整理漏洞。Shah 表示,有時候,他們會把發(fā)現(xiàn)的東西推回工具組或編譯組,甚至推回靜態(tài)分析之類的東西里,僅僅是為了在更大的范圍里捕獲這些漏洞。
Shah 及其團隊所做的很大一部分工作是為微軟的工程師構(gòu)建安全服務,讓他們能夠?qū)踩?“融入” 他們的工程過程和系統(tǒng)里。
最重要的是,我們構(gòu)建這些高精度的服務幫助我們的工程師做對安全。
這些服務中有一個是解決漏洞管理和掃描的。Shah 稱,Azure 上超過 90 個數(shù)據(jù)中心,幾百萬臺虛擬機。自己不可能一次掃描一臺虛擬機,所以他們構(gòu)建了大規(guī)模漏洞掃描基礎設施,只要有必要,可以一天大范圍掃描兩次、三次乃至四次。這使得微軟的工程師可以快速找出并修復未打補丁的虛擬機或服務。
Shah 團隊里的工程師就像其他微軟團隊里的工程師一樣構(gòu)建大規(guī)模服務。站在這個角度上說,安全變得有點令人討厭,也更能理解。再加上安全人員分享的威脅風險,工程團隊能夠明白為什么他們需要帶著安全思維開發(fā)。
經(jīng)驗:安全和開發(fā)對各自所做工作相互了解越深,開發(fā)過程中他們的共情和協(xié)作就會越好。最終產(chǎn)品中的漏洞會更少,修復也會更快。