freeBuf
主站

分类

漏洞 工具 极客 Web安全 系统安全 网络安全 无线安全 设备/客户端安全 数据安全 安全管理 企业安全 工控安全

特色

头条 人物志 活动 视频 观点 招聘 报告 资讯 区块链安全 标准与合规 容器安全 公开课

官方公众号企业安全新浪微博

FreeBuf.COM网络安全行业门户,每日发布专业的安全资讯、技术剖析。

FreeBuf+小程序

FreeBuf+小程序

    泛联新安软件供应链安全治理与运营方案
    2023-02-09 11:12:09
    所属地 上海

    一、治理方案背景

    1.行业概况

    1.1 国际

    2002 年,美国布什政府提出强调关注 ICT 供应链安全问题的信息安全战略,美国将 ICT供应链安全问题提到了国家战略的高度予以重视。

    2008年,美国布什政府发布的 54 号国家安全总统令(NSPD54)提出国家网络安全综合计划(CNCI),其部署的一项重要工作就是建立全方位的措施来实施全球供应链风险管理。为落实该计划对 ICT 供应链安全问题的部署, 2008 年美国国家标准和技术研究院(NIST)启动了 ICT 供应链风险管理项(SCRM),在原《信息保障技术框架》(IATF)提出的“纵深防御”战略的基础上,提出了“广度防御”的战略,开发全生命周期的风险管理标准。NIST 认为,“纵深防御”战略侧重于通过分层的防御体系对网络和系统进行保护,其关注的是产品在运行中的安全,因而不能解决供应链安全问题,而“广度防御”战略的核心是在系统的完整生命周期内减少风险,这一认识的变化也奠定了当前 ICT 供应链安全风险管理方法的基础。

    2009 年,美国奥巴马政府在《网络空间安全政策评估报告》中指出,应对供应链风险除了对国外产品服务供应商进行谴责外,更需要创建一套新的供应链风险管理方法。

    2011 年,美国奥巴马政府发布的《网络空间国际战略》中将“与工业部门磋商,加强高科技供应链的安全性”作为保护美国网络空间安全的优先政策。

    2014 年,美国国会提议了《网络供应链管理和透明度法案》,意在确保为美国政府开发或购买的使用第三方或开源组件以及用于其他目的的任何软件、固件或产品的完整性。该法案要求制作物料清单 (BOM) 由“为美国政府开发或购买的软件、固件或产品的所有供应商”提供的所有第三方和开源组件。法案中的措辞承认开源是一种关键资源,并清楚地表示其在政府 IT 运营中持续发挥着关键作用。该法案是建立透明度的积极的第一步,这是一个非常有价值和可以实现的目标。通过遵守新立法,联邦政府供应商将准确了解他们的代码中的内容,并能够在发现任何问题时主动解决。

    2018 年 12 月,美国国会通过了《安全技术法案》,《联邦采购供应链安全法案 2018》作为该法案的第二部分一并签发。《联邦采购供应链安全法案 2018》创建了一个新的联邦采购供应链安全理事会并授予其广泛权利,为联邦供应链安全制定规则,以增强联邦采购和采购规则的网络安全弹性。

    2021年5月,拜登签署《关于改善国家网络安全的行政命令》,是美国对安全问题的正面回应。这份报告详细阐述了美国政府在网络安全方面将采取的不断变化的做法。美国的网络安全预算接近110亿美元,比前几年增长了11%,美国这一举措一经推出就在世界各地掀起了波澜。

    2022年12月,白宫签署《2023国防授权法案》,法案中于2023网络空间战略目标处提到——通过实施零信任增强国防部网络安全,保卫美国关键基础设施并保护国防部信息系统免受恶意网络攻击,此项条款亦对软件供应链风险管理提出了明确要求。


    1.2 国内

    2014 年 5 月 22 日,国家互联网信息办公室宣布我国即将推出网络安全审查制度,初步界定了网络安全审査的含义。

    2015 年 7 月 1 日,《中华人民共和国国家安全法》第 59 条规定了网络安全审査制度由国家建立。

    2016 年 7 月,《国家信息化发展战略纲要》明确我国要建立实施网络安全审査制度,对关键信息基础设施中使用的重要信息技术产品和服务开展安全审査。

    2016 年 11 月 7 日,《中华人民共和国网络安全法》中明确关键信息基础设施运营者采购网络产品和服务,可能影响国家安全的应通过国家有关部门组织开展的网络安全审查。

    2017 年 6 月,我国颁布《网络产品和服务安全审办法 ( 试行 )》和《网络关键设备和网络安全专用产品目录 ( 第一批 )》。

    2020 年 4 月,我国多部门联合发布《网络安全审査办法》,进一步细化明确了网络安全审查的范围、机制、流程等相关要求。

    2021 年 4 月,国务院常务会议正式通过《关键信息基础设施安全保护条例》,在该条例中明确了运营者采购产品和服务的安全管理措施。

    2021 年 11 月,国家互联网信息办公室通过《网络安全审查办法》,该办法将网络平台运营者开展数据处理活动影响或者可能影响国家安全等情形纳入网络安全审查,并明确掌握超过 100 万用户个人信息的网络平台运营者赴国外上市必须向网络安全审查办公室申报网络安全审查。


    2.需求分析

    2.1 背景分析

    ①开源发展逐步成熟

    根据中国信息通信研究院发布的《开源生态白皮书(2021年)》,2020年我国使用开源技术的企业占比为88.2%,比2018年增长6.8%。2021年,开源生态进一步发展成熟,并呈现全新发展态势。根据GitHub的调查研究显示,2021年企业开源软件占比首次超过专有软件,达到了41%,从2022上半年的数据来看,这一比例更是马上接近50%大关。从全球范围来看,各国纷纷制定政策法规推动开源发展,依托开源建立了广泛协作关系,形成了开放的产业模式,开源产业也日益成为资本市场的新风口。Forrester和GitHub的调查数据显示,开源软件市场年复合增长率达到24.2%,并将在2026年达到663亿美金的庞大市场规模。从我国国内来看,政府高度重视开源产业发展,并得到国家战略层面的关注与支持。“十四五”规划首次把开源纳入顶层设计,并在《“十四五”软件和信息技术服务业发展规划》中提出要重点做好开源生态建设,同时华为、腾讯、阿里等大型科技公司也均将开源纳入了公司整体战略,国内开源生态呈现出产业化发展趋势。总的来说,开源生态已从个人参与到企业参与,从开源技术交流到开源生态协同,再到如今逐步形成产业供应关系。自上而下的体系化构建方式与自下而上的竞争式发展相结合,不断推动着开源生态繁荣。


    ②软件迭代速度加快

    当今的软件开发模式已经从传统的瀑布模式转向了敏捷开发。传统的瀑布开发是一个倾向于严格控制的管理模式。大家按照需求一步步做好规划,每一阶段工作的完成是下一阶段工作开始的前提,每一阶段都要进行严格的评审,保证各阶段的工作做得足够好时才允许进入下一阶段。但敏捷开发则不同,它是一种以用户需求进化为核心进行迭代、循序渐进的开发方法,开发团队首先把用户最关注的软件原型做出来,交付或上线,在实际场景中去快速修改弥补需求中的不足,再次发布新版本。这种开发理念就导致敏捷开发团队的软件迭代周期会非常快,据统计,现在55%的企业每周回至少迭代(部署)一次。

    开发端的迭代速度直接影响部署频率。对于一些传统行业,如金融、物流、零售等,虽然主要的开发任务分发给了第三方软件公司,但软件部署和运维却仍然依赖自身的安全开发团队。软件的快速迭代确实可以降低开发端前期的试错成本,也可以满足用户端不断推进的使用与商业需求,但这种高频迭代速度同时也会带来巨量的潜在安全风险。


    ③安全合规问题频发

    随着开源生态的不断繁荣,安全合规问题也频频发生。

    例如2020年12月的SolarWind Orion攻击事件,美国企业和政府网络突遭“太阳风暴”攻击。黑客利用SolarWinds公司的网管软件漏洞,攻陷了多个美国联邦机构和多个财富 500 强企业的专有网络。2020年12月13日,美国政府确认国务院、五角大楼、国土安全部、商务部、财政部、国家核安全委员会等多个政府部门遭到非法入侵。

    此外,2021年12月的Apache Log4j漏洞,在该漏洞被披露仅1个多月的时间内,以CVE-2021-44228漏洞为起始点,Apache Log4j 总计爆发8个漏洞,其中包括5个远程代码执行漏洞、1个SQL注入漏洞、2个拒绝服务漏洞,高危以上的漏洞就占据了7个,Log4j也因此被认为是“2021年最重要的安全威胁之一”。在Apache Log4j远程执行代码漏洞被披露仅11天后,已有攻击者利用此漏洞成功攻击了比利时国防部计算机网络。中国国家工信部对此漏洞安全事件也给予了高度关注。

    总的来说,当前开源生态中的安全合规问题主要集中在以下三点:

    a.开源安全漏洞数量多、新增快,风险显著;

    b.开源许可证合规性问题筛查困难;

    c.软件供应链整体安全受到威胁。


    2.2 用户需求分析

    ①合规达标要求高

    合规是合法企业的底线,其各项业务开展必须遵守《网络安全法》等各项管理法律法规规定。由于软件开发大量依赖开源组件,各类开源许可证的合规性要求很难逐一进行人工审核,一个不符合许可证要求的软件或组件很可能会使企业面临被起诉的风险。其中,开源合规风险中最突出的问题是:

    a.如何识别合规风险;

    b.知识产权风险;

    c.许可证冲突风险。


    ②安全管理效率低

    企业的DevOps正处于快速转型期,产品交付速率加快,但快速部署可能会给生产环境带来许多潜在的安全风险,这对企业安全管理的效率和能力提出了更高的要求。传统安全管理模式依靠后期人工检测,效率低且返工周期长,将拖慢整个DevOps的交付速度。目前来看,安全管理效率问题集中表现为:

    a.漏洞感知与修复能力不足;

    b.开源软件库、组件库、漏洞库搭建缓慢;

    c.缺乏专业的管理平台或自动化安全工具。


    ③软件质量待提高

    目前传统行业的软件质量普遍较低:一是因为自有IT研发人员较少,普遍依赖外购或外包人员,软件质量难以保障;二是几乎所有软件开发都引用了开源组件,开源代码的安全问题将直接影响软件质量与软件供应链安全。

    以金融行业为例,根据中国软件评测中心的调查研究,金融机构应用软件功能性、安全性和性能的缺陷合计占到了总缺陷数的70.7%。这对金融机构的资金交易准确性、业务流程高效性、整体安全性都产生了较大的影响。


    ④安全团队未跟上

    相对于闭源软件的完善厂商服务,开源技术在很多情况下并没有相应的付费服务和安全运维支持,同时企业本身的运维人员数量及能力都存在一定限制,这就导致安全运维工作量的大幅增加、效率的显著降低,开源技术相关安全运维问题难以及时解决。

    以金融行业为例,大多数金融机构的专职安全人员只有1-3人,且承担的是防火墙、安全检测、补丁管理等较为传统的安全工作。在开源的猛烈攻势下,单薄的安全运维团队很难处理好各种潜在风险与合规性难题。在安全运维团队人员比例跟不上IT技术部门扩展的行业大趋势之下,接纳开源与安全合规之间的矛盾越来越突出与具体。


    二、UniSCA治理方案说明

    1. DevSecOps整体解决方案

    2. 软件生命周期集成部署

    3. 软件供应链安全治理方案

    ①风险输入管控

    ②安全需求前置

    ③开发过程同步

    ④供应商管理

    ⑤交付过程把关

    ⑥具体流程示意

    a. 需求分析阶段:市级公司新项目需求,提交至省级公司。

    b. 安全设计阶段:省级公司根据新项目需求,进行系统定级和威胁建模,输出《安全需求报告》、《安全设计报告》、《安全测试报告》,其中需求及设计报告交予市级公司,组成项目需求的安全需求部分;测试报告由省级公司留存,用于辅助后续 的安全测试阶段。

    c. 系统开发阶段:供应商根据市级公司提供的项目需求进行研发;研发完成后供应商需对系统进行安全测试,交付时需提供《代码审计报告》、《漏洞扫描报告》、系统环境详细信息及源代码。

    d. 安全测试阶段:市级公司将供应商提交的全部资料转交给省级公司,省级公司按照系统级别的 上线标准进行安全测试。测试使用SCA(软件成分分析)、Fuzzing(模糊测试工具)作为工具辅助人工服务进行。

    e. 上线评审阶段:省级公司通过安全测试结果对系统安全性进行判定,若审核通过,通知市级公司,项目可安全上线;若审核未通过,出具《修复要求及建议》,连同《安全风险报告》一并返回给市级公司,由市级公司与供应商沟通,修复安全风险。

    f. 运维管理阶段:上线后应用系统若有发生变更,市级公司需重新提交变更需求,进行安全检测,达到上线标准后,方可替换旧系统上线

    三、UniSCA引擎能力说明

    1. 依赖分析引擎

    UniSCA基于常用语言包管理器中的依赖配置文件识别组件信息,关联组件漏洞。对于没有包管理器的语言(如C/C++),UniSCA依托庞大的开源组件库和组件版本特征库进行指纹匹配,绘制开源组件依赖关系图,完成依赖成分分析。

    2. 二进制规则匹配引擎

    UniSCA通过对软件代码结构、常量字符串、函数代码等各种粗细粒度特征数据进行结合,比对分析二进制代码的成分以及各代码成分之间的相似性和同源性,并自动报告代码漏洞、信息泄露隐患、恶意代码植入等安全风险与合规隐患。

    3. 源代码同源分析引擎

    为了保证检测的精度和速度,UniSCA在进行源代码检测时采用了序列指纹和哈希指纹两种方式,哈希指纹速度快,序列指纹精度高。这两种指纹的结合使用使得UniSCA源代码检测能够快速精准的识别组件成分、代码漏洞及许可证风险等。

    4. 二进制代码克隆引擎

    代码克隆能够提高效率,但也可能意外引入外部漏洞。UniSCA通过对目标文件函数与库文件函数进行代码克隆的检测比对,精准识别克隆函数与相似文件,有效管控潜在安全风险。


    四、治理方案功能模块介绍

    1. 资产管理:支持对组件库、漏洞库、私有库、许可证、厂商等资产进行管理,帮助企业梳理软件资产,实时监控所有软件的迭代部署、许可证修改、证书到期、合规性等相关问题与状态变更。


    2. 项目管理:支持包含超级管理员、项目经理、开发人员、安全人员、法务人员、制品仓管理人员在内的多角色审批流程管理,涵盖从项目立项、内测、上线、结项的全流程审批。内容包括所在项目、项目经理、申请人、审批状态、审批人等详细信息,有助于开源台账的梳理与建立。


    3. 台账管理:支持项目台账、扫描任务台账、组件管理台账、组件使用台账的建立和查询,提供使用版本、使用部门、负责人、安全风险信息、处置建议等详细信息。保证开源使用情况可查询可追溯,便于后期进行可视化展示及统一管理。


    4. 开源漏洞筛查:UniSCA对数以万计的安全源进行监控和筛查,以准确报告漏洞详情和受影响的软件版本并已获得CWE国际兼容性认证和CNNVD兼容性资质证书。同时,根据漏洞严重性程度对漏洞进行优先级排序并提供建议修复版本。


    5. 许可证合规性检测:UniSCA支持自动化开源许可证合规性检测,通过对开源许可证的知识产权风险、兼容性冲突等维度进行评估,标识风险等级、涉及组件与影响项目。帮助用户了解项目中的开源许可证及相关合规要求,及时发现许可证风险。


    6. 依赖图:作为一种有向图,依赖图可视化存在依赖组件的过程或情况,例如决策制定、调度、产品开发、IT 或电信基础设施、供应和制造链等。它们可以帮助您找到最佳顺序,并确定限制您的应用程序、基础架构或流程的关键路径或薄弱环节。


    7. 知识图谱:知识图谱本质上是结构化的语义知识库,用于以符号形式描述物理世界中的概念及其相互关系。UniSCA通过绘制知识图谱很好的解决了开源软件复杂的依赖关系表示不清晰的问题,让开源软件成分语义化,可视化,变得可读、可推理、可预警。


    8. 专家处置建议:UniSCA通过知识图谱的图表示方法构建开源软件组件成分的深层依赖关系,利用知识图谱的分层传播路径搜索算法有效分析开源软件漏洞的影响范围与深度,以衡量项目漏洞的严重性。应用图算法分析,首先为用户企业提供漏洞全貌,其次通过知识图谱和受影响组件分析梳理漏洞修复优先级,最后结合用户企业实际情况提供专家处置建议。


    9. SBOM:SBOM(软件物料清单)是企业使用的所有软件组件的完整列表,包含厂商、组件名、版本号、组件哈希值、特殊标识符、依赖关系等详细信息。UniSCA能自动化一键生成SBOM,并支持SPDX在内的数种可定制导出格式,节省团队大量时间,切实有效地维护软件供应链安全。


    10. IDE集成:支持多种主流IDE插件形式,与DevOps管道集成更顺滑,开发人员使用起来更加方便快捷。开发人员可以在编码阶段同步查看漏洞严重程度和风险信息,以及来自NVD和CVE信息(支持CVSS v2和CVSS v3)。除了漏洞信息,UniSCA还提供了其他安全风险信息,开发人员可以使用这些信息来优化组件选择。


    五、治理方案应用案例

    1. 金融

    金融机构长期以来一直面临着巨大的网络安全风险,特别是由于开源技术的广泛使用,潜在的开源漏洞风险与合规性冲突已变成十分棘手的难题。同时,由于在线应用的漏洞、未经保护的应用程序和日益增长的公有云服务正在迅速扩大受攻击面,有效保障金融行业的软件供应链安全已成为重中之重。

    UniSCA致力于为金融机构提供一套软件供应链安全管理解决方案,在不改变组织现有DevOps流程的前提下,与CI/CD管道无缝集成。依托UniSCA专业的多维度SCA分析能力与庞大的知识库,实现开发过程中的开源代码管理、开源漏洞管理与合规性检测;流转审批过程中的项目管理、资产管理与台账管理;实现开源安全的可视化管理与软件供应链安全端到端的全流程管理,有效提升金融机构开源软件治理能力,实现成熟级的质的飞跃。


    2. 政府

    “棱镜门”事件以来,越来越多的窃密、监控事件被爆出,再加上现有国产基础软件遭遇“卡脖子”困境、国内开源生态发展不充分不完全、网络恶意攻击和安全漏洞层出不穷,这给我国政府的软件使用和专网的安全可信造成了一定的影响。

    UniSCA软件供应链安全管理平台严格按照相关技术标准、建设指南、测评标准、信创政策要求设计,为政府提供立体的、全面的、深层的开源风险与软件供应链安全防护和控制能力,确保开源风险识别清晰、合规性检测直接明了、资产管理切实有效、符合相应政策标准。 同时,UniSCA助力政府部门提高信息化、数字化水平,通过对开源软件风险的自动化检测,提升相关部门的工作效率,为安全运维人员持续赋能。


    3. 互联网

    随着敏捷开发模式的实践与DevOps理念的推行,如今互联网企业的开发迭代速度已经达到了一个相当惊人的水平,大部分企业可以做到一周就迭代(部署)一次。这种高效的工作模式不仅依赖于高水平的开发团队,开源生态的繁荣在其中也起到了关键性的作用。开源,使得开发人员不再需要进行重复造轮子的枯燥工作,通过开源代码和组件的依赖引入,软件开发过程将变得越来越高效与成熟。但在这种速度之下,潜藏着的是巨大的开源安全风险。 开源漏洞与许可证合规性风险是悬挂在互联网企业之上的达摩克利斯之剑,如果无法进行有效管控和处置,开源技术的使用将变得困难重重。

    UniSCA凭借着专业的多维度SCA分析能力与庞大的知识库,帮助开发团队实现安全左移,完善DevSecOps全流程管理。同时有效解决许可证知识产权风险、兼容性冲突等合规性难题,通过与CI/CD管道的无缝集成,有力保障软件开发生命周期的安全。


    4.物联网

    通过对物联网中的一些设备,比如摄像头,智能家居等的信息采集,可直接或间接地暴露用户的隐私信息。如果生产商缺乏安全意识,很多设备缺乏加密、认证、访问控制管理的安全措施,物联网中的数据就会很容易被窃取或非法访问,造成数据泄露。这种新型的信息网络往往会遭受有组织的 APT 攻击。
    UniSCA支持对固件、容器、镜像等进行扫描与检测,对物联网、车辆网、工业网络的软件安全进行持续赋能。在认证、访问控制管理、设备保护和资产管理、日志审计等各环节可能涉及到SCA相关问题“对症下药“,精准排查安全隐患,有效提升物联网安全等级。


    关于泛联新安

    作为国产开发支撑工具领导者,泛联新安以程序分析专家为核心能力定位,专注于为业界提供软件质量测试、软件安全测试和数字电路验证EDA三大类基础软件产品,解决了以往自动化程度不高、安全检测规则覆盖不全、不适应国产软硬件平台等问题。目前三条产品线10多款产品,主要面向军队军工、航空航天、轨道交通、兵器、能源电力、金融以及互联网等领域,累积行业标杆客户超百家,为高端装备和智能制造领域提供软件质量测试以及软硬件安全能力检测解决方案。





    本文为 独立观点,未经允许不得转载,授权请联系FreeBuf客服小蜜蜂,微信:freebee2022
    被以下专辑收录,发现更多精彩内容
    + 收入我的专辑
    + 加入我的收藏
    相关推荐
    • 0 文章数
    • 0 关注者
    文章目录