Hacking for Dummies 這本書主要的概念,總結來說,就是用駭客的思維與手法測試系統中可能存在的資安漏洞,及時修正。
前面讀書的時候,看到書上除了提供五花八門的測試方式,在 Chapter 14. Web sites and Applications
章節裡,提供了一些必須囊括在開發裡的一些 practice 。此外, OWASP 是開發時期的好朋友,很多的範例與規範都可以從這邊查找到。
除了開發的 practice 可以增加應用程式的安全性,在開發過程中,常常會上網搜訊某個功能的實作是否有 Open Source 能夠使用,或是出自民間的高手有沒有在 stack overflow 上以程式碼救贖迷惘的開發者?[1]
問:難道這些套件或是摳貼來的程式碼,就不會有安全性的問題嗎?
答:當然會有!
軟體物料清單
(Software Bill of Materials, SBOM) 或是稱作 風險物料清單
(Cybersecurity Bill of Materials, CBOM) 是構成軟體的元件和關聯表,包含名稱、版本、來源、相依性甚至供應商等等資訊,也就是說
易受攻擊
的套件?以被攻到怕怕的資安重災區美國為例,美國白宮要求所有向聯邦政府出售的軟體都必須提供這些資訊,透明化軟體組成,以利抓出潛在風險。
安全性漏洞始於軟體開發,終於軟體開發
恩?難道這就是傳說的 DevSecOps
,一切還是在開發流程中就注入安全性的中心思想,成本最低,效果最好。
如果要參考 U.S. NTIA (National Telecommunications and Information Administration) 制定的標準,以下項目是必須要被列舉出來的:[3]
基於可讀性, NTIA 要求的 SBOM 報告格式有以下這三種選擇
以自家的後端開發使用較多的程式語言 golang
,可以找到
明天就來裝看看工具 - syft
吧!
[1] 供應鏈安全層面大剖析,奧義揭露臺灣多起APT攻擊事件都是對方從供應鏈下手
[2] https://www.informationsecurity.com.tw/article/article_detail.aspx?aid=9316
[3] https://fossa.com/blog/software-bill-of-materials-formats-use-cases-tools/
[4] 是 OWASP 提出的一種較為 lightweight 的軟體物料清單標準。