企業安全管理(一)

wyzsk發表於2020-08-19
作者: ayazero · 2015/06/01 13:16

0x00 安全行業的第三流派-CSOs


目前在大多數行業後加入者的眼中“二進位制”和“指令碼”流派廣為人知,雖然他們是安全行業的主力軍,但除了微觀對抗之外安全是一個很大的工程,比如企業安全管理,我把他們歸入安全行裡的第三流派-CSOs,加了s跟scriptkids一樣表示他們是一個群體,這個群體從生態鏈的頂端連結著絕大多數從業者和安全廠商。

企業安全是不是發現漏洞然後修漏洞,再設定一下防火牆之類的?

假如你的公司只有一個產品,只有2臺伺服器,只有3個程式設計師寫程式碼,我認為這個說法不能算錯。不過在絕大多數情況下,企業安全遠不止於此。滲透性測試和對抗能不能算企業安全?在一個過於紙上談兵的企業我覺得這是不錯的切入點,不過區域性對抗發生於企業安全的各個場景中,他只能算是縮影,不是全貌。企業安全是什麼對傳統乙方安全公司,對新興的業務安全公司移動安全公司,對甲方的網際網路公司,對甲方的傳統公司,對諮詢顧問,對漏洞研究者,對活躍於各大SRC上的白帽子們的詮釋肯定都不一樣。

先說一下我自己的經歷,以便了解我是從什麼角度來看待這一問題的,學生時代跟現在的很多白帽子一樣玩玩滲透,玩玩二進位制,在過去那個叫幻影(Ph4nt0m)的組織裡,大學畢業後即進了綠盟做安全服務和諮詢,這是乙方中離甲方安全最近的職能,接受了綠盟對傳統安全體系和方法論教育,有些10年前的東西放到今天都還會覺得很高大上,現在的安全行業裡除了顯得有些空洞的安全標準的傳承,要麼就是很淺的木桶理論之類的外延的理解,尤其在遇到網際網路崛起時,攻防受追捧,有些東西因為沒有收到金錢的認可很多人就直接把這一部分東西給扔了或自我否定了,其實有些思想跟技術表現形式一點關係都沒有,放到今天仍然是很實用的技能。

在綠盟最大的便利並不是下班路上隨便都能找到能聊exploit技術的大牛,而是視野:從金字塔視角看到安全的整體解決方案,囊括組織、管理和技術3方面的東西,覆蓋全行業全價值鏈過程的技術方案,算上第三方的話幾乎涵蓋市面上所有的安全產品和解決方案。有人看到這些會問這不是傳統安全那一套嗎?我說且不急,聽我慢慢講,而且我可以劇透的說之後幾十篇都是圍繞網際網路企業安全的,並不打算在傳統安全上花很多篇幅,只是需要區分一下企業安全實際的狀況和某些廠商為了兜售自己的產品而宣揚的概念是有所不同的,大多數廠商都會避開自己的弱項而在市場活動及軟文上專注的強調自己擅長的概念。

離開綠盟後我去了甲方,一家大型網遊公司,08年那時將近萬臺的物理伺服器分佈於30多個IDC的規模似乎比當時搜狐全站的IDC規模還要大一些,跟現在一樣那時候也是社會上的公司普遍缺少安全負責人的時代,我也有幸組建了一支屬於自己的安全團隊,成為當時少數的安全總監之一,團隊的這些人現在遍佈網際網路行業的半壁江山,且都是安全部門獨當一面的骨幹。在這段時間我身體力行了從乙方到甲方視角的過渡,從零開始建立安全體系,真正把乙方玩的東西在一家甲方公司落地了,我的方法思路過程跟某些網際網路公司不太一樣,因為那時候BAT的安全人員大多是畢業後直接去的甲方,一開始就做甲方安全,而我是從乙方到甲方,所以實踐上更多了參考了乙方的方法論,除了攻防之外多線並行,直接建立較完整的安全體系,在遇到上海的網遊業被騰訊包抄整體沉淪的時候,我也失去了繼續深挖甲方安全建設的興趣。

之後我去做了一家webgame公司的技術負責人,社會俗名CTO,由安全轉向全線技術管理,說實話在這段時間裡我並不是特別重視安全,一方面跟自己是安全出身有關,另一方面這確實是屁股決定腦袋的事情,不是安全不重要,而是有很多事情比安全更重要。安全這個事情說白了就是當你有100w的時候拿出2w買個保險箱裝它們你覺得值,但你只有2w的時候要拿出8k買保險箱大多數人都會囊中羞澀。這也是我在知乎上回答的那個問題,為什麼做安全一定要去大公司的原因之一。我竊以為很多公司的CEO、CTO的對安全重視,翻譯過來應該是:被黑是一件很負面的事情,所以想找個人籌建團隊打包了,只要不出事他們就不會太想起這事,但不是心理真的認為安全非常重要,也不會當成是一種競爭力,這句話並不是在對映過去,而是當下國內那麼多對企業安全負責人的招聘在我看來也就是那麼回事。

之後我去數字公司經歷了短暫的時光,再次以乙方的身份拜訪了企業級客戶,很偶然的發現大多數乙方的顧問或工程師其實都沒有真正做過企業安全管理的經驗,雖不能把這些直接等價於紙上談兵,不過確實是乙方的軟肋,在競爭性的銷售活動中,三下五除二就“把別人說沒了”。在甲方企業高層的眼中,攻防這檔子事可以等價於我花點錢讓安全公司派幾個工程師給我做滲透測試然後修漏洞,不像大型網際網路公司那樣上升為系統化和工程化的日常性活動。

離開數字公司後我到了全球化的公司-菊花長從事產品線安全,第一個專案是雲端計算,產品線安全屬於甲方安全又跟很多甲方安全不太一樣,他比傳統意義上的甲方安全介入的更深,覆蓋率更高的SDLC,直接導向產品設計的源頭,對絕大多數甲方而言你也許在用OS的Dep&ASLR,也許在用各種容器,但你很少會自己去發明輪子,你也許會自己造一個WAF這樣的工具,但你可能很少會像微軟那樣要自己去搞一個EMET這種涉及安全機制層面的東西,但在產品線安全裡,這一切都會更進一步,不只是像網際網路公司那樣關注入侵檢測、漏洞掃描等而是從設計和威脅建模的角度去看整體和細節的安全。這又擴充了我從R&D的視角看待以及分析安全問題的眼界。

至此,我既不屬於指令碼二進位制,我也不屬於乙方諮詢顧問派,也不單純屬於甲方CSO,而是站在一個較全面客觀中立的立場,我不會說某些方式屬於紙上談兵,也不會把攻防捧的至高無上,我認為這些都屬於偏激的話。

好了,切入第一篇的正題,企業安全是什麼?

我認為它可以概括為:從廣義的資訊保安或狹義的網路安全出發,根據企業自身所處的產業地位、IT總投入能力、商業模式和業務需求為目標,而建立的安全解決方案以及為保證方案實踐的有效性而進行的一系列系統化,工程化的日常安全活動的集合。怎麼感覺有點咬文嚼字?好吧,這裡面的每一個項都會決定你的安全整體方案式什麼,哪怕同是中國網際網路TOP10中的公司其安全需求也完全不一樣。

有人也許會覺得CSO乾的活有點虛,但凡偏管理都是紙上談兵。我不直接回答這個問題,我只舉一個例子。大多數身在這個行業的人都知道社工庫遍地都是,入侵者甚至站在了大資料的維度,國內的資料庫絕大多數除了password欄位加鹽值儲存,其餘資訊都是明文儲存。而在歐美等地隱私保護是有明確的法律規定的,對映到資料持久化這個細節,就是需要滿足一定強度以上的加密演算法加密儲存,CSO就是需要制定這些策略的人,你難道說這些都是形而上學無用的安全措施麼?在網際網路公司,安全負責人是會較多的介入到日常的技術性活動中的,但隨著組織規模的擴大和官僚程度的加深,CSO不再可能表現的像白帽子一樣專注於攻防對抗的細節也是一個無法迴避的現實問題。是不是一定要說出諸如CSRF時IE和其他瀏覽器的區別這樣的問題才算是合格的CSO,我覺得這個看具體場景,對於國內排名TOP5以後的網際網路公司我覺得這個需求算合理範疇,但對於規模非常龐大的公司而言,這個需求顯然太苛刻了,比如我所在公司,CSO屬於法務類職位而不是技術類職位。

不想當將軍計程車兵不是好士兵,雖然有技術路線,不過我估計這個行業裡至少有一半以上人想過要當CSO,但是CSO這個職業又跟某些大牛們表達的不完全一致,所以下面的篇幅會繼續寫,至少在技術層面,CSO不會只停留在微觀對抗,而是會關注系統性建設更多一點。

0x02 企業安全涵蓋哪些事情


從我在綠盟所受的安全教育來看大致分為以下幾方面:

1. 網路安全:基礎、狹義但核心的部分,以計算機(PC、伺服器、小型機、BYOD……)和網路為主體的網路安全,主要聚焦在純技術層面 
2. 平臺和業務安全:跟所在行業和主營業務相關的安全管理,例如反欺詐,不是純技術層面的內容,是對基礎安全的擴充,目的性比較強,屬於特定領域的安全,不算廣義安全。 
3. 廣義的資訊保安:以IT兩個字為核心,包括廣義上的“Information”載體:計算機資料庫意外還有包括紙質文件、機要,市場戰略規劃等經營管理資訊、客戶隱私、內部郵件、會議內容、運營資料、第三方的權益資訊等但凡你想得到的都在其中,加上泛“Technology”的大安全體系 
4. IT風險管理、IT審計&內控:對於中大規模的海外上市公司而言,有諸如SOX-404這樣的合規性需求,財務之外就是IT,其中所要求的在流程和技術方面的約束性條款跟資訊保安管理重疊,屬於外圍和相關領域,而資訊保安管理本身從屬於IT風險管理,是CIO視角下的一個子領域 
5. 業務持續性管理:BCM(Business Continuity Management)不屬於以上任何範疇、但又跟每一塊都有交集,如果你覺得3和4有點虛,那麼BCM絕對是面向實操的領域。最近前有網易、中有支付寶、後又攜程,因為各種各樣的原因業務中斷,損失巨大都屬於BCM的範疇。有人會問這跟安全有什麼關係?安全是影響業務中斷的很大一部分可能因素,例如DDOS,入侵導致必須關閉服務自檢,資料丟失隱私洩露等。又會有人問這些歸入安全管理即可,為什麼要跟BCM扯上關係,做安全的人可以不管這些嗎?答案自然是可以不管,就好像說“我是個java程式設計師,JVM、dalvik(ART)執行原理不知道又有什麼關係,完全不影響我寫程式碼!” 事實上BCM提供了另一種更高維度,更完整的視角來看待業務中斷的問題,對於安全事件,他的方法論也比單純的ISMS更具有可操作性,對業務團隊更有親和力,因為你知道任何以安全團隊自我為中心的安全建設都難以落地,最終都不會做的很好 
6. 安全品牌營銷、渠道維護:CSO有時候要做一些務虛的事情,例如為品牌的安全形象出席一些市場宣介,presentation。籠統一點講現在SRC的活動基本也屬於這一類。 
7. CXO們的其他需求:俗稱打雜。這裡你不要理解為讓安全團隊去攻擊一下競爭對手的企業這樣負面向的事情,而是有很多公司需要做,但運維開發都不幹,幹不了或者不適合乾的事情,安全團隊能力強大時可以承包下來的部分,事實上我的職業生涯裡就做了不少這樣的事情。

基礎的網路安全是絕大多數在甲方的安全團隊能cover的事情,不管你的安全團隊能力如何,在公司裡有無影響力,這個是必須要做的因為這是把你招過來的初衷。再往後的發展,是否止於此則看各人的想法,對於沉醉攻防技術的人其實不需要往後發展了這些足夠了,但如果你的安全團隊富有活力和想法,即便你想止於此他們也不幹,把部門做大做強是這些人的願望,只有這樣才能給安全團隊更大的空間,因為這點跟乙方是不一樣的:對於乙方而言你可以在某個單點領域上無限深挖,而不會遇到天花板,因為你始終是在滿足主營業務的需求,即使你成為骨灰級的專家公司也會對你在某方面創新有所期待而給你持續發展的可能性,但是在甲方,安全不是主營業務,歸根結底是一個保值型的後臺職能,不是一個能創造收益的前臺職能,他是一個成本中心而非盈利中心,他的成本的大小跟業務規模以及公司盈利能力相關,公司發展時他的budget和headcount會發展,業務停滯時安全做的再好也不會追加投入,因為無此必要。反面的例子也有:做的不好反而追加投入的,那是一種政治技巧而非現實需要。

如果你在乙方的研究部,無論你的漏洞挖掘技能多牛逼,公司都不會跳出來說“你已經超出我們需求了,你還是去更NB的公司吧”(通常情況)。但是在甲方,假設是在一個國內排名大約TOP5-TOP10的網際網路公司,養一個漏洞挖掘的大牛也會覺得很奇怪,他是在給公司創造價值還是在自娛自樂是會受到質疑的,CSO也會被質疑是否花了大價錢挖來的人不是出於業務需要而是用於擴大自己團隊在業內影響力這種務虛的事。假如公司到了google這種級別,有一大堆產品,儲備大牛則是順利成章的,業務上顯然是有這種需求的,不過還是要看產出是否對主營業務有幫助,工作成果不能轉化為主營業務競爭力的嘗試性活動在公司有錢的時候無所謂,在公司收緊腰帶時則其存在價值會受到質疑。

以狹義的安全垂直擴充去發展甲方安全團隊的思路本質上是個不可控的想法,籌碼不在CSO手中,甚至不在CTO手中,而是看主營業務的晴雨表,也就是我以前微博上說的,甲方安全是要看“臉”的,這個臉還不是指跨部門溝通合作,而是在最原始的需求出發點上受限於他們。因此有想法的安全團隊在(1)做的比較成熟時會轉向(2),(2)是一個很大的領域,發展的好安全團隊的規模會x2,x3,並且在企業價值鏈中的地位會逐漸前移,成為運營性質的職能,結合BCM真正成為一個和運維、開發並駕齊驅的大職能。

BCM在很多人眼裡就是DR(災難恢復),DR其實只是BCM中的一個點,屬於下層分支。不過這對技術領域的人而言是最直觀的部分,DR在網際網路公司裡由基礎架構部門或運維主導,不過對於強勢的甲方安全團隊其實也是能參與其中一部分的,我之前也主導過這些,當然也是受到了綠盟的教育以及我的“前輩們”的啟發。有興趣的可以看一下BS25999

廣義的資訊保安,比較直觀的對映就是ISO2700x系列,行業裡的絕大多數人都知道ISO27001和BS7799.不展開了,對真正有安全基礎的人而言都是很簡單的東西。在企業裡能否做到廣義的安全,主要看安全負責人和安全團隊在公司裡影響力,對上沒有影響力,沒有詮釋利害關係和游水的能力自然也就做不到這些,另一方面,狹義安全主要對接運維開發等技術面公司同僚,但是廣義安全會對接整個公司的各個部門,對於溝通面的挑戰來說又上了一個新的臺階,似乎在我看來這主要取決於安全的領隊人物自己擁有什麼樣的知識結構以及他的推動能力如何。

對於(4),如果你所在的組織有這方面的需求,安全職能自然也會參與其中,是否刻意去發展他則看自己需求,對我朋友中某些做過IT治理和風險諮詢的人相信是有能力一併吃下的,如果是技術派我就不建議你去搞了。

(6)屬於水到渠成的事情,到了那一步你自然需要考慮,就算你不想公司也會讓你去,就像我現在明明做技術活,卻也不知道為啥會跟這一類事情掛上鉤。

(7)有人看時自動過濾了,不過安全負責人自身是否有瓶頸,能否在企業裡發展起來跟這條有很大關係,甚至有很多從(1)發展到(2)(3)的人都需要藉助(7)這個渠道,點到為止不多說了。。。

對於網際網路公司,我建議做1、2、5;對於傳統行業,我建議做:1、3、4、5。

在網際網路行業安全包括哪些內容,我覺得可以概括為: 資訊保安管理(設計流程、整體策略等),這部分工作約佔總量的10%,比較整體,跨度大,但工作量不多。

基礎架構與網路安全:IDC、生產網路的各種鏈路和裝置、伺服器、大量的服務端程式和中介軟體,資料庫等,偏運維側,跟漏洞掃描,打補丁,ACL,安全配置,網路和主機入侵檢測等這些事情相關性比較大,約佔不到30%的工作量。

應用與交付安全:對各BG,事業部,業務線自研的產品進行應用層面的安全評估,程式碼審計,滲透測試,程式碼框架的安全功能,應用層的防火牆,應用層的入侵檢測等,屬於有點“繁瑣”的工程,“撇不掉、理還亂”,大部分甲方團隊都沒有足夠的人力去應付產品線交付的數量龐大的程式碼,沒有能力去實踐完整的SDL,這部分是當下比較有挑戰的安全業務,整體比重30%+,還在持續增長中。

業務安全:上面提到的(2),包括賬號安全、交易風控、徵信、反價格爬蟲,反作弊反bot程式、反欺詐、反釣魚、反垃圾資訊、輿情監控(內容資訊保安)、防遊戲外掛、打擊黑色產業鏈、安全情報等,是在“吃飽飯”之後“思淫慾”的進階需求,在基礎安全問題解決之後,越來越受到重視的領域。整體約佔30%左右的工作量,有的甚至大過50%。這裡也已經紛紛出現乙方的創業型公司試圖解決這些痛點。

對整體介紹的部分在前面的篇幅講的比較多,主要目的是希望“視野”部分不縮水,這些概念在後面篇幅都不打算再展開了,如果你遲遲沒看到技術篇,很正常,這只是一個開頭而已。下一篇談談網際網路企業安全管理和傳統行業安全管理的區別。

0x03 網際網路企業安全管理和傳統行業的區別


總體來看,傳統安全偏重管理,“三分技術,七分管理”,網際網路行業偏重技術,我認為應該倒過來。其實這種說法也是不準確的,到底什麼算技術,什麼算管理,這些都沒有明確的定義,安全領域大部分所謂管理不過是組織技術性的活動而已,充其量叫技術管理,如果你較真這些理論那你就掉坑裡了。

先說一下傳統安全和網際網路安全的建設需求上的差異:

傳統安全:

IT資產相對固定 業務變更不頻繁 網路邊界比較固定 IDC規模不會很大甚至沒有 使用基於傳統的資產威脅脆弱性的風險管理方法論加上購買和部署商業安全產品(解決方案)通常可以搞定。 網際網路安全生態,對於大型網際網路而言,需要應對:

海量IDC和海量資料 完全的分散式架構 應對業務的頻繁釋出和變更 同時架構層面關注:

高效能 高可用性 擴充套件性 TCO(ROI) 在規模不大的網際網路公司,傳統的風險管理方法論是可以沿用的,但在大型網際網路公司傳統的方法論可能會失效,因為你可能連基礎架構上跑什麼業務都搞不清,你想理清所有的系統介面間的呼叫關係以及資料流去檢視設計風險以及設定細粒度的訪問控制就是件不現實的事情,產品線極多時業內沒有任何一個團隊敢說自己有能力支援全產品線,對於高速發展的業務,當你理清了你想要的說不定架構又發生變化了,只有對佔公司整體營收比較主要的以及培育性質的戰略級的核心業務才有必要去深入調研並隨之update,其他的還是要依靠自動化手段。

從安全建設上來看,傳統安全建設:

在邊界部署硬體防火牆、IPS/IDS、WAF、商業掃描器,堡壘機、在伺服器上安裝防病毒軟體,整合各種裝置、終端的安全日誌建設SOC,當然購買的安全硬體裝置可能遠不止這些。在管理手段上比較重視ISMS(資訊保安管理體系)的建設,重視制度流程、重視審計、有些行業也必須“等保合規”。

其實這裡還有一個很大的區別就是,網際網路有生產網路和辦公網路的概念,即便最近Google聲稱取消內網也是針對辦公網路而非生產網路,網際網路行業的大部分安全建設都圍繞生產網路,而辦公網路的安全通常只佔整體的較小比重。但是對於某些傳統公司,他可能完全沒有生產網路而只有辦公網路,他的網路安全也就變成了辦公網路的網路安全。但我推測隨著社會網際網路+程式的加速,很多傳統的公司也會有自己的生產網路,最終都變成和網際網路公司一樣的形態。所以對於那些在給傳統企業客戶提供諮詢和解決方案的乙方的同學,如果你們不學習網際網路安全,也會被淘汰。

網際網路的生產網路的解決方案基本上都是以攻防為驅動的,怕被黑、怕拖庫、怕被劫持就是安全建設的最直接的驅動力,網際網路公司基本不太會考慮等保、合規這種形而上的需求,只從最實際的角度出發,這一點是比傳統行業更務實的地方。最近也遇到一個例子,說要在伺服器上裝防病毒軟體,一看就知道是傳統行業來的思路,不是沒有真正做過網際網路企業安全就是沒被業務線挑戰過,在大型網際網路,光是效能損耗、運維成本和軟體成本這幾條就能分分鐘把這種需求幹掉,更不用進入對於伺服器防護這種更實際的話題了。很多標準說到底都是各廠商參與編寫,博弈並達成妥協,有利於自己產品銷售的代言白皮書,並不是完全站在建設性的角度的,作為乙方賣賣無腦客戶賺點錢自然無可厚非,但在真正的甲方做企業安全生搬硬套是會受到質疑並逐漸失去影響力的。

對於超過一定規模的大型網際網路公司,其IT建設開始進入自己發明輪子的時代,安全解決方案開始區域性或進入全部自研的時代,例如不會購買硬體防火牆,而是用伺服器+Netfilter的方式自建,不會部署硬體IDS/IPS,而是用其他方式來解決這個問題。其實不難理解,規模小的時候買臺硬體防火牆放在最前面,省事。但是規模大了我去買1000臺硬防放在IDC機房?光¥就受不了啊。其次,基於CAP理論和Map-reduce衍生的一系列網際網路架構,本質上都具有“無限”水平擴充套件能力,而傳統的硬體盒子式的解決方案其設計大多源於對過去體系架構的理解,基本不具備擴充套件能力,完全不能適應大規模的網際網路架構,總體上屬於相對封閉的單點式防護。在這種情況下甲方安全團隊自己動手去打造完全圍繞自身業務的解決方案也就成了必然趨勢。

自研或對開源軟體進行二次開發+無限水平擴充套件的軟體架構+構建於普通中低端硬體之上(PC伺服器甚至是白牌)+大資料機器學習的方式是目前大型網際網路公司用來應對業務的持續性增長的主流安全解決方案。是否真的到了機器學習階段這個有點難說,但是安全進入大資料時代則是很稀鬆平常的事了。

對辦公網路和僱員資訊保安管理而言,網際網路公司的文化比較open,一般不太會維持激進的安全政策,這點也是跟傳統行業差別比較大的地方

下一篇繼續介紹不同規模企業下的安全管理

微博 http://weibo.com/ayaz3ro 知乎主頁 http://www.zhihu.com/people/zhao-yan-68/ 個人站點 http://www.ayazero.com

本文章來源於烏雲知識庫,此映象為了方便大家學習研究,文章版權歸烏雲知識庫!

相關文章