零信任体系化能力建设:应用安全与开发部署.docx

上传人:lao****ou 文档编号:784148 上传时间:2024-05-21 格式:DOCX 页数:9 大小:217.65KB
下载 相关 举报
零信任体系化能力建设:应用安全与开发部署.docx_第1页
第1页 / 共9页
零信任体系化能力建设:应用安全与开发部署.docx_第2页
第2页 / 共9页
零信任体系化能力建设:应用安全与开发部署.docx_第3页
第3页 / 共9页
零信任体系化能力建设:应用安全与开发部署.docx_第4页
第4页 / 共9页
零信任体系化能力建设:应用安全与开发部署.docx_第5页
第5页 / 共9页
亲,该文档总共9页,到这儿已超出免费预览范围,如果喜欢就下载吧!
资源描述

《零信任体系化能力建设:应用安全与开发部署.docx》由会员分享,可在线阅读,更多相关《零信任体系化能力建设:应用安全与开发部署.docx(9页珍藏版)》请在第一文库网上搜索。

1、零信任体系化能力建设:应用安全与开发部署目录前言1?零信任应用安全2?应用安全的关键能力2?访问与授权2?威胁与保护3?开发与部署3?安全与测试4?应用安全的最佳实践5?建立软件物料清单6?改进开发安全流程6?持续监控维护更新6?应用软件安全开发的基本流程74.1.总貌7?需求阶段8?设计阶段8?开发阶段8?测试阶段8?发布阶段9?结语9前言前言:应用和工作负载是企业资产的重要组成部分,也是用户访问企业数据的主要手段和攻击者关注的首要目标,因此,强化对IT栈内软件部分的安全控制是企业推进零信任成熟度的必由之路。通常,零信任网络访问(ZTNA)通过身份认证和访问控制机制来保护业务应用和资源,然而

2、这些措施并不能为应用提供更全面的保护,例如SQ1(或代码)注入、远程指令执行、容器权限逃逸等。本文从零信任安全能力的体系化建设入手,主要讨论应用和工作负载在访问授权、威胁保护、开发部署和安全测试等方面的问题。关键字:零信任;应用安全;工作负载安全;开发部署;安全测试零信任应用安全应用和工作负载(简称应用)是指运行在私有化、移动设备和云等环境中的系统、计算机程序和服务。在企业的业务环境中,数目庞大的应用为各部门提供了复杂多样的业务功能,它们依赖着不同来源的组件,其中隐藏着不同类型的安全漏洞,并在不同的访问场景中扮演着不同的角色。然而,基于边界的安全模型假定了内网的默认安全,也抑制了对应用开发的安

3、全性需求。教育机构忽视了对应用安全设计或编码的教学培训,开发人员普遍缺乏生产安全产品的技能,安全措施经常在应用开发完成(甚至安全事件发生)后,以追加模式附着于应用程序。在应用生命周期的后期(运行或维护阶段),运维人员甚至可能疏忽对安全漏洞的扫描和修复。在应用领域建设零信任安全能力,通常要面对比终端和网络等领域更为复杂的局面,应用的访问方式(例如,通信机制、共享机制,以及认证方法等)、行为特征、编码安全、开发部署、交付更新等问题均需进行梳理分析,并进行合理的改进优化。另外,在大多数时候,尽管应用安全是从OS1参考架构应用层的视角去进行观察和分析的,但安全能力的构建实际上需要从更低的层次开始,对应

4、用层的保护需要借助或依赖网络层和传输层的安全能力,不同层次安全能力的关联、集成和协作是减少暴露面、提高可见性、推进零信任成熟度的关键。应用安全的关键能力在零信任安全框架中,应用安全能力既要确保应用和工作负载间的安全访问授权,阻止横向移动和非法访问,也要保障应用层的协议和内容安全,识别并阻断恶意内容和威胁,同时还要保证应用的全生命周期安全(包括设计、开发、测试、部署和运维),以适应不断变化的威胁环境和安全需求。访问与授权通过为应用和工作负载建立统一数字身份,可以在“身份”领域建设应用相关的访问与授权能力。在向不同应用集成访问授权能力时,需要特别关注其工作流的特异性,并考虑如下问题: 如何在应用层

5、面实施和管理访问授权,授权的粒度如何划分? 应用访问授权会带来什么样的威胁?组织如何减轻对工作负载的威胁? 应用程序如何被访问?是否可通过互联网访问? 如何生成分析报告,以协助改善保护措施和安全策略?零信任希望为用户提供与位置无关的安全访问。在应用支柱的最佳成熟度级别,无论用户身在各处(内网、互联网等),组织都应该向用户提供基于零信任的应用访问通道,减少访问延迟,并提供一致的、良好的用户体验。在向互联网开放应用访问时,通常也需要利用传输层和网络层的安全机制(例如,mT1S、IPSeC等),实现在公共互联网上的安全连接,确保数据在通信路径的完整性和机密性。威胁与保护任何应用程序都可能存在漏洞。鉴

6、于应用对企业的重要性,攻击者也始终将应用作为首要的攻击目标。作为零信任策略的一部分,持续监控并保护应用安全至关重要。为防止潜在的漏洞被攻击者利用,需要在应用层面实施多层次的保护机制。例如,通过WAF技术来检测、识别和阻止对常见漏洞(例如,OWASPTop10)的利用和Web攻击,包括跨站脚本(XSS)、SQ1注入、跨站请求伪造(CSRF)等。另外,影子IT和API安全也是不容忽视的安全风险,未经批准的云应用程序和服务,或AP1非法调用都可能导致数据泄露和安全风险。CASB通过监控和管理云应用程序的使用情况,识别和控制未经授权的应用程序访问,减少影子IT带来的风险,还可以通过提供AP1保护功能,

7、监控和管理云应用程序的AP1访问,确保AP1的安全性和合规性。开发与部署随着组织构建越来越多的云原生应用程序,并采用大量开源组件来加速开发流程,如何将安全性更轻松地融入到开发和部署过程中,也是一个日益复杂的问题。通常,开发团队使用特定的DeVOPS工具和流程,形成了独特的开发孤岛。而且,开发人员的首要目标与基本的安全优先事项并不一致,他们更专注于快速交付业务部门所需的应用功能,而管理或安全团队则希望进一步降低业务风险,并提供合规性支持,这些目标分歧使应用程序安全性进一步复杂化。在软件开发生命周期(SD1C)中引入安全考虑,通过安全左移,可以避免开发团队在开发后期被迫进行安全修复所面临的低效问题

8、。在图1中,Gartner概述了SD1C的七个阶段,并给出了适用于每个阶段的DevSecOps工具。软件工程领导者应与安全和风险团队以及基础设施和运营方面的同行合作,在SD1C的每个阶段集成工具。零信任应用安全的重点是“确保应用程序可用且安全,并且了解它们正在做什么”。开发团队需要找到一种与DeVOPS有效合作的方法,以实现效率和安全的平衡,降低实现零信任目标的难度。威胁建模安全培训源码保护策略模阁测试渗透测试发布预生产检测/修复异常访问特权访问管理机器身份管理零信任网络访问无密码MFA工件存储库.合规自动化云安全态势管理基础设施策略即代码应用屏蔽与保护源利管理云工作负毅保护AP1保护配置偏移

9、检测密码泄露检测DeVoPS管道备份与恢复补丁管理与缓解治理第三方依赖软件物料代码签名和管道完整性PK1和证书管理可信蛆件注册表密码扫描密码管理SAS1/DAS邛ASDRASP语义代码分析AP1安全移动应用安全测试固件安全AP1管理与安全NFR的持续魁证无服务器功能安全Web应用和AP1保护容器与KHS安全上如稣j图1适用于各个SD1C阶段的DevSecOps工具安全与测试尽管大多数组织并不具备安全编码的培训能力,但仍然可以通过提供丰富的安全工具,帮助开发者发现并处理应用中的安全缺陷。引入并充分利用这些安全测试工具,能够逐渐缓解因开发者安全编码经验不足,所带来的应用安全问题。应用程序安全测试涉

10、及对漏洞和弱点的测试,常见方法包括静/动态软件测试、代码审查、渗透测试、漏洞扫描、配置审计和安全评估等:静态应用安全测试(SAST):通过分析源代码或应用程序的二进制文件,检测潜在的安全漏洞、软件缺陷; 动态应用安全测试(DAST):通过模拟攻击者的行为,对正在运行的应用程序进行测试,以发现实时的漏洞和弱点; 代码审查:对应用程序代码进行系统、详细的审查和分析,以发现潜在安全问题,确保符合最佳实践和规范; 渗透测试:模拟真实的攻击行为,主动寻找应用程序的弱点,测试其安全性;漏洞扫描:使用自动化工具扫描应用程序,寻找已知的漏洞和常见的安全问题。 配置审计:检查应用程序的配置文件和设置,确保其安全

11、性和合规性; 安全评估:综合考虑应用程序的各个方面,包括架构、设计、代码、配置等,评估其整体安全性。软件测试代码审查安全评估零信任应用与工作负载渗透测试配置审计漏洞扫描化权说安全图2零信任应用安全测试的主要方法这些安全工具增强了开发人员的安全能力,但简单部署这些工具并不能完全实现零信任目标,开发人员需要将威胁模型应用到他们的代码中,并采取思维方式来考虑攻击者可能访问的内容,以及他们会怎样破坏应用程序或周围的供应链,将应用安全编织到零信任安全体系中。?.应用安全的最佳实践零信任是一种可适用于软件供应链的思维方式和方法,可以由外向内或由内向外应用于软件开发的流程中,使开发人员更快速地开发、交付更安

12、全的应用。?.1.建立软件物料清单与零信任其他能力支柱的建设情况类似,应用安全能力建设的第一步是发现组织环境中存在的软件,并对其进行分类。尽管这是一个具有挑战性的目标,但可以通过一些流量分析或软件成分分析(SCA)工具,识别并清点网络中的应用程序。该清单应尽可能覆盖软件供应链中的所有组成,包括代码中的依赖项、调用的服务、公开或访问的API、工作负载以及用于开发、托管、集成和构建应用程序的工具。软件物料清单信息为在组织中实施零信任应用安全策略提供了基础。例如,通过分析CI/CD流水线和部署环境,为其设计并实施微隔离,或者了解每个软件组件的版本,以确定应用中是否存在已知的安全漏洞,并制定升级计划,

13、也可以基于容器清单,规划不可变工作负载的替代方案。?.2.改进开发安全流程在大多数组织中,应用开发和部署通常由许多不同的团队负责,那么其安全和管理任务应该由谁来承担?有一种观点认为,应用安全责任应该由开发人员承担。尽管大家都同意安全编码是开发人员的责任,但引入安全相关工作可能会产生一些非预期的后果(例如,延迟交付)。另一种观点是,安全团队应该通过寻找和消除可能的安全漏洞,来负责应用的安全性。但是,由于开发周期的快速迭代,可能导致安全检查的覆盖范围存在疏忽。此外,在软件开发生命周期中,分析、设计和构建等每个流程都有特定的风险要求,而不仅仅是安全编码就一定能生成安全的应用,特别是,合规性并没有真正

14、出现在SD1C的视野中,组织需要采用基于DeVSeCoPS的流程,以端到端模式解决应用开发的安全治理问题。?.3.持续监控维护更新为了维护组织环境的应用安全,需要持续跟踪安全威胁的变化,保证应用安全姿态的可观察性,以便随时优化应用程序,以减少攻击面和防范风险。通过定义安全性能指标,配置全面的日志记录,引入异常监测和性能监控,持续监控应用的运行状态,可以及时发现问题、优化性能,并提前识别潜在的安全风险。过去,大多数组织都使用CVSS评分对漏洞进行优先级排序。从逻辑上讲,关注漏洞的严重性似乎是正确的,但更重要的问题是该漏洞是否可被利用。EPSS模型根据漏洞的特性和已知的攻击模式,对漏洞的潜在可利用

15、性进行评估,可以提供对漏洞利用可能性的估计,从而帮助安全团队确定哪些漏洞可能是攻击者的首要目标。结合这两个评估系统,安全团队可以制定更全面和有效的漏洞修复策略,优先处理那些同时具有高CVSS评分和高EPSS评分的漏洞,以最大程度地减少系统面临的风险。?.应用软件安全开发的基本流程4.1总貌应用软件存在大量的漏洞是当前信息安全领域面临的极大困境,云应用软件也同样如此。如何有效减少应用软件内的漏洞,提高应用软件安全是目前应用软件开发中亟待解决的问题,尤其在云计算中,应用软件安全尤为重要。在进行应用软件开发时,应充分参考安全软件开发生命周期相关模型,如图3所示,强化应用软件在开发、部署和运行的各个阶段中的安全,建立规范化的安全开发流程。图3应用软件安全开发流程?.2,需求阶段首先应对应用软件在开发过程中面临的风险进行评估,分析可能面临的威胁、存在的脆弱性及其可能造成的影响,并对上述三者

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 应用文档 > 工作总结

copyright@ 2008-2022 001doc.com网站版权所有   

经营许可证编号:宁ICP备2022001085号

本站为文档C2C交易模式,即用户上传的文档直接被用户下载,本站只是中间服务平台,本站所有文档下载所得的收益归上传人(含作者)所有,必要时第一文库网拥有上传用户文档的转载和下载权。第一文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。若文档所含内容侵犯了您的版权或隐私,请立即通知第一文库网,我们立即给予删除!



客服