京東安全經理李學慶跟我們分享”互聯網應急響應中心建設與運營”。
李學慶:大家好,我是來自京東商城的李學慶,現在在京東主要負責安全測試中心和安全響應中心。我2011年入職京東,當時京東對于安全來說也是空白,一點點來做。
京東的理念是讓購物變得簡單、快樂!
為什么今天我要分享這個議題呢?我在去年到現在為止都有很多公司問我,學慶,當我發現一些漏洞的時候,這些漏洞已經在其他平臺傳播了,這對公司的影響非常不好,應該怎么把安全響應中心搭建起來,后續如何運營?今天借此機會和大家一起分享一下安全響應中心如何搭建和運營。
現在為止各個互聯網公司,包括電商公司,已經陸陸續續在開始搭建自己的安全響應中心。最開始就是騰訊的”二胡”是最開始搭建平臺的,當時也給行業里面做了一個領頭的模范作用。等它做出來之后,對大家的影響很大,但是對這個平臺爭論也非常多,最終走到了現在,也對于自己的平臺、對于自己的公司做了很大的貢獻。包括阿里、百度,還有后續跟著的攜程、網易都在慢慢把自己的平臺建設起來,建設起來之后,可能大家想到了一點,就是說這個平臺到底做什么?它的初衷到底是什么?
安全響應中心建設初衷:1、投遞無門的企業入口。當所有外面的一些黑客,外面做安全的人,發現這個網站有漏洞的時候,他沒有地方去提,也不知道給誰,所以就會想到一些辦法,比如有一些微博賬號,用微博一種宣傳的力度去告訴別人這個網站現在有一些安全問題,這樣進行傳播,但是在這個過程中可能給自己的公司造成一些不好的影響。2、所有的安全漏洞對于安全來說應該有一些價值的,所以在這里面需要有一些產出比,作為一個甲方公司、作為一個互聯網公司、作為一個電商公司,需要合理的去兌換別人創造的這個價值。3、需要回收外界一些安全風險,可能京東現在樹大招風,時不時有一些安全風險出來。2010年也沒有安全中心,安全部門也是剛剛成立,在這種時候有很多其他的平臺,包括一些其他人員在發一些京東信息的時候,包括有一些惡意炒作的時候,就會給京東帶來很大的影響。這種影響不僅僅是技術部門成本上的增加,還包括其他部門配合,非常非常多的成本。我們需要去回收未知的一些外界風險。4、招納賢人的專業平臺。圈里安全人才本身特別少,特別稀缺,這些技術比較不錯的又全部被BAT挖走了,這樣就會帶來很多人才吸納不到自己公司的,所以我們也需要這樣一些平臺,這些人熟悉我的業務的。我們也是在自己平臺里面找到了一些對于京東業務非常了解,而且他的專業技能非常不錯的人才,現在已經是入職京東了,所以是非常好的平臺。
如何建設安全響應中心。
在建設安全響應中心中一些重要的節點,需要去注意的一些事情。
1、要建立安全響應中心的前提就是要先了解自己公司有哪些業務;2、需要把所有的業務做一個定義級別;3、評分標準;4、響應流程;5、業務自檢。
1、梳理業務。
不是簡簡單單運維把他的一些信息給你,你用他的信息去做一些事情,不是這樣去處理的,而是你作為一個安全部門,作為一個安全響應中心成員,把業務按照域名和IP這種方式去梳理,梳理的維度可以分成內外、部門、負責人。梳理完了之后是針對后續我們去評級和我們真正去定位這個問題是誰處理是非常有用的。現在京東開始籌劃安全響應中心的時候,把所有業務全部梳理了一遍,按照這種形式梳理出一個非常明確的列表,我們自己平臺里一直在收錄和更新。
端口方面我們一直做一些事情,哪些端口可以對外,哪些端口不能對外,這個應該非常清晰。針對于所有驚動冷知IP對外的端口都要進行監控,出現異常端口了就立即會報警,這種東西是需要有一些非常明確的列表。
如果公司的業務多的話,需要把業務劃成不同的業務線,這是京東從去年年底就開始做的一件事情,京東把自己所有的業務,包括自己子公司,包括自己合并拍拍的業務全部放在一起,現在劃成八大業務線,其中每個業務線都有自己的安全官。安全官做的事情全權負責這個業務線里面的安全提升,包括他的安全上線檢測、安全運行檢查、安全培訓,包括這個部門的安全開發、安全開發規范,這些東西全部都由這個人來做。這個明確好之后,一旦出現安全事件之后,第一個想到的人就是他。
確定業務安全接口人員。受到公司文化影響,可能會遇到這種情況,當你把這個問題提出來之后沒人理你,或者你把這個問題提出來之后,等到一個星期或兩個星期才能響應,這對于安全問題是不允許的,當出現安全問題的時候,第一時間由這個業務接口人,由這個人全權去掌控這個部門安全上面的一些漏洞修復進度,需要他去管控。需要把這些東西梳理好之后,才能再往下做。
2、定義級別。
對于自己公司來說應該會有一些內容,可能會有自己一些級別的判斷,對于安全來說也是一樣,可以結合自己公司業務的分級再做一些安全的分級。
內外網是比較重要的,如果這個業務是內部的,優先級稍微往后排一排,只要對外的,即使是非常簡單的網站,也是影響級很高的。上面跑的是什么業務?京東跑的www主站,如果上面出現特別小的一個問題,需要第一時間去處理。交易,涉及到交易的,每一個流程都需要探討它的優先級是什么,特別是有支付還有電商的一些平臺,對于這種東西應該是非常敏感的。支付、交易、賬戶方面,公司規模大一些都會把這些東西單獨拎出來,比如賬號方面,京東會有一個部門專門做它的風控,支付也是專門有人去搞,交易是專門有一個大的部門負責,包括一些詐騙的事情都會負責
影響。這個網站如果出現問題以后,對公司的影響到底有多大,這個需要權衡。權衡好了之后再把這個東西定級,這個東西到底是哪個級別的。京東也有級別的劃分,現在是針對于級別P0、P1、P2去排的,P0是最高的,包括京東6.18的時候,當時老板為了出現問題之后,問題跟蹤效率提高,專門建了一個群,出現問題馬上進行解決。當你知道哪些是屬于自己的一些核心系統的時候,才知道哪些是需要你去快速響應的,這是需要提前定義好的。
3、評分標準。
每個公司的評分標準都是不一樣的,可以根據自己公司的一些業務定,現在每個公司可以根據自己公司的一些業務情況。現在整體來看,第一排行比較高的評分標準是騰訊,其次是阿里、京東相對來說比較高一些。上面領導非常重視這件事情,覺得這個做完之后是有價值的。但是大家也要記住一點,每做一個評分標準里面的內容都是真金白銀,需要自己公司里面部門的預算或部門長期的一些展望定制好。定制好之后,這個評分標準需要對外做一些宣傳,而且要把這個東西直接給公示出來。如果開始建設平臺的時候,建議做一個相對保守的評分標準出來,當這個平臺在線上運營兩三個月,OK,比較穩定了,知道我們自己公司的漏洞到底趨于什么方向、什么級別比較多了,把這些東西定義好,這個積分是否可以考慮往上調,這是一個方法。
JSRC在去年底提出一個”三個積分帶你飛”,當時那個活動就是專門為我們后續把這個積分提升上去做的一個預熱活動,而且作為一個參考,把這個積分提上去之后,我們的漏洞會不會增加。這個”白帽子”對于我們來說是積極程度不高,還是有些漏洞沒有提上來,從這種方式能夠發現一些問題,最終這個東西應用了之后,我們發現有些嚴重漏洞就過來了,大家響應的活躍度也高了。但是在這一個月當中,評分出今年一年的預算是多少,所以后續才敢大膽把積分全部變成三類積分,這中間用寫環節需要大家去考慮,需要有些斟酌點的。騰訊開始上的時候,刷了很多的漏洞,按照這個漏洞會需要很多很多錢。這就是提前準備沒有做好,另外沒有明確的定義。如果大家在做JSRC的時候,評分標準先要定好,然后試運營,之后再考慮怎么上,這就是評分標準。
4、響應流程。
剛才提到對外如何去評分、如何做這個事情?現在怎么約束內部,怎么響應外部提交的漏洞。我們需要定義一個安全事件的處理以及響應規范,告訴大家我們公司分為哪幾個來源的漏洞,怎么去響應,應該響應到什么級別,每個級別的響應時間是什么時間,都在這里面定出來了。
京東有幾個:1、自己上線測試,和阿里是一樣的,所有上線的項目都需要經過安全部門審批。安全部門沒有測試通過的狀態是永遠上不了線的。就是上線這邊會產生一些漏洞,上線的漏洞出現以后,這是自主發現,自主發現也分高中低不同的級別,如果是嚴重,就會把這個漏洞直接抄送到他們的部門老大、他們的VP,包括我們整個大的部門的VP。
響應時間,我們針對不同級別的響應時間,嚴重是1天,高是3天,中是7天,低是14天,是這樣一個級別。但現在我們響應速度已經達到嚴重的半天就可以解決。從事件推動到業務推動,慢慢把這個東西給推起來,大家就慢慢重視起來了。
我們不僅針對于嚴重漏洞還有不同級別去定義,其中我們針對于嚴重漏洞會單獨發出一個郵件,這個郵件抄送人員級別是非常高的,技術研發管理部的老大,包括CTO都會被抄送到,包括我們現在每周都會自己發現、外部發現,都會去抄,這樣就會把安全的工作推上一個階段。
例行檢查,發現一些嚴重問題的時候,突然有一天出現一個IP啟用了,之后開了20多個口,發現漏洞,第一時間短信就會發到我們手里,因為這種東西是非常嚴重的,嚴重的問題就需要有這樣一個表格。如果這個問題解決了,誰來響應這個事情,漏洞的描述,包括漏洞截圖都會在里面寫的非常詳細。基本上有這樣一個詳細的列表出來之后,有這樣一個推送抄送機制出來以后,我相信沒有任何一個部門會看到他的VP能看到的郵件而不去想這個事情的。當你用這種方式去推動這個事情來建立響應規范之后,就能夠建立好內部的響應流程,這就是根據響應流程需要做的事情。
5、業務自檢。
如果你現在上一個新平臺,積分兌換也都可以,很多人如果關注過來了,恨不得把你的預算全部一天刷光,就會出現這種情況。大家做的一個事情是需要自己去做一些針對于所有業務的檢查,包括業務梳理,當梳理完之后,先對我的外部系統、重要的業務進行檢查,然后再進行P0、P1、P2級的檢查。
手工排查。可能有一些重要業務需要手工去看,有沒有業務上的一些問題。容易出現的一些問題,出現水客攻擊,這種容易被刷爆,應該去定位一些基礎通用的安全漏洞,在你公司整體的排查力,不要被別人刷單。
工具檢測。現在有很多比較成熟、安全的一些工具,可以針對自己所有業務進行統一排查,很多人做這個事情都怎么做的?今天上班了,我在家里面部署的幾臺虛的服務器,在每臺上面部署一個安全攻略,然后去跑,回家之黑就直接看有哪些漏洞,然后提交上去,非常低廉的方式。但是這種方式針對于自己公司來說可以把這個東西杜絕,所以需要提前把這些工作全部做到位,包括手工和工具上的一些檢測,把這些問題全部修補以后再去考慮這些事情。
如果手工和工具都沒有一些思路去做的話,現在有一些比較成型的眾測項目也是比較不錯的,可以投入少量費用,先讓大家去評估一下安全風險,真正了解安全風險以后,把問題修復之后才有膽量去考慮這個東西我什么時間去推,什么時間正式上線。
當把這些所有內容都已經做好之后,可能就可以對外去發布了。發布之后后續就會遇到一些事情,怎么去響應外面的一些流程、響應外面的一些漏洞,這里涉及到運營。不是發現這個漏洞之后去處理,真正安全響應中心不僅僅是梳理漏洞和處理漏洞,有很多事情可做。這里給大家解讀一下:
第一,安全響應中心提交過來的漏洞一定要7×24小時,一定要跟接報平臺做一個監控。現在京東對于所有外部接到的漏洞都會第一時間發短信過來,而且可以看到它的級別,包括一些第三方的平臺都是第一時間。但是不管是幾點發過來的短信,我們有專門的安全人員會對它進行判斷,如果是夜里2點發現嚴重漏洞,評估是嚴重,OK,進行處理,這是必須第一時間去處理的。一定要及時響應JSRC當中提報過來的漏洞,而且提前保證有人跟蹤這個事情。當發現有漏洞之后,第一個要去識別它是哪塊業務,然后再去看這個漏洞應該哪個業務線的負責人去處理,這就是他們做的事情。
第二,及時溝通。漏洞到自己平臺之后,需要和白帽子直接做一個簡單的交流溝通,到底是怎么發現的。其實這個過程不是我們要把這個漏洞直接拿過來或者怎么樣,需要有自己的一些沉淀,針對于你發現這個問題之后,它的思路到底是什么樣的,需要你去掌握,放到自己解決方法當中去。
針對于平臺當中統一官方語言回復模式也是非常有必要的,前段時間有一篇文章中寫到這一點,統一官方語言回復模式。每個人員自己對外的語言不是特別標準,所以出現外界媒體、外界其他比較官方人員的轉播,使事態比較嚴重,所以我們就需要有一些官方的回復。
如果有異議,千萬不要去評漏洞,白帽子覺得是一個嚴重的漏洞,內部覺得是一個低的漏洞,本來能評4500元,結果評了以后只能拿到500元,這樣雙方容易造成矛盾,這些時候需要有官方人員把這個問題解決掉。我們專門有漏洞評審人員,覺得這個東西有歧異的話和白帽子人員溝通,再有歧異就有安全專家和白帽子進行技術方面的交流。
針對于自己平臺一些白帽子需要怎么去做?需要維系自己一些白帽子。因為他們能為你們找出一些安全上的問題,這是很多其他公司沒有這個平臺是做不到的,所以需要去分析平臺的白帽子的區域,應該在哪塊搞一個沙龍,讓大家有一個在線上交流的方式。我們現在平臺做到一點,我們所有白帽子的分布區域,包括每個區域提交漏洞的質量、提供的價值是多少,我們都在里面分析出來。今年舉辦了兩次安全沙龍,就是我們從上面選出來的,按照TOP來排的,第一個在哪,第二個在哪,這樣去排,來維系我們自己的白帽子,來看看我們白帽子在哪塊,跟他們去溝通。
第三,及時將近。當所有的漏洞提交到你自己平臺的時候,要做的事情就是及時去改進這些問題,包括怎么去處理,京東有自己的一個平臺,叫”菊花臺”,包含漏洞類型,包括獲得的積分,誰提交的,提交時間。我們針對于不同級別的漏洞,給它定一個時間,當一個嚴重漏洞出現之后,應該是一天解決的,到了一天的70%了,就可以給這個人發警告,告訴嚴重漏洞沒有處理完,如果這個漏洞已經到達百分之百了,直接會把這個東西上報他上級領導,這個東西已經超時了,必須緊急處理,如果不處理,需要你們部門最高領導去回復你,告訴你這個問題為什么沒處理。
針對所有的漏洞會有一個狀態,當提交之后會讀取修復狀態,當解決的時候會變成解決,關閉的時候會變成關閉。
第四,及時跟蹤。所有的狀態白帽子都是可以看到的,包括處理、修復,這個問題是否已經忽略,包括每一步是誰處理的都會在這里面去記錄,這個評分是誰給的也都會有。這樣才能保證能夠快速、準確把這個問題解決掉。
及時跟蹤只是我們針對這個漏洞層面去跟蹤的,下一個跟蹤是針對于JSRC可以運營的跟蹤,今年針對于JSRC投入的多少錢,成本是多少,需要去考量,包括現在漏洞的價值是否已經超越了整體一年價值的預算,需要有一個考量。我們現在做的一件事情,每天都會把JSRC所有運營情況發給我這邊,把每天、每個月的漏洞價值的趨勢,到底超沒超我們的預算,這個需要算出來的。如果最近一段時間漏洞價格一直在往下降,證明我們運營上面是否出現問題了,就需要有些活動,是否調研一下白帽子對京東這邊有什么想法。這是有一個針對自己平臺的參考。這只是簡簡單單可以根據自己的平臺建立一些其他維度的標準。
第五,及時沉淀。我們需要有一個東西把JSRC里面的內容沉淀下來。因為我們花了很多很多錢在JSRC上面,我們拿錢去買外界提交給我們的漏洞,這些漏洞我們怎么去轉化成自己的一些財富,需要我們自己去做,所以需要有一些東西及時去沉淀。我們針對于JSRC提報過來的漏洞,新的思路、新的檢測方法,包括這個漏洞是否可以加入到安全規范當中,都會沉淀下來。
我們針對于每一個漏洞,當這個漏洞超出當天價值百分之多少,自己公司可以定一個值,當超出這個值以后,我們分析這個漏洞超出的根本原因是什么,如果這個根本原因是由于自己內部員工檢測失誤的話,必須需要去調整內部一些檢測的策略,包括人員分析、后續改進措施、負責人,每天改進的進度都需要在這里面寫出來。當有這樣一個循序漸進的方法去運營、去建設這個平臺之后,才能把所有外界JSRC提報過來的漏洞真正轉化成內部的一個平臺,能豐富內部知識。首先從建設到運營到沉淀,把這一套東西做出來,才是一個非常好的安全響應中心。這樣做完之后,才有底氣去和老板要一些資源,才可以去和老板說一些我們現在的一些成果。
JSRC平臺對于一個企業來說是非常寶貴的一個財富,既然有這樣一個財富的平臺,為什么我們不能借著這個平臺去做一些對于我們內部豐富和加強內部安全能力的一些事情呢,所以黑鍋就:當這樣平臺的運營人員是幸福的,就像一個圖書館(圖書館的威力,你們都懂得!)
如果大家覺得這個平臺可以在自己公司試運行的話,大家可以真正去實踐它。