IAST百科全书 · 2023年5月19日 0

IAST百科全书 第2期:IAST是如何进行工作的?IAST的工作原理揭秘

Hi 大家好,本期视频是IAST百科全书的第2期,上一期我们简要介绍了啥是IAST,那么IAST是如何进行工作的呢?

IAST是在应用程序运行的过程中,监控和收集信息,并且根据这些信息来判断应用是否存在漏洞和风险。IAST获取这些信息有很多种模式,一般来说有代理模式、流量镜像模式,插桩模式等,其中插桩模式是最重要、最常见的检测模式。

插桩就是在应用程序运行时/的代码里插入一个额外的agent,这个agent可以通过HTTP/HTTPS协议与应用程序进行通信,从而监视应用程序的执行路径、数据流和输入输出。

现在插桩技术有主动插桩和被动插桩,他们之间有一些区别,咱们一个一个讲。

主动插桩模式在关键函数hook到流量后,会添加payload进行扫描,这个过程类似黑盒的功能,就是主动对目标应用进行扫描,应用服务器的IAST agent不会追踪整个污点数据流,只会收集存在危险方法调用的请求流量,然后发送少量的验证数据包给IAST的管理端,也就是server,server会向应用服务器发送构造好的重放流量来验证风险是否存在。这种采集和重放流量的方式比被动式黑盒是显著减少了的,但是只要是存在流量重放,就一定会存在脏数据。

被动插桩基于值匹配算法和污点跟踪算法进行漏洞检测,不会主动发送payload,不用采集和重放流量,对来自客户端的请求响应/进行污点传播数据流监控,根据是否经过无害化处理来判断是否存在漏洞。只需要开启了业务测试,就会自动触发安全测试, 通过测试流量就可以实时地进行漏洞检测,不会影响同时运行的其他测试活动,在这个过程中不会产生脏数据,并且可以解决比如微服务这样的新场景、新架构的检测问题。

完成插桩后,IAST就可以在应用程序的运行过程中监视和分析应用程序的行为了,包括请求和响应的数据、代码执行路径、输入验证、访问控制、认证、授权等。检测到漏洞之后,IAST就会自动生成相应的报告,可以提供有关漏洞的详细信息,包括漏洞的类型、具体位置、严重程度等,一些IAST比如洞态,还可以提供漏洞修复建议,帮助开发团队更好地进行修复。

IAST是十分适合集成到应用程序的开发流程中的,比如可以作为CI/CD的一部分,纳入DevSecOps流程,这有助于将安全性纳入到应用程序的开发生命周期(SDLC)中,提高应用程序的安全性。

好了,今天的小课堂就到这里了,下周IAST百科全书第3期,我们再详细介绍一下IAST和其他安全工具,比如白盒、黑盒有什么区别。

视频链接:IAST百科全书第2期:IAST工作原理大解谜_哔哩哔哩_bilibili