当前位置:网站首页>想低成本保障软件安全?5大安全任务值得考虑
想低成本保障软件安全?5大安全任务值得考虑
2022-08-04 05:08:00 【SEAL安全】
应用程序的快速交付并非安全的敌人,尽管现在看起来似乎如此。随着企业持续采用云服务和基础设施,安全却逐渐被抛之脑后,这是不可取的——尤其是现在持续集成/持续交付流水线已成为攻击者的主要目标。
在应用程序上线后仅仅扫描其安全漏洞是远远不够的。安全的左移方法应该在DevOps团队开始开发应用和配置基础设施的时候就启动,这样就可以在漏洞影响范围更广和修复成本更昂贵之前解决它们。这就是 DevSecOps 的核心原则。
通过安全左移,企业可以在用户受到影响之前识别错误配置和其他安全风险。云计算在实现 DevOps 方面发挥了很大作用,因此保护云环境和工作负载可以捍卫 CI/CD 流水线的安全,最终保护客户的安全。
以下是 DevOps 团队在进行安全左移时应该考虑的5个重要安全任务:
1、 与安全团队协作。 安全左移是一个重大改变。除了设置合理的流程以及使用合适的工具之外,企业必须重新思考他们的运作方式,在 CI/CD 流水线中更早地引入软件测试流程、工具以及相关专业知识。DevSecOps 并不是简单地将安全责任塞给开发人员,而是改变角色和期望,并结合使用合适的工具,实现安全和开发的平衡。安全从开发周期的开始就应该拥有比较高的优先级,而不是在 SDLC 后期才开始重视。
2、 实现频繁的自动化测试。 安全左移需要尽早且频繁地测试,通过自动化的代码测试,开发人员在工作时就会收到安全问题的提醒,这样他们能够在软件进入生产环境前纠正问题。扫描漏洞的自动化工具可以降低人工测试中可能出现的人为错误的机会,并扩大了覆盖范围,以检查更多的软件。代码在开发过程中的每个阶段都会被扫描,因此到 SDLC 后期不会积压大量待审查的代码。
安全左移的策略需要将一个或多个工具集成到 CI/CD 流水线中以寻找已知的漏洞以及识别其他安全问题。通常会使用的工具类型包括静态应用安全测试(SAST)、动态应用安全测试(DAST)、交互式应用安全测试(IAST),密钥检测和软件成分分析(SCA)。当然,在决定将哪些新工具引入你的流程之前,你应该首先评估你现有的工具。

3、 在流程中进行渗透测试。 虽然自动化测试是 DevSecOps 的必备条件,但仅靠自动化仍然可能存在无法发现的潜在问题。例如渗透测试等手动安全评估可以通过模拟网络攻击来检查应用程序的安全性。这类额外的测试可以将安全风险降到最低并且可能捕捉到自动化测试无法检测到的问题。
在进入生产环境之前,请一位安全工程师来帮助你审查软件并进行渗透测试以确保所有潜在的问题都已经得到缓解。与其在被攻击者利用之后才知道漏洞的存在,不如直接覆盖所有的基础代码并对其进行额外的测试。
4、 保证你的软件是最新的。 始终采用最新版本的软件是网络安全的核心。开发人员必须确保他们所使用的软件(操作系统、应用程序框架以及第三方库等)保持在最新版本,这意味着安全补丁也处于最新状态。无论是来自供应商还是开源社区的软件,下载软件更新是保护软件安全的重要步骤。
5、 寻找安全培训的机会。 开发人员并非安全专家,但他们在安全应用程序的生产中具有关键作用,因此开发人员也应该了解安全编码和测试的基本知识。随着对软件需求的攀升,开发人员应该考虑根据他们的具体角色和需求进行安全培训。适当的培训和支持可以为你提供所需的背景信息,以产生即实用又安全的代码。
谈及软件安全,没有任何灵丹妙药可以完全确保你的代码永远安全无虞。通过采用这些实践,您能够发现更多漏洞并且在代码部署前就打上补丁。
边栏推荐
- The idea setting recognizes the .sql file type and other file types
- 一个对象引用的思考
- About yolo7 and gpu
- C Expert Programming Chapter 4 The Shocking Fact: Arrays and pointers are not the same 4.4 Matching declarations to definitions
- 7.LVS负载均衡群集之原理叙述
- 2023年PMP考试会用新版教材吗?回复来了!
- 【21天学习挑战赛】图像的旋转问题(二维数组)
- static在不同位置定义变量居然还有不同的含义?
- leetcode 12. Integer to Roman numeral
- C专家编程 第5章 对链接的思考 5.6 轻松一下---看看谁在说话:挑战Turning测验
猜你喜欢

word 公式编辑器 键入技巧 | 写数学作业必备速查表

结构体函数练习

信息学奥赛一本通 1312:【例3.4】昆虫繁殖

7-3 LVS+Keepalived Cluster Description and Deployment

Do you think border-radius is just rounded corners?【Various angles】

附加:对于“与数据表对应的实体类“,【面对MongoDB时,使用的@Id等注解】和【以前面对MySQL时,使用的@Id等注解】,是不同的;

震惊,99.9% 的同学没有真正理解字符串的不可变性

The difference between px, em, and rem

Tactile intelligent sharing - SSD20X realizes upgrade display progress bar

8. Haproxy builds a web cluster
随机推荐
static在不同位置定义变量居然还有不同的含义?
7-2 LVS+DR Overview and Deployment
字节最爱问的智力题,你会几道?
Do you think border-radius is just rounded corners?【Various angles】
C专家编程 第4章 令人震惊的事实:数组和指针并不相同 4.5 数组和指针的其他区别
How to view sql execution plan offline collection
redis中常见的面试题
JVM Notes
[21 Days Learning Challenge] Image rotation problem (two-dimensional array)
leetcode 12. 整数转罗马数字
编程大杂烩(四)
看DevExpress丰富图表样式,如何为基金公司业务创新赋能
入坑软件测试的经验与建议
3000字,一文带你搞懂机器学习!
7-1 LVS+NAT 负载均衡群集,NAT模式部署
C专家编程 第4章 令人震惊的事实:数组和指针并不相同 4.2 我的代码为什么无法运行
【21 Days Learning Challenge】Direct Insertion Sort
drools从下载到postman请求成功
[C language advanced] program environment and preprocessing
DataTable使用Linq进行分组汇总,将Linq结果集转化为DataTable