证券行业SCA开源风险治理实践

近日,悬镜安全成功中标国内领先的证券公司海通证券软件成分分析工具采购项目,中标产品为源鉴SCA开源威胁管控平台

海通证券作为国内领先的证券公司之一,当下已基本建成涵盖证券期货经纪、投行、自营、资产管理、私募股权投资、另类投资、融资租赁、境外投行等多个业务领域的金融服务企业。海通证券始终秉承“科技引领”发展战略,以建设“敏捷化、平台化、智能化、生态化”为核心特征的“数字海通 2.0”为目标,坚持关键技术自主可控,深入推进金融科技创新,已成为行业数字化转型的探索者、 先行者。

积极推进“数字海通2.0”建设,从源头风险治理开始

随着海通证券业务发展,软件开发生命周期中的开源组件使用日益增多,为满足内部安全要求,有效防控开源组件相关风险,并结合 DevOps 流程建设保障应用和软件知识产权与安全,特开展软件成分分析工具采购项目建设。根据海通证券内部软件开发现状,软件开发生命周期制定合理的开源治理方案,从源头控制不安全组件入口,全面检测第三方组件在入库及使用过程中的完整性、安全性、合规性、恶意代码以及版本问题,防范因第三方组件引发的应用系统攻击、法律风险和知识产权损失等问题。

风险预知,积极以对

  • 检测应用第三方组件中的已知、可达漏洞

持续监控第三方组件在应用中的情况,检测其中本身存在的漏洞。由于攻击者可利用这些已知漏洞对应用系统发起攻击破坏,因此需建立完善的漏洞检测机制,及时发现并处理,确保应用系统安全。同时,基于漏洞的“可达性分析”技术,降低被声明引入但还未真正使用组件中的漏洞的优先级,能够帮助用户做出更合理的优先级决策,让有限的安全资源能够更加聚焦、高效的被利用。

  • 检测第三方组件的软件许可问题 

分析调用的第三方组件的许可证类型。目前,国际公认的开源许可证共有80多种。有的许可证对软件的使用方式几乎没有限制,用户几乎不用关心需要承担的责任,但是也存在一些限制性比较强的许可证,如果不小心调用,可能会带来较大的法律风险和知识产权的损失。通过将具备相似特征和风险的许可证自定义为许可证系列,并以系列为单位进行管理,结合对许可证冲突条款的持续监控预警,将极大程度简化用户在许可证合规治理过程中的复杂度。

  • 检测第三方组件中的恶意代码问题

高度关注第三方组件中的恶意代码问题。恶意代码风险主要源于非正规渠道获取的被篡改组件或恶意开发者提供的组件。若未经确认将此类组件引入业务系统,会带来极大风险。因此,要建立严格的代码审查机制,对第三方组件进行深度扫描,精准识别恶意组件的名称、版本号、编程语言、投毒方式等信息,杜绝业务系统中恶意代码的进入和扩散。 

  • 引用版本过旧的第三方组件

虽然老旧的第三方组件所带来的风险相对较低,但仍需留意。由于其可能存在一些未知的、开发者未公布但已修复的 0day 漏洞,应将其视为潜在风险进行跟踪,在必要时进行更新或替换。

  • 以软件物料清单为核心情报进行监测预警

数字供应链的分析与安全监测,同样需要自己的威胁情报。充分利用软件物料清单(SBOM)技术,已经成为业界对此的共识。通过匹配SBOM情报与自身数字资产,用户能够从漏洞和恶意代码两个维度,对第三方组件进行更具针对性的风险预警、威胁定位和响应处置。

六大核心引擎,打造数字供应链安全防线

基于以上背景,为了有效应对开源治理方面的挑战,经过多轮测试对比,海通证券最终引入悬镜安全源鉴SCA开源威胁管控平台,通过悬镜SCA自研专利级源码组件成分分析、制品成分二进制分析、容器镜像成分扫描、运行时成分动态追踪、代码成分溯源分析及开源供应链安全情报预警分析等六大核心引擎,快速反馈清单中的组件的漏洞风险和许可证风险。通过源鉴 SCA 工具的建设,海通证券可以对应用中的开源组件、可能存在的漏洞以及相关许可证风险进行全面且细致的关联聚合分析。一旦风险浮现,无论是在引入源头环节、开发过程中,还是在运行监控阶段,甚至是管理层面,都能够凭借该平台快速精准地定位漏洞所在,并及时实施修复。这种多维度的管控模式,形成了一个严密的闭环,如同坚固的防线一般,全面治理开源威胁,为海通证券的业务发展和信息安全保驾护航,确保其在金融科技领域的稳健前行。

源鉴SCA开源治理工具融入DevOps流程建设

敏捷安全赋能,润物细无声

  • CI 流水线与代码库、私服库

在软件开发过程中,CI(持续集成)流水线扮演着关键角色。它与代码库和私服库紧密相连。代码库是代码的存储中心,私服库则是存放第三方依赖或内部共享组件的地方。CI 流水线会从代码库获取代码,并在构建过程中从私服库获取所需的依赖。对于 CI 流水线的管控,要确保其对代码库和私服库的访问安全,防止恶意篡改或引入不安全的元素。同时,要保证代码从代码库到 CI 流水线的传输完整性,以及私服库中组件的合法性和安全性。

  • 重点业务系统与非重点业务系统

重点业务系统由于其对公司运营的关键作用,需要更高标准的安全防护。相比之下,非重点业务系统的安全优先级稍低。在资源分配和安全策略实施上,要优先保障重点业务系统的安全。对于重点业务系统所使用的代码和组件,无论是开源还是内部开发,都要经过严格审查和测试。在出现安全风险时,重点业务系统的修复要优先于非重点业务系统,以降低对核心业务的影响。

  • 直接依赖与间接依赖

直接依赖是项目中直接引用的组件或库,对项目的运行有着直接影响。而间接依赖则是依赖项的依赖,其关系更为复杂。在安全管理中,要更关注直接依赖的安全性,因为它们与业务逻辑的联系更紧密。但也不能忽视间接依赖可能带来的风险,需要进行全面的依赖分析,确保整个依赖链的安全。

  • 风险等级与利用难度

严重风险、高危风险和中危风险需要我们重点关注和修复,低危风险由于影响较小可不进行修复。同时,利用难度也是评估风险的一个因素。利用难度容易的风险要优先处理,因为它们更容易被攻击者利用。根据修复建议实施的困难程度,若修复困难较大,可以考虑使用临时措施来降低风险,保障系统在修复期间的安全性。

截至目前,作为新一代开源数字供应链安全审查与治理平台,源鉴SCA开源威胁管控平台已连续四年在市场应用率领先,在国内首批通过供应链安全检测工具类-增强级(编号CSPEC-GGJ2401001)认证,并广泛实践于金融、泛互联网、政企、通信、能源等行业头部用户,帮助用户从引入源头、开发过程、运行监控、管理等多维度闭环治理开源威胁。身为全球数字供应链安全开拓者与引领者,悬镜安全将持续深耕数字供应链安全关键技术研究突破与实践创新,通过AI大模型技术深度赋能基于“智能供应链安全管理平台+敏捷安全工具链+AI安全情报预警”的第三代DevSecOps数字供应链安全管理体系,积极发挥先行者的产业生态影响力,加强行业生态协同,助力企业用户数智化转型升级和高质量发展,真正实现数字供应链安全能力质的飞跃,守护中国数字供应链安全。

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

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

相关文章

JVM内存结构笔记(上)

文章目录 前言运行时数据区域1.程序计数器定义特点总结 2.虚拟机栈2.1 定义局部变量表 ★操作数栈动态链接方法返回地址(方法出口) 2.2 栈内存溢出演示栈内存溢出 java.lang.StackOverflowError 2.3问题辨析1. 垃圾回收是否涉及栈内存?2. 栈内存分配越大越好吗&…

使用 Miniforge3 管理 Python 环境的详细指南(基于最新实践和时效性信息,截至 2025 年)

以下是使用 Miniforge3 管理 Python 环境的详细指南(基于最新实践和时效性信息,截至 2025 年): 一、Miniforge3 简介 Miniforge3 是一个轻量级 Conda 环境管理工具,默认使用 conda-forge 软件源(社区维护的…

【python|二分|leetcode441】一题搞清楚二分区间问题---闭区间、左闭右开、左开右闭、全开区间

every blog every motto: Although the world is full of suffering, it is full also of the overcoming of it 0. 前言 一题搞清楚二分区间问题—闭区间、左闭右开、左开右闭、全开区间 0.1 题目:Problem: 441. 排列硬币 你总共有 n 枚硬币&#x…

【NLP 34、实践 ⑧ 基于faq知识库和文本匹配算法进行意图识别】

目录 一、demo1_similarity_function.py 二、demo2_bm25.py 三、基于faq知识库和文本匹配算法的意图识别 1.初始化 2.加载BM25模型 3.加载Word2Vec模型 4.文本向量化 5.加载知识库 6.查询方法 7.模型测试 正是江南好时节,落花时节又逢君 —— 25.3.7 一、demo1_sim…

机器人交互系统 部署构建

环境要求 Ubuntu 20.04 或更高版本ROS Noetic 或兼容版本Python 3.8 安装步骤 1. 安装ROS环境(如未安装) sudo apt update sudo apt install ros-noetic-desktop-full source /opt/ros/noetic/setup.bash2. 创建工作空间并克隆代码 mkdir -p ~/code…

每日一题——两数相加

两数相加 问题描述问题分析解题思路代码实现代码解析注意事项示例运行总结 问题描述 给定两个非空链表,表示两个非负整数。链表中的每个节点存储一个数字,数字的存储顺序为逆序(即个位在链表头部)。要求将这两个数字相加&#xff…

ResNet50深度解析:原理、结构与PyTorch实现

ResNet50深度解析:原理、结构与PyTorch实现 1. 引言 ResNet(残差网络)是深度学习领域的一项重大突破,它巧妙解决了深层神经网络训练中的梯度消失/爆炸问题,使得构建和训练更深的网络成为可能。作为计算机视觉领域的里…

政安晨【零基础玩转各类开源AI项目】Wan 2.1 本地部署,基于ComfyUI运行,最强文生视频 图生视频,一键生成高质量影片

政安晨的个人主页:政安晨 欢迎 👍点赞✍评论⭐收藏 希望政安晨的博客能够对您有所裨益,如有不足之处,欢迎在评论区提出指正! 目录 下载项目 创建虚拟环境 安装项目依赖 尝试运行 依次下载模型 完成 我们今天要使…

每日一题----------String 和StringBuffer和StringBuiler重点

本质:是一个char字符数组存储字符串 总结: 1.如果字符串存在大量的修改操作,一般使用StringBuffer或者StringBuilder。 2.如果字符串存在大量的修改操作,并且单线程的情况,使用StringBuilder。 3.如果字符串存在大…

35.HarmonyOS NEXT Layout布局组件系统详解(二):AutoRow行组件实现原理

HarmonyOS NEXT Layout布局组件系统详解(二):AutoRow行组件实现原理 文章目录 HarmonyOS NEXT Layout布局组件系统详解(二):AutoRow行组件实现原理1. AutoRow组件概述2. AutoRow组件接口定义3. AutoRow组件…

Java 集合框架大师课:集合框架源码解剖室(五)

🔥Java 集合框架大师课:集合框架源码解剖室(五) 💣 警告:本章包含大量 裸码级硬核分析,建议搭配咖啡因饮料阅读!☕️ 第一章 ArrayList 的扩容玄学 1.1 动态扩容核心代码大卸八块 …

Kubernetes服务部署 —— Kafka

1、简介 Kafka和zookeeper是两种典型的有状态的应用集群服务。首先kafka和zookeeper都需要存储盘来保存有状态信息;其次kafka和zookeeper每一个实例都需要有对应的实例Id (Kafka需broker.id, zookeeper需要my.id) 来作为集群内部每个成员的标识,集群内节…

计算机网络基础知识

🧑 博主简介:CSDN博客专家,历代文学网(PC端可以访问:https://literature.sinhy.com/#/literature?__c1000,移动端可微信小程序搜索“历代文学”)总架构师,15年工作经验,…

电脑的写字板如何使用?

打开写字板: 直接按一下键盘上的win R 键,然后输入:write , 再按一下回车 , 即可打开写字板 可以在里面写文字 和 插入图片等… , 如下所示: 保存写字板内容: 当我们写好了之后,…

用vector实现栈的功能

要注意pop_back和back()的区别 #include <bits/stdc.h> using namespace std;void Push(vector<int> &v,int x) {v.push_back(x); }void Top(vector<int> &v) {if(!v.empty()){cout<<v.back()<<endl;// v.pop_back();}else {cout<&l…

SegMAN模型详解及代码复现

SegMAN模型概述 模型背景 在深入探讨SegMAN模型之前&#xff0c;我们需要了解其研究背景。在SegMAN出现之前&#xff0c;计算机视觉领域的研究主要集中在以下几个方面&#xff1a; 手工制作方法&#xff0c;如SIFT基于卷积神经网络(CNN)的方法&#xff0c;如STN和PTN对平移、…

基于粒子群算法的配电网重构

一、配电网重构原理 定义&#xff1a; 配电网重构是指在满足运行约束的前提下&#xff0c;通过改变开关状态优化配电网性能&#xff0c;提高系统的经济效益和运行效率。 拓扑约束&#xff1a; 配电网必须保持径向拓扑&#xff0c;避免环网或孤岛。采用算法控制开关状态的选择&…

自然语言处理:无监督朴素贝叶斯模型

介绍 大家好&#xff0c;博主又来和大家分享自然语言处理领域的知识了&#xff0c;今天给大家介绍的是无监督朴素贝叶斯模型。 在自然语言处理这个充满挑战又极具魅力的领域&#xff0c;如何从海量的文本数据中挖掘有价值的信息&#xff0c;一直是研究者们不断探索的课题。无…

软件工程概述

软件开发生命周期 软件定义时期&#xff1a;包括可行性研究和详细需求分析&#xff0c;任务是确定软件开发的总目标。 问题定义可行性研究&#xff08;经济、技术、操作、社会可行性&#xff0c;确定问题和解决办法&#xff09;需求分析&#xff08;确定功能需求&#xff0c;性…

基于51单片机的日历流水灯proteus仿真

地址&#xff1a; https://pan.baidu.com/s/1lt1ubDhKNTeIcP0Kf1UXrA 提取码&#xff1a;1234 仿真图&#xff1a; 芯片/模块的特点&#xff1a; AT89C52/AT89C51简介&#xff1a; AT89C51 是一款常用的 8 位单片机&#xff0c;由 Atmel 公司&#xff08;现已被 Microchip 收…