无代码无国界:我们正在走向软件安全的狂野西部吗?

我们使用的几乎所有东西都是基于代码构建的,从汽车到智能冰箱再到门铃。在企业中,无数的应用程序保持设备、工作流程和操作的运行。因此,当早期的无代码开发平台于 2010 年推出时,承诺为公民开发人员提供更易于访问的应用程序开发,它的成功感觉是不可避免的。

很难否认无代码的成功。这些平台拉平了潜在开发人员的学习曲线,允许组织在开发人员技能短缺的情况下利用有用的应用程序进行创新和自动化。此外,无代码平台提供的开箱即用应用程序可以加快上市速度为王的世界中的应用程序开发流程。去年,Forrester 发现87% 的企业开发人员至少在部分工作负载中使用低代码和无代码工具或平台。

但功能并不是成功的唯一标志。无意中,推动应用程序开发民主化的相同趋势导致了不安全应用程序和错误配置的狂野西部,使整个组织面临网络威胁。

01

安全的重要性

虽然这些平台使开发民主化,但必须谨慎使用。OWASP Top 10强调了错误配置和使用易受攻击的组件作为常见安全威胁等因素。然而,对无代码开发的依赖可能会直接向组织引入未发现的漏洞。

Forrester 长期以来一直警告无代码和低代码的风险,并在未来几年的预测中强调了这一漏洞。未经培训的员工创建应用程序的幽灵尤其令人担忧:这些平台使没有应用程序安全知识的员工能够开发安全团队通常不知道的程序。

组织必须真正监督谁负责开发软件,无论是利用无代码平台作为工具的专业开发人员,还是为较小团队和项目创建应用程序的公民开发人员。CVE 急剧上升已不是什么秘密。去年,这一数字达到了创纪录的 28,092 人,预计到 2024 年将增加 25%。去年 12 月,微软披露了一个影响低代码和无代码用户的高严重性 CVE。

当企业每天面临大量新的漏洞利用时,漏洞检测和修复等技能对于任何新的软件开发项目都至关重要。

软件开发的角色需要变得更加灵活,但决不能以牺牲安全性为代价。通过在整个组织内培养“设计安全”的文化,安全领导者可以确保软件开发生命周期 (SDLC) 中的所有角色都了解他们在安全态势中的责任——包括公民开发人员。

02

增强人类干预能力

根据 Security Journey 研究,只有五分之一的组织对自己在应用程序发布之前检测漏洞的能力充满信心,这意味着大多数 SLDC 的安全知识不足。开发人员需要接受培训,以创建安全的软件,并在代码投入生产之前嗅出代码库其余部分中的不安全代码,快速响应并修复它。如果没有这一点,应用程序安全和安全团队就会承受不必要的负担,最终需要更多的时间、费用和潜在的业务风险。通过定期安全扫描和修补来保护漏洞不应该成为常态。

相反,组织有机会在开发人员的整个职业生涯中为他们提供安全技能和知识。这些技能使他们能够提供更高质量的输出,并在保护组织本身方面发挥至关重要的作用。然而,只有三分之一的组织 (36%) 培训开发人员编写安全代码,这确保了 64% 的情况下软件安全性在开发过程结束时开始。对于公民开发者来说也是如此,他们的工作通常表现出对解决问题和创新的热情,应该通过正确的培训来利用和支持这种热情。

03

未来的问题

如果认为软件安全风险上升纯粹是因为无代码和低代码平台,甚至公民开发者是 CVE 的主要贡献者,那就太还原了。近二十年来,软件开发的文化一直迫使该行业走上一条快速且轻松的安全之路。人工智能生成编码的激增最能证明这一点。

只要开发人员和他们上面的项目经理有动力快速行动,每个新解决方案都将根据其快速创建功能代码的能力而受到重视。直到监管机构、更重要的是高管和董事会将安全性列为优先事项之前,情况都会如此。

软件安全危机核心的文化脱节是人为造成的。无论哪种工具受到关注,构建安全软件都需要人类解决方案。虽然大型语言模型 (LLM) 尚无法解决开发人员日常面临的复杂问题,但最大的风险将来自用户的自满、过度依赖和盲目信任。人类开发人员能够执行严格的代码审查并修复他们发现的任何漏洞,对于安全实施这些技术(无论是无代码、低代码还是人工智能生成的技术)至关重要。如果没有这一点,这些工具就会面临在监管不那么严格的情况下引入更多漏洞的风险。

无论出现什么工具,知识渊博的人类用户总是需要了解该工具提供什么,并且可以作为质量和安全性的权宜之计。

相关推荐

最近更新

  1. docker php8.1+nginx base 镜像 dockerfile 配置

    2024-05-16 02:48:07       94 阅读
  2. Could not load dynamic library ‘cudart64_100.dll‘

    2024-05-16 02:48:07       101 阅读
  3. 在Django里面运行非项目文件

    2024-05-16 02:48:07       82 阅读
  4. Python语言-面向对象

    2024-05-16 02:48:07       91 阅读

热门阅读

  1. RocketMQ:broker配置说明

    2024-05-16 02:48:07       27 阅读
  2. Kruskal算法刷题笔记

    2024-05-16 02:48:07       31 阅读
  3. Conda常用命令

    2024-05-16 02:48:07       35 阅读
  4. Redis如何实现持久化

    2024-05-16 02:48:07       33 阅读
  5. 【Go语言入门学习笔记】Part1.梦开始的地方

    2024-05-16 02:48:07       32 阅读
  6. day 27 第七章 回溯算法part03

    2024-05-16 02:48:07       35 阅读
  7. python strftime和strptime的不同分析

    2024-05-16 02:48:07       30 阅读
  8. react-native 渲染引擎经历了什么

    2024-05-16 02:48:07       28 阅读
  9. c++20 constexpr consteval

    2024-05-16 02:48:07       32 阅读