虹科分享 | 软件供应链攻击如何工作?如何评估软件供应链安全?

说到应用程序和软件,关键词是“更多”。在数字经济需求的推动下,从简化业务运营到创造创新的新收入机会,企业越来越依赖应用程序。云本地应用程序开发更是火上浇油。然而,情况是双向的:这些应用程序通常更复杂,使用的开放源代码比以往任何时候都包含更多的漏洞。此外,威胁行为者正在创造和使用更多的攻击方法和技术,通常是组合在一起的。

最终,我们得到了各种攻击机会的大杂烩,威胁行为者知道这一点。事实上,Mend.io最近发布的关于软件供应链恶意软件的报告显示,从2021年到2022年,发布到NPM和RubyGems上的恶意包数量跃升了315%。这些攻击通常会危及受信任的供应商。

正是因为他们利用了可信的关系,他们可能很难被发现和击退。

那么,你如何防御它们呢?

软件供应链攻击是如何运作的?

软件供应链是为应用程序提供软件组件的供应商和供应商的网络。敌手侵入第三方软件以获取对您的系统和代码库的访问权限。然后,他们在你的供应链中横向移动,直到他们到达预期的目标。

一般来说,软件供应链攻击遵循一系列阶段。

侦察

恶意行为者研究他们的目标并识别供应链中的漏洞。这涉及到收集关于供应链中的供应商、供应商和合作伙伴的信息。

最初的妥协

第一次接触到供应链中的薄弱环节,如第三方供应商或供应商。它可能涉及网络钓鱼和其他社交工程,以诱骗员工提供访问凭据。

横向运动

一旦进入供应链,攻击者就会试图使用被盗的凭据或利用漏洞等手段访问其他系统或数据。

特权升级

攻击者试图获得对目标企业内的关键系统的管理访问权限,如域控制器或其他保存敏感数据的服务器。

数据外泄

数据或知识产权被盗,或造成其他破坏。

通过了解这些阶段,您可以采取措施在软件供应链攻击造成重大破坏之前检测、减轻和防止它们。

软件供应链安全漏洞最常见的原因

代码审查和测试不足,导致漏洞未被检测到。企业应实施全面的代码审查和测试流程,以识别和缓解任何潜在的安全问题。

过时/未打补丁的软件使系统容易受到攻击者利用的已知安全漏洞的攻击。

设计不佳的访问控制和薄弱的身份验证允许攻击者轻松获得对敏感系统和数据的未经授权访问。

薄弱的加密和不安全的通信使数据泄露变得很容易。

如果企业没有工具或专业知识来有效地监控和检测威胁,缺乏对供应链的可见性就会增加暴露在潜在问题中的风险。这是也构成威胁的一些隐藏漏洞中的第一个。

其他包括:

隐藏的漏洞

第三方依赖项。应用程序通常依赖于第三方库和组件,如果管理不当,可能会引入漏洞。这些可能很难检测到,特别是当企业对源代码的可见性很差的时候。

软件供应商缺乏多样性。如果企业依赖于单一的软件供应商,并且无法了解其安全实践,那么它就无法有效地检测隐藏的漏洞。

针对开源软件的攻击之所以发生,是因为企业大量使用开源软件,以至于它是一个巨大的攻击面。

如何评估供应链安全?

确定软件供应商和合作伙伴。生成软件材料清单(SBOM)-所有供应商、承包商和其他合作伙伴的清单,检查他们的安全策略和控制,以及他们是否符合法规。

进行风险评估并制定补救计划,包括可靠的软件测试和增强安全意识。

审查并实施您的控制和策略。确保您的策略符合安全要求。检查访问控制和数据保护,以防止未经授权的访问、加强保密性、限制攻击面并降低第三方风险。

增强加密和安全通信的能力

评估和重新设计供应链架构,以提高供应链可见性,更好地识别和管理潜在问题、恶意活动、第三方风险,并确保满足合规和监管要求。

构建全面的安全方法。结合使用漏洞扫描仪、终端保护软件、网络安全工具、身份和访问管理以及特定的软件供应链工具,以及员工培训和响应规划。

在下一篇文章中,我将介绍如何成功地做到这一点,以及您应该如何使用这些工具来加强软件和应用程序的安全性。

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

如若内容造成侵权/违法违规/事实不符,请联系长河编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

SPF9139全力适配ios16与鸿蒙3.0,超实用数据提取、分析、恢复能力UP!

​ 如今,群聊已成为人们必不可少的沟通窗口 家人群,好友群,班级群 粉丝群,交友群,工作群 …… 各类群聊铺天盖地般涌来的同时 也有一些群聊沦为了 赌博、传播淫秽视频、发表不当言论 等违法犯罪行为滋生之地 与…

开源日报 0825 | 简化开发过程,提升Swift应用性能的扩展工具库

OpenZeppelin/openzeppelin-contracts Stars: 22.8k License: MIT OpenZeppelin Contracts 是一个用于安全智能合约开发的库。它建立在社区验证过的代码基础上,具有以下主要功能: 实现了 ERC20 和 ERC721 等标准。灵活的基于角色的权限控制方案。可重…

Jenkins :添加node权限获取凭据、执行命令

拥有Jenkins agent权限的账号可以对node节点进行操作,通过添加不同的node可以让流水线项目在不同的节点上运行,安装Jenkins的主机默认作为master节点。 1.Jenkins 添加node获取明文凭据 通过添加node节点,本地监听ssh认证,选则凭…

iOS系统暗黑模式

系统暗黑模式: 暗黑模式颜色适配: 方式1: Assets配置:在Assets中配置好颜色后,可以通过colorNamed: 放大获取到动态颜色。 方式2:代码配置,通过代码colorWithDynamicProvider: 可以看出来生成…

移动端H5封装一个 ScrollList 横向滚动列表组件,实现向左滑动

效果&#xff1a; 1.封装组件&#xff1a; <template><div class"scroll-list"><divclass"scroll-list-content":style"{ background, color, fontSize: size }"ref"scrollListContent"><div class"scroll…

arcgis实现矢量数据的局部裁剪

目录 环境介绍&#xff1a; 操作任务&#xff1a; 方法一&#xff1a;通过arcgis直接选取要素并保存出来 方法二&#xff1a;通过已知的经纬范围&#xff0c;掩膜获取该范围内的矢量数据 环境介绍&#xff1a; Windows操作系统、arcgis10.8 操作任务&#xff1a; 从整体的…

3ds max文件打包?max插件CG Magic一键打包整起!

3ds max文件如何打包&#xff1f;这个问题&#xff0c;小编听到不少网友的提问&#xff01; 今天CG Magic小编来和大家聊聊&#xff0c;文件更高效的操作&#xff0c;如何打包处理呢&#xff1f; 3DMAX这款软件的受众群体是比较高的&#xff0c;在工作方便的同时&#xff0c;…

uniapp h5 echarts 打包后图表点击失效/及其他失效

文章目录 期望效果实际效果环境引入echarts方式解决方法&#xff1a;注意 原因多说一句在h5打包的时候将 history 改为 hash 不然在浏览器打开后刷新会404 期望效果 实际效果 环境 pc端 window11 hbuilderx版本 3.8.12 echarts版本 5.4.3 引入echarts方式 npm install echar…

二,手机硬件参数介绍和校验算法

系列文章目录 第一章 安卓aosp源码编译环境搭建 第二章 手机硬件参数介绍和校验算法 第三章 修改安卓aosp代码更改硬件参数 第四章 编译定制rom并刷机实现硬改(一) 第五章 编译定制rom并刷机实现硬改(二) 第六章 不root不magisk不xposed lsposed frida原生修改定位 第七章 安卓…

Css实现右上角飘带效果

效果图&#xff1a; 源码&#xff1a; <!DOCTYPE html> <html><head><meta charset"utf-8"><title></title><style type"text/css">*{margin: 0 auto;padding: 0;}.wrap {/* 设置宽高 */width: 350px;height: …

Vue 安装与创建第一Docker的项目

1. 下载nodejs 并且安装 https://nodejs.org/en 2. 打开命令窗口&#xff0c;验证是否安装成功 C:\Users\Harry>node -v v18.16.0C:\Users\Harry>npm -v 9.5.1 3. 安装Vue CLI C:\Users\Harry>npm install -g vue/cli 经过不算漫长的等待&#xff0c;你的Vue CLI就装…

CSS——grid网格布局的基本使用

网格布局在实现页面自适应&#xff0c;大屏可视化中常常使用&#xff0c;在这篇博客里&#xff0c;记录一下网格布局的基本使用。 参考文档&#xff1a;网格布局_菜鸟教程 文章目录 1. 体会grid的自适应性2. grid-template-arr配置网格行列3. 网格单位fr与repeat()简写属性值4…

SpringMVC中的JSR303与拦截器的使用

一&#xff0c;JSR303的概念 JSR303是Java中的一个标准&#xff0c;用于验证和校验JavaBean对象的属性的合法性。它提供了一组用于定义验证规则的注解&#xff0c;如NotNull、Min、Max等。在Spring MVC中&#xff0c;可以使用JSR303注解对请求参数进行校验。 1.2 为什么要使用J…

腾讯mini项目-【指标监控服务重构】2023-08-11

今日待办 使用watermill框架替代当前的base_runner框架 a. 参考官方提供的sarama kafka Pub/Sub(https://github.com/ThreeDotsLabs/watermill-kafka/)实现kafka-go(https://github.com/segmentio/kafka-go)的Pub/Sub&#xff08;sarama需要cgo&#xff0c;会导致一些额外的镜像…

nginx配置指南

nginx.conf配置 找到Nginx的安装目录下的nginx.conf文件&#xff0c;该文件负责Nginx的基础功能配置。 配置文件概述 Nginx的主配置文件(conf/nginx.conf)按以下结构组织&#xff1a; 配置块功能描述全局块与Nginx运行相关的全局设置events块与网络连接有关的设置http块代理…

windows11安装安卓程序的坑

首先&#xff0c;百度一下&#xff0c;网上大把教程&#xff0c;比如&#xff1a; 【2023最新版】Windows11家庭版&#xff1a;安卓子系统&#xff08;WSA&#xff09;安装及使用教程【全网最详细】_QomolangmaH的博客-CSDN博客 写的就比较详细了&#xff0c;仅供参考。 一些…

C【动态内存管理】

1. 为什么存在动态内存分配 int val 20;//在栈空间上开辟四个字节 char arr[10] {0};//在栈空间上开辟10个字节的连续空间 2. 动态内存函数的介绍 2.1 malloc&#xff1a;stdlib.h void* malloc (size_t size); int* p (int*)malloc(40); #include <stdlib.h> #incl…

9.3.5网络原理(应用层HTTP/HTTPS)

一.HTTP: 1. HTTP是超文本传输协议,除了传输字符串,还可以传输图片,字体,视频,音频. 2. 3.HTTP协议报文格式:a.首行,b.请求头(header),c.空行(相当于一个分隔符,分隔了header和body),d.正文(body). 4. 5.URL:唯一资源描述符(长度不限制). a. b.注意:查询字符串(query stri…

MediaPipe+OpenCV 实现实时手势识别(附Python源码)

MediaPipe官网&#xff1a;https://developers.google.com/mediapipe MediaPipe仓库&#xff1a;https://github.com/google/mediapipe 一、MediaPipe介绍 MediaPipe 是一个由 Google 开发的开源跨平台机器学习框架&#xff0c;用于构建视觉和感知应用程序。它提供了一系列预训…

【SPI读取外部Flash】使用逻辑分析仪来读取FLASH Device ID

实验设备&#xff1a;25块钱的 逻辑分析仪 和 野火F429开发板 注意点&#xff0c;这个逻辑分析仪最大只能检测24M的波形&#xff0c;而SPI是在外部通道2&#xff0c;所以我们对系统时钟的分频&#xff0c;也就是给到通道2的时钟速度要在24M内&#xff0c;不然检测到的数据是有…