[安全大会]2020-BCS-技术峰会-1-安全切面防御体系


=Start=

缘由:

整理回顾一下前几天观看的「BCS-技术峰会」中蚂蚁金服韦韬大佬的「安全切面防御体系」议题,再感悟学习一下从大型互联网企业安全高层视角来看企业安全的解法,方便后续学习参考。

正文:

参考解答:

个人感觉传统的信息安全/网络安全已经很久没有变化了(主要还是DDOS/WAF/HIDS/WebScanner等几大块),少有的一些新方向在实际的企业安全里落地情况还是不够理想(RASP/IAST等,威胁情报、态势感知等因为我了解不深,暂时不在此处讨论),还有其他的一些新概念层出不穷(但大多还是新瓶装旧酒,为了造概念而造概念)。不过这次听到的这个安全切面防御体系还是很新颖的,据说在蚂蚁的落地情况也挺好,后续值得持续关注。


一、企业安全的困境

业务复杂性的爆炸:缺乏规划的混布,在快速达成短期目标的同时,加剧了长期技术负债。

外挂安全:隔靴搔痒

内生安全:绑脚走路
业务方:需要研发、测试、灰度、排期……
安全:需要分钟级、小时级、最慢天级完成响应止损

二、企业安全的梦想之地

业务透视——既交织在一起,又可以解耦(最好能获取到真实的业务上下文信息,保证分析的准确性和全面性;又能不影响业务,也不被业务影响)。

三、安全切面的关键技术

信息安全/网络安全本身也是计算机技术的一部分,所以计算机技术能力储备强的公司,他的安全基础能力也能更强。

四、安全切面防御体系

「云管端」全流程透视,采集到的数据越准确,感知、检测能力就越强。

而且,如果你能够利用已发生的cases进行深度挖掘、举一反三,还能够达到报告中说的——-1day漏洞的发现能力(攻击者正在挖掘,但还没得手;防守者原来不知道,但顺着攻击者的方向,利用更多的先验知识/内部知识抢在攻击者之前发现漏洞)。

参考链接:

技术峰会
https://bcs.qianxin.com/2020/meetings/index?meeting_time=2020-08-12

=END=


《 “[安全大会]2020-BCS-技术峰会-1-安全切面防御体系” 》 有 4 条评论

  1. 蚂蚁安全切面:将安全能力深入应用的毛细血管
    https://mp.weixin.qq.com/s/Wf4TTU8G0gYcBv65GMdkOw
    `
    在今年2020 BCS 北京网络安全大会上,蚂蚁集团副总裁韦韬介绍了蚂蚁的‘安全切面’防御体系。在刚刚结束的外滩大会,IoT安全分论坛上,来自蚂蚁的赵豪,又给大家介绍了安全切面在IoT场景下的重要安全价值。这篇文章,我们就聊聊安全切面。

    # 什么是切面?

    切面,即Aspect,面向切面编程( AOP,Aspect-oriented Programming)。它是通过预编译、运行时动态代理或者注入的方式,实现在不修改源代码的情况下给程序动态添加功能的编程范式。AOP追求调用者和被调用者之间的解耦,提供跨模块的功能汇聚。AOP适合解决程序中涉及横切面(cross-cut)的系统功能,这些功能往往用过程编程或者面向对象编程都难以解决。后继被AspectJ, Spring等实现和应用。

    # 安全切面,把切面思想延伸到安全体系中

    安全切面防御是蚂蚁安全提出的一套全新的安全防御理念。它的核心思路是建立一套和业务相交织且平行的安全层,让安全能够深入业务逻辑,实现细致的观测和攻防;同时又保证业务和安全的解耦合,使得业务和安全各自独立,各自高速发展。也就是“内生”和“解耦”,要兼得。

    # 安全切面可以解决什么问题?

    总的来说,是因为现代终端操作系统自身的部分安全机制已经不能满足目前移动互联网和物联网的实际安全需求了,它促使我们在现在安全机制之上,建设一套更满足实战攻防需求的安全切面体系。

    这里举两个例子。

    首先是供应链安全的例子,无论是移动端还是IoT端都会集成大量的三方SDK,这些三方SDK由第三方开发,他们的安全水位参差不齐甚至还可能暗藏恶意代码。

    从应用的角度来看,由于功能需求,不得不集成一些别人开发的三方SDK,大部分甚至还是黑盒集成。从操作系统的安全机制来看呢,一个应用是一个整体,不会再有更细分的安全角色。这个整体共享所有的应用身份权限、文件存储和用户的敏感信息等,运行在同一个进程空间中。于是在应用中,我们自己的代码和三方SDK的代码,在操作系统眼里,从安全管控颗粒度上是无法分割的。(一些由于三方SDK导致的安全和隐私风险事件案例)

    第二个例子是关于安全建设和治理。随着业务的爆发式发展,对应的技术设施复杂性也指数增长,而安全建设和治理往往受制于复杂的技术设施和业务场景而进展缓慢。常常还会因为遇到各种问题而停滞甚至回滚。另外,技术架构和安全能力缺乏长期规划,导致在快速达成短期业务目标的同时,加剧了长期安全技术负债。并且这个技术负债在进行治理的时候,又会遇到刚才提到的各种阻力。用更为直白的话来说就是,业务不发版,安全什么也做不了。

    此时就需要安全机制既能够和代码逻辑业务逻辑交织到一起,又能够让安全和业务解耦合独立发展的技术框架。能够做到业务不发版,安全治理仍然可以进行,实现“可治”,能够与攻击方(黑灰产)对抗,实现“可战”。

    从技术架构的视角,我们总结一下安全切面防御体系的核心理念、主要能力和特点:
    * 安全切面逻辑融入到端应用的基础架构中;
    * 通过对调用链路的还原,实现安全内视和追溯,具有强大的感知能力;
    * 通过代码节点信息,分析和定位应用内部更精细化的角色信息;
    * 与业务解耦,能够不依赖与业务代码更新,进行安全治理。
    `

  2. 《安全平行切面白皮书》重磅发布,全球首创下一代原生安全基础设施【附全文下载+演讲视频】
    https://www.4hou.com/posts/YqRW
    `
    12月24日,《安全平行切面白皮书》(以下简称“白皮书”)首次对外全文发布。白皮书由蚂蚁集团与信息产业信息安全测评中心共同编写,结合十余位海内外专家意见与建议重磅发布。

    白皮书系统分析了数字化转型及业务复杂性爆炸背景下安全体系建设所面临的严峻挑战与发展困境,在深度结合安全体系建设新要求的基础上,提出了具备与业务融合且解耦的下一代原生安全基础设施——安全平行切面体系。安全平行切面体系在应急攻防、安全治理与布防、数据安全治理等场景下提供精准内视能力和高效干预能力,显著提升应急攻防与安全治理效能,为原生安全的实现提供了解决路径,为企业数字化转型提供安全保障。

    安全平行切面体系(以下简称安全切面)是下一代原生安全基础设施,通过端—管—云各层次切面使安全管控与业务相互融合且解耦,并依托标准化接口为业务提供精准内视与高效干预能力,具备感知覆盖能力强、应急攻防响应快、安全治理高效和安全布防灵活的核心优势。

    在业务复杂性爆炸的背景下,安全切面可以有效解决传统外挂式安全体系隔靴搔痒、内嵌式安全体系业务与安全相互束缚的行业痛点。

    安全切面具备“精准感知、及时管控、保障有力、稳健发展”等特点,以“分层建设、多层联动、稳定及安全保障、碎片化适配”为要则构建与业务平行的安全空间,将安全能力分层融入业务体系,建立起基于安全切面的各种保障机制,通过碎片化场景适配拉平基础设施环境差异。
    `
    http://www.itstec.org.cn/aspect_oriented_security_white_paper.pdf

  3. 安全牛首次公开发布《网络安全体系设计方法论》
    https://www.aqniu.com/news-views/12002.html
    `
    我们看到的永远都是自己的世界,正如医生看到的都是病人,警察看到的都是罪犯,唯有跳出自己的角色去看待世界,世界才还原给你它真实的面貌。网络安全从来都不只是漏洞,安全必须要融合企业的业务运营和管理,安全必须要进行体系化的建设。网络安全,任重而道远。

    一、企业网络安全体系设计总体思路

    企业网络安全体系设计总体思路:针对企业防护对象框架,通过企业组织体系、管理体系、技术体系的建设,逐步建立企业风险识别能力、安全防御能力、安全检测能力、安全响应能力与安全恢复能力,最终实现风险可见化,防御主动化,运行自动化的安全目标,保障企业业务的安全。

    二、网络安全体系的驱动力

    1. 业务发展规划
    2. 信息技术规划
    3. 网络安全风险
    4. 合规管理要求
    5. 安全技术趋势

    三、安全体系的目标

    1. 风险可见化
    Visibility 未知攻,焉知防,看见风险才能防范风险;

    2. 防御主动化
    Proactive 最好的防守是进攻,主动防御,纵深防御是设计的目标;

    3. 运行自动化
    Automotive 全天候自动化的安全运营才能保障安全体系的落实;

    四、安全是一种能力

    安全不是口号、不是漏洞、不是产品。安全到底是什么?安全传递的是一种信任,而这种信任来自于企业自身的安全能力。安全是一种能力,新一代企业安全观将实现“以人为本、以数据为核心、以技术为支撑”的安全能力。

    IPDRR能力框架实现了“事前、事中、事后”的全过程覆盖,从原来以防护能力为核心的模型,转向以检测能力为核心的模型,支撑识别、预防、发现、响应等,变被动为主动,直至自适应(Adaptive)的安全能力。
    `

  4. log4j2漏洞修复方案探讨,安全平行切面与现在的纵深防御体系区别,微信公众号、小程序等安全资产维护和管理机制 | 总第126周
    https://mp.weixin.qq.com/s/jcfoKP8fr3TSjEqdANJF4w
    `
    # 话题1:log4j2 漏洞最新修复方案讨论

    log4j漏洞官方进展:https://logging.apache.org/log4j/2.x/security.html
    The safest thing to do is to upgrade Log4j to a safe version, or remove the JndiLookup class from the log4j-core jar.即最新官方建议升级到2.12.2 for java7, 2.16.0 for Java 8 and up。

    In version 2.12.2 Log4j disables access to JNDI by default. Usage of JNDI in configuration now need to be enabled explicitly. Calls to the JndiLookup will now return a constant string. Also, Log4j now limits the protocols by default to only java. The message lookups feature has been completely removed. In version 2.16.0 Log4j disables access to JNDI by default. JNDI lookups in configuration now need to be enabled explicitly. Also, Log4j now limits the protocols by default to only java, ldap, and ldaps and limits the ldap protocols to only accessing Java primitive objects. Hosts other than the local host need to be explicitly allowed. The message lookups feature has been completely removed。

    其他缓解措施,但不建议:
    Other insufficient mitigation measures are: setting system propertylog4j2.formatMsgNoLookups or environment variable LOG4J_FORMAT_MSG_NO_LOOKUPS to true for releases >= 2.10, or modifying the logging configuration to disable message lookups with %m{nolookups}, %msg{nolookups} or %message{nolookups} for releases >= 2.7 and =2.10, this behavior can be mitigated by setting either the system property log4j2.formatMsgNoLookups or the environment variable LOG4J_FORMAT_MSG_NO_LOOKUPS to true.
    * 2.7-2.14.1版本的缓解措施:For releases from 2.7 through 2.14.1,all PatternLayout patterns can be modified to specify the message converter as %m{nolookups} instead of just %m.
    * 2.0-beta9 to 2.7的版本,删除jndilookup class:For releases from 2.0-beta9 to 2.7, the only mitigation is to remove the JndiLookup class from the classpath: zip -q -d log4j-core-*.jar org/apache/logging/log4j/core/lookup/JndiLookup.class.

    Log4j 2.13.0以上需要Java 8及以上. Log4j 2.4到2.12.1需要Java 7及以上。如果之前的java版本低 ,需要升级到java8及以上。供应链真的是一个大坑…

    A2:我们选择了删class的方法,一了百了。
    * 关于删了有影响业务吗?有个别系统外来的系统报起不来,在排查原因
    * 删class,各个版本都可以这么做么?有什么需要注意的么?没有全版本删除,我们要求统一版本统一到2.3.1/2.12.3/2.17.0

    A3:12月17日,Log4j漏洞动态:Log4j被曝第四个漏洞,DOS,严重性不及之前的RCE漏洞,影响2.16.0版本,已在2.17.0版本修复。

    感觉就是为了修复漏洞而造成的。漏洞修复找关键的,能把远程代码执行的修了就行,至于DDOS的话,仅仅中间件版本是防不住的。如果无止境的升级版本修漏洞的话,应用开发会累死,安全也会招来诟病,以后再推行任务会难上加难。

    最新的这个是dos,用特殊的字符串触发无限递归,造成dos。大规模流量型ddos,ADS是完全扛不住的,ADS只能用来做运营商清洗后的补充。ddos主要还是靠运营商清洗,把攻击流量在抵达企业的互联网出口前就清洗掉。

    针对log4j的供应链引用问题,其他群友的扩展思路如图,类似owasp的dependencytrack技术路线。

    # 话题2:安全平行切面和现在的纵深防御体系啥区别?

    关于定义,通过嵌入在端—管—云内部的各层次切点,使得安全管控与业务逻辑解耦,并通过标准化的接口为安全业务提供内视和干预能力的安全基础设施。安全平行切面是一种创新的安全体系思想,是实现“原生安全”的一条可行路径。

    **切面是实现纵深防御的一个技术体系,可以不纠结“词汇”,韦韬总讲得很清楚了,就是解耦检测安全与业务的关系,并贯穿云管端边,每层的单点能力做内视的关联。其中主动蜜罐、敏感数据是其中的附加收益,惊不惊喜意不意外。**

    Q:如果是外购软件能这样加切片吗?

    A1:我理解应该是可以的,不过现在市面的产品都在网络和主机、数据层居多,再深入到应用的很少(rasp 这种)。还有就是需要做数据的打通,至少要有个成熟的 soc 来支撑。

    A2:我理解是不行的,只有在阿里云这种产品模式下才能把韦总的社会价值发挥到极致,以云产品为载体,服务于租户,否则在百度早就做了。

    大部分企业都不是自研的,即使自研,也有很多还不敢乱改的,因为可能人已走,业务场景也千年不动,无需修改。

    # 话题3:关于微信公众号、小程序注册,账号维护和管理机制,大家都是怎么做的?

    A1:社交媒体管理,一般是品宣部门统一牵头,具体管理是注册制、审批制、备案制或核准制,看公司具体情况。用那种管理模式,对应的日常管理、账号维护、内容维护、形象管理、危机处理、客户服务就对应设计相应的架构。

    最开始的时候,先推备案制,散养一段时间,摸的差不多了,再推审批制,抓的严一点卡一刀,火候差不多在推核准制,不充分必要的直接毙掉。最后技术平台,流程,人力都具备了,搞注册制。所有社交媒体,所有部门需求统管统办,全抓在品宣手里。

    A2:针对监测扫描机制。微信有收费服务,叫小程序安全,自己也可以搞个rpa去定期爬一下。我们之前都是一刀断头杀,没什么好商量和留,BUFFER的。银行好使,其他机构必须被干死,至少公众号可以全干掉,公众号有文章的发送时间的,半年没讲过话的那些,肯定就是死公众号了。

    A3:小程序走左侧审批比走右侧检测好很多。我们小程序上线必须确认主体信息,这部分法务和安全会联动。安全也会做定期隐私和安全检查。
    `

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注