安全架构--2--关于企业安全体系建设历程的思考
作者:隨亦
博主是涂鴉安全部門最早期成員之一,雖然不是安全負責人,卻也有幸參與和見證了涂鴉安全體系從無到有的建設歷程。本文是博主關于甲方安全體系建設歷程的思考,分為三部分:
一、安全體系建設v1.0–快速治理
二、安全體系建設v2.0–系統化建設
三、安全體系建設v3.0–全面完善
除了這三部分外,還有一篇附屬博文介紹對于制度的思考:
附-安全制度管理
同時,對于甲方安全體系建設,我還寫了附屬的兩篇實踐博文:
甲方基礎安全運營平臺建設實踐
SDL安全與企業辦公安全落地實踐
一、安全體系建設v1.0–快速治理
很多互聯網公司的業務發展通常先于安全團隊建設,在業務發展到一定規模、出現安全事故時才考慮在安全方面進行投入,但此時已經是企業信息安全環境狀況很差的時候,安全作為業務的基本屬性,已經嚴重滯后于業務的快速發展。
此時可能出現的安全問題有:企業內網出現眾多弱口令和未打安全補丁的系統,線上業務有大量常見的安全漏洞,員工安全意識薄弱,數據泄露嚴重……
對于這時候的企業所面臨的安全風險,需要救火式的快速切入解決,先從容易的、成本小的、效果明顯的地方入手。
1.1 選擇合適的安全負責人
安全團隊早期一般為1-3人,因此,安全負責人知識面的廣度就極為重要。負責人應當熟悉安全技術和安全運營,以及安全管理和安全合規。安全負責人需要帶領安全團隊開展包括安全研發(基于開源二次開發)、滲透測試、安全加固、應急響應、安全審計、安全培訓、安全合規、安全管理、安全運營等工作。
1.2 識別主要的安全風險
快速治理階段的主要目標是利用20%的資源解決80%的安全風險,所以第一步是識別主要的安全風險。互聯網公司的特點是業務技術以web和移動應用APP為主(有的還涉及到桌面軟件、云服務、IoT硬件等),業務迭代快,人員變動較大,公司管理較為松散。互聯網企業的安全風險大多來自線上業務,同時企業內部也隨時面臨風險。
1、在線業務
在線業務的風險主要包括web安全風險、業務自身的安全風險、移動應用安全風險。
2、企業內部
來自企業內部的安全風險主要包括員工的安全風險、口令的安全風險、釣魚攻擊和社會工程學的安全風險、安全合規風險。除了這些安全風險,還有很多其他的安全風險,例如業務中的DDoS,未打安全補丁的設備和工具,包括路由器、打印機、個人電腦、BYOD設備(自帶設備)等。
1.3 實施快速消減
以兩手都要抓,兩手都要硬的原則,一手抓安全技術和安全運營,一手抓安全管理和安全合規。雙管齊下快速消減安全問題。
解決web安全風險可采取的處理方式按優先級排序依次為:
1、全站清理webshell后門,購買或采用開源WAF快速解決常見web安全問題;
2、使用動態應用安全測試、靜態應用安全測試、交互式應用安全測試產品,對web業務進行黑盒掃描、白盒掃描和人工滲透測試,解決線上主要漏洞;
3、部署RASP(運行時應用自保護)時應當使用自保護產品對web進行自免疫保護,比如使用Prevoty、OpenRASP等;
4、提供安全代碼過濾庫和安全編碼培訓,提升代碼等安全質量。
解決來自業務的安全風險可采取的處理方式按優先級排序依次為:
1、初期針對業務特點,選擇合適的第三方風控安全產品;
2、人員到位后,可以從接入層(查詢引擎、規則引擎、模型引擎)、處理層、數據層這三方面構建自有的安全風控平臺。
解決移動應用安全風險可采取的處理方式按優先級排序依次為:
1、采用商業方案(免費/付費)對APP進行漏洞掃描和安全加固來解決常見的安全問題;
2、安全團隊中熟悉移動應用安全技術的成員對移動應用進行深入的人工安全測試;
3、提供基礎移動安全組件和安全編碼培訓、安全編碼規范。
解決來自員工的安全風險可采取的處理方式按優先級排序依次為:
1、部署可統一管理的EDR安全產品,在生產環境中統一使用堡壘機進行遠程審計管理,采用數據庫管理系統審計進行數據庫訪問;
2、員工入職時進行安全培訓,在入職前對重點員工進行背景調查,制定員工信息安全行為規范并進行考試,在員工離職時需要告知其安全須知,并進行安全審計;
3、對企業重點業務團隊建立隔離受控網絡,統一訪問互聯網的代理服務器,確保包括HTTPS在內的網絡流量可審計;
4、建立基于機器學習的用戶異常行為發現系統,如Splunk產品中的UEBA模塊。
解決口令安全風險可采取的處理方式按優先級排序依次為:
1、通過弱口令掃描器(Hydra/Medusa)檢測公司員工賬號和內網(SSH、MySQL、RDP、web后臺等)所有涉及密碼的系統服務,并責令修改密碼以快速解決弱口令隱患;
2、建設基于OpenLDAP的統一單點登錄系統,并使用基于TOTP方案的動態口令雙因素認證或RSA Key,若使用Wi-Fi技術,則可以通過Radius協議實現雙因素認證;
3、建立更加嚴格的基于Fido U2F認證協議的實體安全密鑰登錄系統和BeyondCorp賬戶安全體系。
解決來自釣魚攻擊和社會工程學的安全風險可采取的處理方式按優先級排序依次為:
1、對員工進行相關安全意識培訓,并不定期組織相關演練測試以驗證培訓效果,加強辦公場地物理安全管控,避免使用第三方通信軟件建立工作群;
2、強化對釣魚攻擊和利用社會工程學進行攻擊的技術監控(如終端安全監控),若要查看高風險文件則可利用沙箱技術進行隔離訪問,對于瀏覽網頁的高風險操作可以使用遠程安全瀏覽產品;
3、加強BYOD設備的安全管理。
解決安全合規認證可采取的處理方式按優先級排序依次為:
1、閱讀官方安全合規文檔,了解安全合規需求;
2、列出安全合規需要的文檔清單,撰寫安全合規文檔;
3、判斷哪些要求公司已經做到了,哪些還沒做到,對于沒有做到的制定實施計劃方案;
4、以外規對內規,內規對檢查,檢查對整改,整改對考核的原則,推進落地;
5、通過合規認證,拿到合規證書。
二、安全體系建設v2.0–系統化建設
經過第一階段救火式的快速治理后,企業中存在的大部分隱患基本被解除,所以第二階段可以系統的完善企業安全架構,將“安全融于體系”的安全理念落地。
2.1 依據ISMS建立安全管理體系
ISMS具體是由ISO 27001-ISO 27013系列標準組成的,其中尤其以ISO 27001最為業界熟知。ISO 27001主要規定了信息安全管理體系的要求,主要是對一些概念的介紹和概述,一般用于認證。ISO 27002是對應ISO 27001的詳細實踐,該標準涉及14個領域,113個控制措施。
ISMS提供了一個大而全的指導性要求框架,其可以為互聯網企業安全團隊帶來的幫助有:
1、提供了一個全面的安全視圖,避免安全覆蓋面不足帶來的死角;
2、可以給高管一個可交代的信息安全實施依據,方便安全策略的推行;
3、獲取ISO 27001認證后,可以提高公司知名度與信任度,使客戶對企業充滿信心。
ISMS是具體依據PDCA循環原則建立:
P即Plan(計劃)。制定與風險管理和信息安全改進相關的政策、ISMS目標、流程和程序,以提供符合組織全球政策和目標的結果;
D即Do(實施)。實施和利用ISMS政策對流程和程序進行控制;
C即Check(檢查)。在檢查過程中對流程進行相應的評估,并在適當的情況下根據政策、目標和實踐經驗衡量流程的績效,之后將結果報告給管理層進行審核。
A即Act(行動)。根據ISMS內部審核和管理評審的結果或其他相關信息,采取糾正和預防措施,不斷改進上述系統。
安全管理體系具體可以依照ISO 27001的14個控制領域開展,通過對ISMS提供對檢查表格,一項一項完成相應的模塊并打鉤,等勾選的差不多了,安全管理體系自然也就建立好了。
安全管理類對工作雖然繁雜,但萬變不離其宗,要先把合規要求和規章制度等規則吃透,然后發現本企業在執行方面的風險和短板,最后完成整改和化解風險。
2.2 基于BSIMM構建安全工程的能力
1、BSIMM介紹
BSIMM是衡量軟件是否安全的標尺,可以通過BSIMM標準來實施自身安全開發建設,BSIMM具體由三大部分組成:
1、軟件安全框架(SSF):支撐BSIMM的基礎結構由劃分為4個領域的12項實踐模塊組成;
2、軟件安全小組(SSG):負責實施和推動軟件安全工作的內部工作小組;
3、軟件安全計劃(SSI):一項涵蓋整個組織機構的項目,用于以協調一致的方式來灌輸、評估、管理并演進軟件安全活動。
軟件安全框架的4個領域12項實踐模塊:
| 戰略和指標(SM) | 攻擊模型(TM) | 架構分析(AA) | 滲透測試(PT) |
| 合規性和政策(CP) | 安全功能和設計(SFD) | 代碼審計(CR) | 軟件環境(SE) |
| 培訓(T) | 標準和要求(SR) | 安全測試(ST) | 配置和安全漏洞管理(CMVM) |
治理:用于協助組織、管理和評估軟件安全計劃的實踐,人員培養也屬于治理領域的核心實踐。
情報:用于在企業中匯集企業知識以開展軟件安全活動的實踐,前瞻性的安全指導和威脅建模都屬于該領域。
SSDL觸點:分析和保障與特定軟件開發工作及流程相關的實踐。
部署:與傳統的網絡安全及軟件維護組織機構打交道的實踐,軟件配置、維護和其他環境問題對軟件安全有直接影響。
2、安全工程能力建設中常見問題的解決辦法
問題1:業務上線時間緊、壓力大,安全漏洞修復占用時間過多而影響業務上線進度
為避免安全工作成為開發瓶頸,安全測試技術應盡量和現有系統相結合。比如,在IDE上直接集成SpotBugs插件,開發人員在編譯時就能被提示要修改漏洞代碼;在管理第三方組件漏洞時將BlackDuck與Maven倉庫相結合,業務人員不需要介入就可以解決Java庫的安全問題;在提交代碼到GitLab時,加入Gitrob自動掃描密鑰、密碼等敏感信息泄露問題;將Facebook Infer集成在CI平臺(如Jenkins)上,形成掃描集群以自動檢測代碼漏洞,并編寫Python腳本將漏洞信息發到JIRA上提醒研發人員修復,跟蹤漏洞修復進度。
問題2:安全漏洞方面的誤報太多
任何自動化安全測試系統在剛上線時都可能存在誤報問題,針對這類問題可以設計誤報反饋功能,成立專職安全小組提供安全技術支持,并使其參與到不斷優化檢測規則的工作中來,經過幾輪迭代之后基本都可以解決誤報問題。
問題3:公司對員工工作無量化指標,部分研發團隊成員的責任心不夠,對于漏洞修復持無所謂態度,從而留下大量安全隱患
建立漏洞修復相關的流程制度,將代碼質量與KPI掛鉤,對因違反流程制度而造成安全隱患的員工按出現的漏洞等級進行處罰。結合質量保障團隊定期發送項目質量報告,最終將安全漏洞數據匯總到代碼質量管理平臺。將漏洞修復放入KPI指標,以促進開發人員修復安全漏洞的積極性。
問題4:安全方案和要求通常會阻礙業務發展
安全團隊在設計安全方案和要求時,不應該以安全團隊省時省事、少承擔責任為出發點,這樣會阻礙業務發展、降低效率。一套安全方案和要求,應當是能夠在降低甚至不降低業務發展的情況下還能保障安全,這樣的方案和要求才能受到業務團隊和開發運維團隊的歡迎。
3、構建普適的安全技術架構
網絡層:
在NTA網絡流量分析方面有AOL開源的Moloch和redborder等,在欺騙防御方面有Thinkst的OpenCanary和Canarytokens
主機層:
開源產品有Facebook的Osquery
應用層:
開源產品有百度的OpenRASP
身份和訪問權限管理:
開源的產品有gluu
數據安全與隱私:
細粒度權限管理的開源產品有Apache Ranger,大數據安全與性能分析的開源產品有Apache Eagle,開源的密鑰管理系統有Vault
安全運營:
開源的產品有Mozilla開源的SIEM平臺MozDef
三、安全體系建設v3.0–全面完善
經過第二階段的系統安全建設后,企業已經基本形成了完整的安全體系,因此,第三階段的安全體系建設工作主要是對其進行全面完善。
3.1 強化安全文化建設
如何建設企業安全文化?安全應該納入企業的價值觀中與業績一起考核。如果企業文化是貼在墻上的,也不知道怎么考核,那么企業文化所起到的作用就不大。只有建立好企業安全文化,公司才不至于因人員變動而導致安全價值觀逐漸稀釋。
3.2 完善安全韌性架構
安全韌性架構主要實現4中能力:
1、預料能力,保持對入侵的知情準備狀態;
2、承受能力,即使被入侵仍然可以繼續執行基本任務或業務職能;
3、恢復能力,在入侵期間和之后恢復任務或業務功能;
4、適應能力,修改任務或業務功能的支持能力,以預測技術、運營、威脅環境中的變化。
總結
以上是生活随笔為你收集整理的安全架构--2--关于企业安全体系建设历程的思考的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 动态规划_数字的划分
- 下一篇: device_register分析