软件安全最佳实践:首先关注的地方

尽管组织拥有大量可用的工具,但应用程序安全性仍然不足。

最近的数据显示,在过去四到五年中,软件供应链攻击同比增长了 600-700%,超过一半的美国企业在过去 12 个月中遭受过某种形式的软件供应链攻击。  

为何应用程序安全工作未能达到预期? 

其根源在于: 

庞大的软件工厂

开发变得更加复杂,而构建开发人员环境(SCM、CI/CD 工件存储库、云基础设施等)比以往任何时候都更加容易和快速。

随着这种转变,安全部门正在失去对开发环境的可见性,从而导致大量攻击面得不到控制。    

孤立的风险识别和分类

多种应用程序安全工具用于评估应用程序中的风险,但每种工具都会查看应用程序的不同区域,并且发现的问题通常没有联系或关联,因此很难在噪音中找到信号。

同时,大多数组织现在都有云安全团队、应用程序安全团队、DevOps 团队等,通常对端到端软件工厂或其中生产的软件的风险没有任何整体了解。  

忽略攻击面

现有的应用程序或云安全工具专注于云基础设施和应用程序本身,但在很大程度上忽略了软件工厂。

这些工具没有考虑源代码控制管理系统、CI/CD 系统甚至工件注册表中的风险,恶意攻击者已经意识到了这一点。  

 弥合 AppSec 差距的重点工作在哪里  
 
你从哪里开始呢?

根据我们最常看到的差距和风险,建议优先考虑以下被忽视的领域:  

机密扫描

我们经常看到组织环境中的机密被泄露。机密已成为攻击者的首要切入点。对整个开发环境(而不仅仅是源代码)进行机密扫描是至关重要的第一步。机密可能隐藏在 wiki 文件、Jira 票证、日志文件和容器中,因此在搜索潜在漏洞时必须广撒网。 

定期轮换密钥并利用密钥管理系统可以显著降低凭证被盗用的风险。此外,实施蜜罐令牌可以充当预警系统,在发生更严重的攻击之前提醒安全团队注意潜在的漏洞。 

最小权限

开发人员在项目间拥有过多权限的情况并不少见,这会不必要地增加攻击面。为了方便起见,构建工具经常配置过多权限,但这些系统通常可以访问敏感 IP,例如代码、生产数据等。 

保持可见性和正确配置:安全团队需要实时了解开发人员创建的新建资产或管道。为管道和云基础设施创建“铺平道路”或预配置的安全模板可以显著降低配置错误的风险,并使开发人员更容易采用安全做法。 

基于风险的左移

在将漏洞发送给开发人员之前,使用业务背景和基于风险的方法对其进行分类。仅发送关键或高危漏洞可能会忽略高价值资产中非常容易被利用的中等漏洞,而将所有漏洞发送给开发人员只会淹没这些漏洞,并让他们陷入安全债务。

在评估要修复的内容和修复速度时,找到一个折衷方案,考虑诸如暴露、业务影响、可利用性和合规性等因素。 

培训

虽然安全编码实践很重要,但组织也应该注重教导开发人员识别网络钓鱼尝试,了解正确的配置管理,并注意依赖混淆和命名空间攻击等威胁。 

利用应用程序安全态势管理 (ASPM) 弥补差距  

手动实施这些最佳实践可能是一项艰巨的任务,尤其是对于已经超负荷工作的安全和开发团队而言。

这时,应用程序安全态势管理 (ASPM) 工具就可以提供巨大的价值。

ASPM 解决方案提供整个软件供应链的端到端可视性,关联来自多个来源的漏洞,并实现基于风险的安全问题优先级排序。 

通过采用这些最佳实践并利用适当的工具,组织可以采取有意义的步骤来保护整个软件开发生命周期 (SDLC) ,降低实际风险并构建更具弹性和可扩展的软件安全程序。  

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

如若内容造成侵权/违法违规/事实不符,请联系一条长河网进行投诉反馈,一经查实,立即删除!

相关文章

LeetCode[中等] 142. 环形链表 II

给定一个链表的头节点 head ,返回链表开始入环的第一个节点。 如果链表无环,则返回 null。 如果链表中有某个节点,可以通过连续跟踪 next 指针再次到达,则链表中存在环。 为了表示给定链表中的环,评测系统内部使用整…

Elasticsearch:一次生产集群 ES Watcher 失效的深度排查与分析 - 全过程剖析与解决方案

作者:尚雷,TechTalk 技术交流社区创办者 一次生产集群 ES Watcher 失效的深度排查与分析 全过程剖析与解决方案​​ 一、Elasticsearch Watcher 介绍 1.1 Watcher 概念概述 Watcher 是 Elasticsearch 提供的一项监控和告警服务,允许用户定义…

末端回路漏电监测仪为何不可或缺?

末端回路漏电监测仪 接地故障保护器 智能电力继电器 智能型剩余电流继电器 智能动作保护器 在2022年8月14日一个寻常的午后,庄南地的一片豆角田边,发生了一场令人痛心的意外。杨某与其父亲杨某某正忙于灌溉作物,却不料,一场本可避…

Vue3.0组合式API:依赖注入provide和inject实现跨层组件的通信

Vue3.0组合式API系列文章: 《Vue3.0组合式API:setup()函数》 《Vue3.0组合式API:使用reactive()、ref()创建响应式代理对象》 《Vue3.0组合式API:computed计算属性、watch监听器、watchEffect高级监听器》 《Vue3.0组合式API&…

TypeScript异常处理

1.异常的概念 程序运行中意外发生的情况就成为异常 例子: //除法运算function chu(num1:number,num2:number){if(num20){//throw 抛出异常throw new Error(除数不能为零)}let num:numbernum1/num2console.log(num) }//程序出现异常后会停止运行// 捕获异常try{ /…

论文《Mixture of Weak Strong Experts on Graphs》笔记

【Mowst 2024 ICLR】论文提出了一种新的图神经网络架构,称为Mixture of weak and strong experts(Mowst),通过将轻量级的多层感知机(MLP)作为弱专家和现成的GNN作为强专家相结合,以处理图中的节…

Linux云计算 |【第四阶段】NOSQL-DAY1

主要内容: NoSQL概述(RDBMS、NoSQL)、部署Redis服务、Redis数据类型(字符串、散列类型、列表类型、集合类型、有序集合类型)、Redis其它操作命令、修改Redis服务运行参数、部署支持PHP和Redis的Nginx服务器 一、NoSQL…

4G模组SIM双卡切换是徒增成本,还是未雨绸缪?

初学开发的小伙伴提出疑问:手机双卡可以理解,物联网设备有必要双卡吗,会不会太浪费? 但在实际应用中,双卡是必需的。 在使用4G模组双卡功能的场景下,切换卡槽更是一个关键环节——关乎设备在不同网络环境…

【设计模式-享元】

Flyweight Pattern(享元模式) 是一种结构型设计模式,旨在通过共享对象来减少内存使用和提高性能。享元模式特别适用于需要大量相似对象的场景,可以有效地减少内存开销。 核心思想 享元模式通过将对象的共享部分(共享…

关于单片机的技术原理及应用

成长路上不孤单😊😊😊😊😊😊 【14后😊///C爱好者😊///持续分享所学😊///如有需要欢迎收藏转发///😊】 今日分享关于单片机的技术原理及应用的相关内容&…

ANSYS Workbench蜂窝板泰森多边形Voronoi结构建模

在ANSYS Workbench内基于Voronoi算法建立泰森多边形蜂窝状结构板模型可采用CAD Voronoi插件建模后将模型导入。 在插件内设置好模型参数后运行,插件会自动在CAD内完成Voronoi图形的绘制。 将长方形与Voronoi晶格分别生成面域并做差集,形成Voronoi框架…

【JAVA开源】基于Vue和SpringBoot的校园美食分享平台

本文项目编号 T 033 ,文末自助获取源码 \color{red}{T033,文末自助获取源码} T033,文末自助获取源码 目录 一、系统介绍二、演示录屏三、启动教程四、功能截图五、文案资料5.1 选题背景5.2 国内外研究现状5.3 可行性分析 六、核心代码6.1 查…

多层感知机paddle

多层感知机——paddle部分 本文部分为paddle框架以及部分理论分析,torch框架对应代码可见多层感知机 import paddle print("paddle version:",paddle.__version__)paddle version: 2.6.1多层感知机(MLP,也称为神经网络&#xff0…

Visual Studio-X64汇编编写

纯64位汇编: includelib ucrt.lib includelib legacy_stdio_definitions.lib includelib user32.libextern printf:proc extern MessageBoxA:proc.data szFormat db "%s",0 szHello db "HelloWorld",0 szRk db "123",0.code start p…

鸿蒙生态应用

鸿蒙生态应用开发核心概念 HarmonyOS 应用:使用 HarmonyOS SDK 开发的应用程序,能够在华为终端设备 (如:手机、平板等)上运行,其有两种形态: ⚫ 传统方式的需要安装的 App。 ⚫ 轻量级&#xf…

碎纸片的自动拼接复原技术

摘要:破碎文件的拼接在司法物证复原、历史文献修复以及军事情报获取等领域都有着重要的应用。目前发现对碎纸片的拼接大部分由人工完成,准确率较高,但耗费大量人力财力及时间,效率很低。随着计算机技术的发展,人们试图…

java 解析excel

在Java中解析Excel文件,可以使用Apache POI库。以下是一个简单的例子,展示如何使用Apache POI读取一个Excel文件(假设为.xlsx格式)的内容。 首先,确保你的项目中包含了Apache POI的依赖。如果你使用Maven,…

结构体易忘点

结构体初始化 当我们去初始化一个结构体的时候,我们常常会按变量顺序初始化,但其实也可以不按顺序,同时也可以部分数据初始化。 结构体对齐 结构体里面的成员有一定的对齐规则,他不是每一个空间都存着有效数据的,有些…

综合时如何计算net delay?

在PR阶段,互连线的延迟可以通过抽取net的rc值计算得到。而在综合阶段,因为没有实际的布局布线,便无法去抽取net上的rc值。那么,线负载模型(wire load model)便派上用场了。 所谓线负载模型,就是…

力扣上刷题之C语言实现(数组)

一. 简介 本文记录一下力扣的逻辑题。主要是数组方面的,使用 C语言实现。 二. 力扣上刷题之C语言实现 1. 两数之和 给定一个整数数组 nums 和一个整数目标值 target,请你在该数组中找出 和为目标值 target的那 两个 整数,并返回它们的数…