如今,安全威脅的破壞力正以前所未有的速度隨著資訊化程度的加深而成長,擴大建構數位化業務通常會導致更大的受攻擊面。要應對當前和未來的安全威脅,只依靠傳統的安全產品投入已顯得力不從心,除了購買安全產品,更重要的是安全意識的增強和安全流程的建設。
在各種安全建設方案中,「安全能力前置」是明顯的趨勢。就像一幢建造時地基不穩、牆體不牢、地板塌陷的房子無法在建成後依靠幾根柱子的支撐屹立不倒,缺少安全開發過程的應用,在後期運營時必然會漏洞百出。
我們認為安全開發實務有以下5個重要的原則:
1、安全訓練
安全技能訓練對彌補技術能力差距以及管理產品生命週期每個環節的安全性至關重要。公司需要顯性地投資在安全意識和安全技能的培訓上,以提高開發人員安全編碼的意識和能力,並理解安全部門提出的建議和做出的行為,這對於業務團隊與安全團隊的高效協作非常重要。
根據SANS研究所的安全狀況報告,早在2016年在美國超過一半的調查公司樣本已經將安全培訓作為了公司主要任務之一。而直到今天,能夠懂得安全訓練重要性的中國公司也是少數派,能將培訓意願轉化為培訓行為的企業更是鳳毛麟角。
2、安全應用程式開發
當下,應用程式的安全性已經引起了企業的普遍重視。為了確保開發的安全性,有兩個重要的實務方法:
(1)使用以安全性為中心的流程框架。
(2)將安全團隊的回饋納入開發人員的工作流程和每個迭代週期的簡報評審中。
對於流程框架,我們認為最好根據最佳實踐、軟體庫、標準以及企業的特定行業規定,選擇採用經過驗證且適當的以安全為重點的框架。以下兩個著名的框架都是規則、技術和流程的集合,它們指導開發組織,並提供可應用的資源。雖然有不同的關注點,但從根本上講都是以安全為導向的。
微軟安全開發生命週期(SDL):這個過程非常適合現有的DevOps環境,並提供了一個更通用的結構,在整個過程中很好地整合了安全性。根據我們的經驗,它並不限於任何特定的程式碼類型或操作環境。
開源Web應用程式安全專案(OWASP):這個社群網站提供有關漏洞、相關影響和風險的資料;以及開發和偵測安全性網路應用程式的最佳實務指南。
企業需要積極地將安全團隊引入開發過程,以便儘早獲取他們的回饋,並在整個開發工作流程和迭代原型演示中邀請他們參與。這樣做的好處是可以讓團隊在開發階段同時處理安全風險,以避免在開發過程中引入代價高昂的風險。
與開發階段相比,在產品營運和維護階段消除風險的代價至少會高出數十倍。但是,許多開發團隊並不適應與安全團隊合作,踏出第一步並堅持不懈是關鍵,最終基於安全性的開發工作流程將成為整體安全策略中的一個巨大優勢。
3、Security DevOps=DevSecOps
DevSecOps是一個逐漸形成的趨勢,它將安全性完全整合到DevOps工作流程中,從而創建了一個統一的過程。正如DevOps提出時,是要同時解決開發和維運問題一樣,現在也必須同時解決安全問題。
Security DevOp
或DevSecOps
不僅涉及擴展每個階段的工作內容以包含安全要素,而且還包括跨階段,跨部門的培訓,以便在開發代碼時降低風險。
4、應用安全測試(AST)
持續測試非常重要,應用程式安全測試(AST)工具應該成為每個開發人員工具鏈的一個必備的組成部分。現在有許多優秀的工具,包括開源工具。在考慮應用程式安全測試工具時,最好預先確定要使用的工具集,以便優化程式碼偵測的步驟和流程。否則,工具可能無法完整且有效率地偵測程式碼。
AST工具分為幾個基本的類別:
(1)靜態應用程式安全測試(SAST)
(2)動態應用程式安全測試(DAST)
(3)互動式應用程式安全測試(IAST)
Gartner在2017年的報告指出,「大多數開發應用程式的企業都已經採用了某種形式的AST,但不同的技術在成熟度上有所不同。DAST
和SAST
是目前應用最廣泛的產品類型,但IAST的市場需求正呈現高速的成長。」
5、持續地監控與分析
持續地監控和分析有助於保護維運階段的應用。從監控中得到持續的回饋,並將其反哺到開發過程中。監控和分析維運階段的應用是一種基本的常識性操作,它可以為企業提供有價值的資訊和數據,幫助企業攔截潛在的漏洞,降低潛在的風險。
如同維運階段的安全無法離開開發安全,開發安全也無法脫離維運安全單獨實現。一個沒有回饋機制的流程肯定不是一個好流程。
推薦相關文章:web安全教學
以上是安全開發實務原則的詳細內容。更多資訊請關注PHP中文網其他相關文章!

随着互联网的发展,Web应用程序已经成为我们日常生活中不可或缺的一部分。Web应用程序的开发通常涉及多个方面,例如设计、开发、运维、安全等等。其中,安全性是非常关键的,而CSRF攻击是Web应用程序中较为常见的安全漏洞之一。本文将围绕Nginx安全策略实践,介绍如何防范CSRF攻击。一、什么是CSRF攻击CSRF(Cross-siterequestfor

PHP程序中的迭代器最佳实践迭代器在PHP编程中是一种非常常用的设计模式。通过实现迭代器接口,我们可以遍历一个集合对象中的元素,而且还可以轻松的实现自己的迭代器对象。在PHP中,迭代器模式可以帮助我们更有效地操作数组、列表等集合对象。在本文中,我们将介绍PHP程序中迭代器的最佳实践,希望能帮助同样在迭代器应用方面工作的PHP开发人员。一、使用标准迭代器接口P

随着科技的不断发展,机器视觉技术在各个领域得到了广泛应用,如工业自动化、医疗诊断、安防监控等。Java作为一种流行的编程语言,其在机器视觉领域也有着重要的应用。本文将介绍基于Java的机器视觉实践和相关方法。一、Java在机器视觉中的应用Java作为一种跨平台的编程语言,具有跨操作系统、易于维护、高度可扩展等优点,对于机器视觉的应用具有一定的优越性。Java

作为一款轻量级的Go语言微服务框架,go-zero在微服务治理方面的应用和最佳实践已经成为了当前开发中不可忽视的重要部分。Go语言在进行分布式应用开发时,一般要使用微服务架构模式。在微服务架构中,服务之间的通信非常重要。要保证服务之间的通信的可靠性和高效性,就需要针对微服务治理进行优化。本文将探讨go-zero在微服务治理方面的应用与最佳实践,以期为开发者提

路径遍历攻击(PathTraversalAttack,也被称为目录遍历攻击)是一种常见的网络安全威胁,攻击者利用此漏洞通过输入恶意的文件路径来访问或执行文件系统中的任意文件。这种攻击可能导致敏感信息泄露、恶意代码执行等安全问题。为了保护网站免受路径遍历攻击的威胁,开发人员需要采取一些安全开发实践。本文将介绍如何防止路径遍历攻击,以保护网站的安全。输入验证

随着数据分析和处理的日益不断增长,数据可视化也成为了越来越重要的一个方向。对于企业和个人来说,如何将大量的数据转化为可视化的形式,是一项极为重要的技能。而在这个领域中,Java也是一种主流的可视化工具,它可以帮助用户更加快速、高效地进行数据处理和展示。本文将着重介绍Java实现数据可视化的各种方法和实践。一、基本的Java可视化工具Java中有很多可视化工具

PDF已成为一种受欢迎的文件格式,广泛用于各种场景,包括电子书、报表和证明文件。在PHP中,可以使用多种库和工具来生成PDF文档,但是如何选择最佳实践?以下是使用PHP进行PDF生成的最佳实践:1.选择适当的库PHP中有多个PDF库可供选择,包括FPDF、TCPDF、mPDF和DOMPDF。FPDF是很早就存在的库之一,具有相当多的社区支持。TCPDF功能强

近年来,随着云计算和容器技术的快速发展,微服务架构已经成为了构建大型分布式系统的主流方案。而go-zero,作为优秀的Go语言微服务框架,也在这一趋势下不断发展壮大。本文将介绍go-zero在微服务中的应用与实践,帮助读者更好地了解该框架的技术特点和优势。一、go-zero简介go-zero是一款基于Golang开发的微服务框架,具有轻量、高性能、简洁等特


熱AI工具

Undresser.AI Undress
人工智慧驅動的應用程序,用於創建逼真的裸體照片

AI Clothes Remover
用於從照片中去除衣服的線上人工智慧工具。

Undress AI Tool
免費脫衣圖片

Clothoff.io
AI脫衣器

AI Hentai Generator
免費產生 AI 無盡。

熱門文章

熱工具

禪工作室 13.0.1
強大的PHP整合開發環境

Atom編輯器mac版下載
最受歡迎的的開源編輯器

ZendStudio 13.5.1 Mac
強大的PHP整合開發環境

SublimeText3 Mac版
神級程式碼編輯軟體(SublimeText3)

Dreamweaver Mac版
視覺化網頁開發工具