50万奖金+官方证书,深圳国际金融科技大赛正式启动,点击报名 了解详情
写点什么

低代码开发会带来安全问题和数据泄露隐患吗?

  • 2021-11-24
  • 本文字数:2122 字

    阅读完需:约 7 分钟

低代码开发会带来安全问题和数据泄露隐患吗?

低代码开发的缺陷在于缺乏经验的开发者并不掌握安全性的相关知识。要重视软件安全性问题,不要等它变成灾难后再亡羊补牢。


低代码开发方法有可能比传统开发方法更快、更便宜地创建软件。但很少人会提到,用低代码方法开发出来的软件所包含的安全风险是和传统上基于代码开发的软件一样多的。


安全性被构建进了低代码开发工具中,但这种安全性必须由开发人员理解和配置才能发挥作用。非专业开发人员可能很难意识到安全隐患的存在,或者不具备配置软件安全性的经验。


能击倒你的往往是你看不到的风险。非专业开发人员的注意力都集中在了软件创建上,并不会小心谨慎地应用那些最佳安全实践。


如果低代码开发流程没有同 IT 部门紧密结合,没有充分应用最佳实践,那么前者的开发指引就不会是由经验丰富的开发人员来定义。这就会引入安全漏洞和数据泄露的风险。


这不是非专业开发人员独有的问题,而是普遍存在的开发问题。区别在于有经验的开发人员(并非总是)会检查安全性是否到位,而没有经验的初级/非专业开发人员甚至不会意识到安全性是他们的责任和应该做的事情。

微软 Power App Portal 暴露了 3800 万条记录

微软的低代码开发工具 Power Apps 之前登上了头条新闻,因为一款配置错误的 Power App 将 3800 万条记录暴露在了互联网上。


重点摘要:


“包括微软在内的 47 家政府实体和隐私公司错误配置了微软的 Power Apps,将 3800 万条敏感数据记录暴露在了互联网上。Power Apps 是一种低代码服务,承诺以一种简单的方式构建专业应用程序。”

是什么导致了这个问题?

UpGuard 公司的一名分析师发现 Power Apps portal 的 OData API 可以允许匿名访问数据库记录。


Power Apps portal 是面向互联网的门户。该门户由微软托管,并与微软 Dataverse 集成。


简单来说,通过某种特定配置,面向互联网的 Power Apps Portal 可以允许存储在多个数据源(SharePoint、Microsoft 365、Dynamics 365、SQLServer 等)中的数据通过匿名(也就是非用户)的 OData 查询来访问。


如果你不希望数据可见,你需要检查一个布尔字段——启用表权限(Enable Table Permissions)布尔值为真才行。


对于这种烦人的配置值,大多数人都会采用默认值,也就是与世界分享数据。


分析师看到许多公司都在使用 Power Apps portal,但许多公司没有设置过这一字段。结果是,他们可能会在面向公共/互联网的门户上提供大量个人和其他数据,任由别人查询。


真是糟糕啊。

设计如此

这不是什么错误或安全漏洞,而是一项按设计意图运作的配置。


UpGuard 的报告清楚地表明了这一点——设计理念:微软Power Apps的默认权限如何暴露数百万人的数据。


如果你想知道如何解决这个问题(我敢肯定有很多开发人员和非专业开发人员都会冒冷汗),请阅读这一说明:提示#1407:如何保护Power Apps portal

低代码警告

低代码开发方法允许非专业开发人员或任何开发人员使用一系列组件来创建软件,并使用更容易理解的查询对软件进行配置。


像微软的 Power Platform 这样的低代码开发工具,其重点都放在了应用程序创建上——但开发人员所要做的工作并不只有创建软件而已。


低代码开发人员(非专业开发人员)同样是开发人员,他们也需要完成开发流程中的其他一些任务。


  • 收集需求(提炼、理解)

  • 维护软件

  • 为软件编写文档

  • 部署

  • 安全性(数据安全、个人数据、安全角色等)

  • 数据源(数据库、文件、保留、备份等)

  • 与其他系统集成

  • 更广泛的环境和其他软件


营销活动不仅仅是发送电子邮件,开发工作也不仅仅是创建代码或构建应用程序。


非专业开发人员和开发人员并非安全专家,所以 IT 部门需要参与进来,并对软件运行渗透测试。IT 部门需要确保开发人员应用了最佳实践,并找出软件中存在的设计缺陷或软件错误来保证安全性。


非专业开发人员欠缺很多专业知识,这就是为什么他们应该在专业人员指导下创建应用程序并将其部署到生产环境中。


如果公司组建自己的低代码开发团队时没有让经验丰富的开发人员或 IT 部门参与,由后者来创建相关标准和最佳实践,就会出现问题。


传统开发方法同样会出现很多安全性缺陷,但它着重强调了安全性这个领域,而非专业开发人员需要学习很多知识才能理解其中的要害。低代码开发工具也都很复杂,所以人们只能精通一两种低代码工具。


公司将需要单独的团队来监督和维护低代码工具,因为没有人能一接触到它们就理解其中的细节。


这不是低代码问题,而是开发问题。低代码开发工具不会取代开发人员,它们会创造新的开发人员群体,催生一支创建和维护生产级应用程序的缺乏经验的开发团队。

低代码革命需要资深开发人员领导


由缺乏经验的开发人员创建大量应用程序有可能导致很多安全漏洞,这就是为什么不可逆转的低代码革命必须由经验丰富的开发人员和 IT 部门全力领导。


低代码开发是一种强大的工具。与其他工具一样,它们需要被当作长期战略的一部分,人们还要为软件创建后发生的各种事情制定计划。


低代码开发不会取代开发人员,它会造就更多缺乏经验的开发人员。非专业开发人员需要高级开发人员的指导和领导,因为与所有初级开发人员一样,他们也会犯错误。


软件是如何创建的并不重要;重要的是它需要安全、维护和支持。低代码软件需要的是与传统软件相同的清单、团队和流程。


原文链接:


https://thehosk.medium.com/will-low-code-development-lead-to-security-problems-and-data-breaches-83a9375d4087

2021-11-24 10:002462
用户头像
刘燕 InfoQ高级技术编辑

发布了 1112 篇内容, 共 593.6 次阅读, 收获喜欢 1981 次。

关注

评论

发布
暂无评论
发现更多内容

架构实战营 - 模块六作业

Alex.Wu

k8s replicaset controller源码分析(3)-expectations机制分析

良凯尔

Kubernetes 源码分析 Kubernetes源码 #Kubernetes#

架构实战营模块6课后作业 拆分电商系统为微服务

apple

官方线索|编程技术宇宙——1024挑战活动

Regan Yue

1024我在现场

设计原则学习笔记

风翱

设计原则 10月月更

又真香了!到底是怎样的JAVA面试文档,拿到这么多offer

Java 编程 程序员 面试

ARouter 拦截器之多 module 独立运行

逆锋起笔

android 组件化 arouter

架构训练营第一模块作业

最后的风之子

「架构实战营」

Prometheus 内置函数(二)

耳东@Erdong

Prometheus PromQL 10月月更

架构实战营 - 模块六作业

en

#架构实战营

LogUtil日志工具类的封装

Changing Lin

10月月更

Lombok与Guava

风翱

lombok 10月月更

架构实战训练营|课后作业|模块 6

Frode

「架构实战营」

拆分电商系统微服务

毛先生

linux防止文件和目录被意外删除或修改

入门小站

Linux

带你认识世界上第一个以商业为中心的元宇宙 Highstreet

devpoint

区块链 元宇宙 10月月更

从华为推出仓颉编程语言引发的对编程语言的思考

轻口味

编程语言 10月月更

普通本科毕业一年,刷完这1000道JAVA面试题,成功逆袭上岸

Java 编程 程序员 面试 大厂面试

官方线索|Bilibili1024程序员节

搬砖人

1024我在现场

在 Vue3中使用Fabric.js实现渐变(Gradient)效果,包括径向渐变radial

德育处主任

JavaScript 大前端 vite Vue3 FabricJS

Go 中如何使用 Interfaces

baiyutang

golang 10月月更

k8s replicaset controller源码分析(2)-核心处理逻辑分析

良凯尔

Kubernetes 源码分析 Kubernetes源码 #Kubernetes#

Vue进阶(幺肆捌):Vuex 辅助函数详解

No Silver Bullet

Vue 辅助函数 10月月更

在线文本去重统计工具

入门小站

工具

Generic Type Variance in Dart

Think

flutter dart 泛型

weblogic 报 java.lang.OutOfMemoryError:PermGen space

看山

Java 10月月更

前端应用部署k8s的平滑发布问题

小江

k8s 大前端 发布流程

面试官:如何回答消息队列的丢失、重复与积压问题

Java 程序员 架构 面试

京东架构师珍藏版:redis深度笔记(全彩版)全篇精华,细节满满

Java 程序员 架构 面试 rediis

不是吧?阿里“百万级”性能优化小册居然能让系统运行得这么快

Java 编程 程序员 性能优化

分布式事务开山之作——《深入理解分布式事务:原理与实战》草图曝光!!

冰河

数据库 分布式 分布式事务 微服务 数据一致性

低代码开发会带来安全问题和数据泄露隐患吗?_AI&大模型_The Hosk_InfoQ精选文章