随着数字化发展,安全变得越来越重要,尤其是对企业来说,安全风险几乎无处不在。作为全球第一款开源的 IAST 产品,洞态 IAST 支持 SaaS 访问及本地化部署,基于“值匹配算法”和“污点跟踪算法”,帮助企业在应用上线前发现应用安全风险。
近日,InfoQ 记者在 QCon 2021 全球软件开发大会·上海站上,采访了火线安全联合创始人卢中阳,和他聊了聊企业应用安全的话题。
火线安全联合创始人卢中阳
InfoQ:您好,卢老师,请您先简要介绍一下自己和火线安全
卢中阳:大家好,我是卢中阳,火线安全的联合创始人。火线安全是一家基于社区的云安全公司,主要运营火线安全平台和洞态 IAST,通过自研的自动化测试工具和海量的网络安全专家,帮助企业保障应用生命全周期的安全。
在 2018 年,我们开始聚焦于网络安全漏洞领域,研发了黑盒扫描器。之后,开始筹备火线安全平台,于 2020 年 4 月正式上线。我们对火线安全平台的定义是白帽子开发者社区,通过给白帽们提供火线自研工具,提高其挖洞效率,为企业提供更好的安全众测服务。基于平台数据,不断迭代产品。后来,IAST 技术与市场前景进入我们的目光,因此,在去年便开始研发可用于 DevSecOps 的 IAST 工具,于今年 9 月 1 日开源发布。
2020 年 6 月,我们拿到陆奇博士的天使投资,后续又获得经纬中国、五源资本投资。
InfoQ:您觉得企业为什么会越来越重视应用安全?
卢中阳:我觉得有几点原因:第一,法律层面上,《网络安全法》、《数据安全法》和《个人信息保护法》发布并施行。以前,企业的应用和数据发生泄露,大家觉得企业也是受害者。现在,国家从法律层面明确规定:企业有义务保护其应用和应用上的用户数据安全。如果因安全事故导致数据泄露,企业负责人要承担法律责任,这是一个比较大的变化。
第二,应用的开发和部署方式发生了比较大的变化。以前,一个应用单独跑在一台机器上,只做好对它的防护就行。但是现在,应用和应用间以及服务器与服务器间的调用与连接变得越来越多。比如,有些 App 会用到第三方登录系统,如果接入的第三方登录系统本身存在安全问题,那么应用的安全基本不可能得到任何保障。因此,安全不再是一个认证或一个证书的问题,而应该是应用本身的一个产品属性,也是评价应用价值的一个非常重要的指标。同样,对一些服务提供者来说,如果提供的服务导致甲方发生安全事故,这个责任怎么认定,在后续合作过程中,如何让甲方认可供应商产品和服务的安全性,这也是企业需要思考的问题。
第三,信息化。信息化发展到今天,整个信息化程度已经很高,企业内部的应用和系统越来越多,接入的第三方系统也越来越多,应用所承载的数据价值变得非常大。可能一个很小的漏洞,就会导致非常大的安全事故,这也是企业越来越重视应用安全一个非常重要的原因。
InfoQ:针对应用安全风险,火线开发了洞态 IAST 这款产品,希望帮助企业在应用上线前便发现安全风险,当初为什么会考虑开发这款产品?
卢中阳:最初,我们公司内部 owefsad 同学分享了 IAST 的应用场景。我们觉得 IAST 应用的场景,不管从检测准确度上,还是检测效率上,它都是一个非常优秀的技术方案,一个非常酷的产品方向,所以很快决定进行产品化,把它做出来。现在 owefsad 是洞态 IAST 产品线的负责人。
InfoQ:洞态是全球首个开源 IAST 产品,火线为什么会选择开源发布?
卢中阳:其实我们内部也讨论过这个问题,也和一些行业专家探讨过。最开始,大家觉得这是一个非常新的技术,还可以做成产品,为什么不直接拿来赚钱?为什么要开源?毕竟,我们是一家商业公司。
但是,从产品角度而言,好的产品不再是工程师和产品经理一起思考需求,然后开发出来的,特别是 to B 产品,一个非常优秀的产品应该是在真实场景中,一点一滴打磨出来的。我们希望通过开源的方式,把甲方客户、安全的从业者连接在一起,在诸多的安全场景下,做出更好的产品,并通过开源的方式回馈给行业。
现有的一些安全扫描工具,其效率和准确性还不够好,我们希望通过开源的方式,让国内更多厂商和企业通过使用洞态 IAST 这款产品提升公司内部的安全能力。
InfoQ:洞态 IAST 作为一款交互式应用程序安全测试工具,其典型应用场景有哪些?
卢中阳:洞态 IAST 提供了非常专业的漏洞检测能力,可以用于开发过程中,对应用进行上线前的安全检查。同时我们也提供了相应插件,可以让开发人员在编写代码过程中完成代码漏洞检测。另外,合作厂商也可以基于开源版本,搭建自己内部的 DevSecOps 流程,将洞态 IAST 作为里面某一环的工具。或者基于 IAST 和一些沉淀的调用链数据,做有特色的逻辑漏洞检测,这也是一种比较好的应用场景。
InfoQ:对企业来说,洞态 IAST 如何做到在应用开发阶段实现低成本、高产出的代码漏洞检测?
卢中阳:安全扫描工具一般有白盒和黑盒,基于原代码的白盒检测工具在某些情况下可能有误报,一般会配合安全工程师一起来使用白盒产品,使用成本相对较高。黑盒会发各种包测试,这个接口是不是有漏洞,不断发出各种请求,这会带来一些脏数据,测试过程比较长。
IAST 通过在服务端部署 Agent 探针的方式,收集应用程序运行时函数执行、数据传输,并与扫描器端进行实时交互,高效、准确的识别安全缺陷及漏洞,同时可准确确定漏洞所在的代码文件、行数、函数及参数。IAST 会检测执行时的每一行代码,以及应用程序响应每个 HTTP(S) 请求时的堆栈跟踪、内存值和实际数据流。
IAST 在企业应用测试过程中,可以直接拿到最真实代码的调用链,从最开始参数的请求到最后执行的一些代码。因此,IAST 的检测效率比较高,准确度也比较高,无脏数据、支持数据包加密/一次性签名/验证码等不支持重放的场景下的漏洞检测,非常适合用于 DevOps 流程中,以无侵入的方式对应用进行安全扫描。
InfoQ:据悉,洞态 IAST 目前支持 Java、Python 两种编程语言的漏洞检测,未来会考虑加入对其他编程语言的支持吗?
卢中阳:我们未来会支持所有主流的编程语言,比如 PHP、Go、C#等语言。
InfoQ:DevSecOps 的落地,除了使用 IAST 这样的工具外,还有哪些方面对企业很重要?
卢中阳:一是文化和认知,DevSecOps 的安全开发理念 让开发、安全和运维一起对安全负责,尽可能让安全问题在开发和测试阶段就暴露出来,不像之前责任划分那么明确。二是流程,原来的一些安全工具对开发和测试工作造成比较大的阻碍,影响其工作,侵入性比较强,这也是比较大的问题,而洞态 IAST 以一种比较柔和的方式辅助整个 DevSecOps 更好的落地,因此选择合适的工具也比较重要。
评论 3 条评论