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

我们使用的几乎所有东西都是基于代码构建的,从汽车到智能冰箱再到门铃。在企业中,无数的应用程序保持设备、工作流程和操作的运行。因此,当早期的无代码开发平台于 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) 尚无法解决开发人员日常面临的复杂问题,但最大的风险将来自用户的自满、过度依赖和盲目信任。人类开发人员能够执行严格的代码审查并修复他们发现的任何漏洞,对于安全实施这些技术(无论是无代码、低代码还是人工智能生成的技术)至关重要。如果没有这一点,这些工具就会面临在监管不那么严格的情况下引入更多漏洞的风险。

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

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:/a/629901.html

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

用友GRP-U8 bx_dj_check.jsp SQL注入漏洞复现(XVE-2024-10537)

0x01 免责声明 请勿利用文章内的相关技术从事非法测试,由于传播、利用此文所提供的信息而造成的任何直接或者间接的后果及损失,均由使用者本人负责,作者不为此承担任何责任。工具来自网络,安全性自测,如有侵权请联系删…

【2024华为HCIP831 | 高级网络工程师之路】刷题日记(18)

个人名片:🪪 🐼作者简介:一名大三在校生,喜欢AI编程🎋 🐻‍❄️个人主页🥇:落798. 🐼个人WeChat:hmmwx53 🕊️系列专栏:&a…

动态手势识别(VGG11)

学校的大作业要做一个视频图像处理相关的,就做了动态手势识别 VGG代码 import torch import torch.nn as nnclass VGG_11_3D(nn.Module):def __init__(self, num_classes, pretrainedFalse):super(VGG_11_3D, self).__init__()self.conv1 nn.Conv3d(3, 64, kernel…

labelimg删除用不到的标签(yolo格式)以及 下载使用

问题:当我们标注完成新的类别后后直接删除classes.txt中不需要的类别之后再次打开labelimg会闪退,如何删除不需要的标签并且能够正确运行呢?(yolo格式) 原因:当我们打开labelimg进行标注的时候&#xff0c…

JumpServer堡垒机简单式部署与管理(v3.10.8) 上

目录 一. 环境准备 1.1 关闭防火墙 1.2 永久关闭SEliunx 1.3 重启虚拟机让seliunx文件生效 1.4 配置阿里源镜像 二. 安装部署 2.1 上传压缩包到虚拟机(v3.10.8) 2.2 解压 2.3 一键安装部署 2.4 安装完成界面 2.5 启动 2.6 浏览器访问IP 2.7 使…

“图生视频”技术创新:剪贴画秒变动画生成的实验验证与分析

在最近的研究进展中,AniClipart系统的问世标志着文本到视频生成技术的一个重要里程碑。这一系统由香港城市大学和莫纳什大学的研究者们共同开发,旨在解决将静态剪贴画图像根据文本提示自动转换成动画序列的挑战。传统的动画制作流程繁琐且耗时&#xff0…

基于物联网的教室人数检测系统-设计说明书

设计摘要: 本设计基于物联网技术,实现了一个教室人数检测系统。系统利用STM32单片机作为中控,通过红外对管检测人员进出教室,并实时统计应到人数和实到人数,同时使用OLED显示屏显示相关信息。系统还通过温湿度传感器检…

掌握Linux常用命令,扫平面试需求障碍

cd 切换目录。 > cd ../ #切换到父级目录 > cd /tmp # 切换到/tmp目录 > cd ~ # 切换到当前用户的家目录 ls命令 查看文件与目录的命令,list 的缩写。 > ls -l #列出长数据串,包含文件的属性与权限数据等 > ls -a #列出隐藏…

script标签以及defer和async属性

1. <script>标签 将JavaScript代码嵌入到HTML中主要方式是使用<script>元素。 使用<script>的方式有两种&#xff1a; &#xff08;1&#xff09;直接在网页中嵌入JavaScript代码&#xff1a; <script>function sayHi() {console.log("Hi"…

FreeRTOS【6】线程优先级

1.开发背景 基于上一篇指引&#xff0c;已经了解了线程的阻塞&#xff0c;这个篇章主要介绍线程优先级的影响 2.开发需求 设计实验验证高优先级会抢占低优先级线程 CPU 3.开发环境 window10 MDK STM32F429 FreeRTOS10.3.1 4.实现步骤 1&#xff09;创建测试线程&#xff…

Rust构造JSON和解析JSON

目录 一、Rust构造JSON和解析JSON 二、知识点 serde_json JSON 一、Rust构造JSON和解析JSON 添加依赖项 cargo add serde-json 代码&#xff1a; use serde_json::{Result, Value};fn main() -> Result<()>{//构造json结构 cpu_loadlet data r#"{"…

Django Rest Framework 全局异常处理

在Django Rest Framework&#xff08;DRF&#xff09;中&#xff0c;全局异常处理是一种重要的机制&#xff0c;它可以帮助我们更好地管理API中的异常情况&#xff0c;并返回统一的错误响应。本文将详细介绍两种全局异常处理的方法&#xff1a;使用中间件&#xff08;Middlewar…

Jenkins 忘记登录密码怎么办

在安装Jenkins中遇到忘记登录密码该怎么呢&#xff1f;下面是一个解决办法 1. 先停止jenkins服务 我是用tomcat启动的jenkis 2. 找到config.yaml文件 find / -name config.xml命令执行后找到如下结果&#xff1a; /root/.jenkins/config.xml /root/.jenkins/users/admin_839…

现在适合进入AIGC行业吗?

现在适合进入AIGC行业吗&#xff1f; 随着人工智能生成内容&#xff08;AIGC&#xff09;技术的快速发展&#xff0c;越来越多的人开始关注这个行业。那么&#xff0c;现在是否是进入AIGC行业的好时机呢&#xff1f;本文将从行业前景、市场需求以及个人选择与规划三个方向进行…

3D轻量化引擎HOOPS Communicator在PLM全生命周期管理中的应用

在当今快速发展的工业领域&#xff0c;产品生命周期管理&#xff08;PLM&#xff09;是确保产品从设计到市场再到最终退役过程中信息一致性和流程效率的关键。 随着3D模型的日益复杂化和数据量的不断增长&#xff0c;传统的PLM系统面临着数据管理和渲染效率的挑战。HOOPS Comm…

【Spring之依赖注入】2. Spring处理@Async导致的循环依赖失败问题

使用异步Async注解后导致的循环依赖失败详解 1 问题复现1.1 配置类1.2 定义Service1.3 定义Controller1.4 启动springboot报错 2.原因分析&#xff1a;看Async标记的bean注入时机2.1 循环依赖生成过程2.2 自检程序 doCreateBean方法 3.解决方案3.1 懒加载Lazy3.1.1 将Lazy写到A…

SDL系列(一)—— 小白入门

SDL &#xff08; Simple DirectMedia Layer &#xff09; 是一套开放源代码的 跨平台多媒体开发库 &#xff0c;使用 C 语 言写成。 SDL 提供了数种控制图像、声音、输出入的函数&#xff0c;让开发者只要用相同或是相似的 代码就可以开发出 跨多个平台&#xff08; Linu…

公共字段填充(AOP的使用)

Thread是线程池,ThreadLocal是线程变量,每个线程变量是封闭的,与其它线程变量分隔开来,在sky-common下的com.sky.context包下有一个Basecontext类 public class BaseContext {//每一个上下文创建了一个线程变量,用来存储long类型的id//创建三个方法,用来设置,取用,删除idpubli…

基于微信小程序+JAVA Springboot 实现的【房屋租赁管理系统】app+后台管理系统 (内附设计LW + PPT+ 源码+ 演示视频 下载)

项目名称 项目名称&#xff1a; 基于微信小程序的房屋租赁管理系统 在本次项目开发中&#xff0c;我们成功构建了一款基于微信小程序的房屋租赁管理系统&#xff0c;旨在通过现代化信息技术提升房屋租赁服务的效率和质量。以下是对本项目的全面总结&#xff1a; 项目背景与目…

07-Fortran基础--Fortran指针(Pointer)的使用

07-Fortran基础--Fortran指针Pointer的使用 0 引言1 指针&#xff08;Poionter&#xff09;的有关内容1.1 一般类型指针1.2 数组指针1.3 派生类(type)指针1.4 函数指针 2 可运行code 0 引言 Fortran是一种广泛使用的编程语言&#xff0c;特别适合科学计算和数值分析。Fortran 9…