這個月實在繁忙,參加完 DEFCON 之後,又著手準備了今天這場演講。

很榮幸可以參加 Modern Web 2019,並且給了一個關於自動化資安測試的講題。

也很感謝當天從走道滿到門口的觀眾們,希望大家一起提升資安意識,並且讓自己的企業更好。

Modern Web 2019 從零開始加入自動化資安測試 from Secview

議程回顧

Security is EVERYONE’s job

「Security is EVERYONE’s job」這應該是這場我的主軸之一,AWS CTO 曾經提過的這句話。

這也跟我在之前提到的 DevSecOps 的定義時相符:「讓大家都有權力和責任來實踐資安」。

而這個議程,我們是從「自動化資安測試」開始介紹。

資安測試三步驟:準備、測試、強化

在投影片第七頁,我們提到如果要做自動化資安測試,可以依照這三個步驟來執行:

st

1. 準備

做資安測試前,最需要做的就是釐清商業價值,我們最需要要保護的東西是什麼?再從這個東西去擴展可能的攻擊行為,進而測試和防禦。

我們可以先從簡單的「威脅模型」開始定義,進而強化並且評估風險。

2. 測試

OWASP Testing Guide 是一套很好的指引列表,不僅提供測試做法,還可以讓我們更了解駭客的攻擊行為、培養資安的意識和對威脅程度的判斷。

3. 強化

讓資安測試變成自動化,要點在工具的優化和過濾。除了整合工具在 CI/CD 中,還需要「調校」這些工具,並且做好「漏洞管理」來讓我們的資安測試效果更好。

為了讓工具掃出來的結果更有價值,我們可以:

  • 縮小測試範圍、測試類型:「自動化資安測試無法做到像滲透測試一樣全面」,但我們可以調校工具來降低偽陽性(False Positive),並且針對高 CP 值(高嚴重且容易修復的漏洞)的漏洞類型優先測試。
  • 自動化過濾:一開始導入資安測試時,會掃出超級多的弱點問題。這時慢慢自動化過濾,把前一次已經確認過「無害」的漏洞過濾掉,疊代更新、讓自動化工具掃到的結果更精準。

嘗試導入 DevSecOps?先起個頭吧!

實作 DevSecOps 不一定要從資安測試開始,不過對工程師或 SRE 來說,在現有熟悉的 CI/CD 中加入資安也許是比較容易的方式。

當然我們也不能為了做資安而做,是為了商業價值和成本的考量來執行資安,才能讓資安更有價值。

不過說到底,DevSecOps 還是要從「人」和文化面慢慢開始,而「由上而下」的帶領在企業資安中會更適合。

對於一個工程師,我們可以嘗試把要保護的東西、看到的資安風險、執行資安測試的好處跟主管討論,讓資安「由上而下」、「由內而外」的推動。一開始的確很難做很完整,但先起個頭吧!並且用 DevOps 精神持續疊代下去。