[论文解读] Understanding the Quality of Container Security Vulnerability Detection Tools
本研究使用覆盖率和准确率指标,对59个来自DockerHub的流行Java基于Docker镜像中的容器安全漏洞检测工具的质量进行了评估。研究发现,现有工具会漏检高达34%的漏洞,尤其是在应用级依赖方面,且在操作系统包漏洞之外的检测能力有限,凸显了当前扫描方法中的关键缺陷。
Virtualization enables information and communications technology industry to better manage computing resources. In this regard, improvements in virtualization approaches together with the need for consistent runtime environment, lower overhead and smaller package size has led to the growing adoption of containers. This is a technology, which packages an application, its dependencies and Operating System (OS) to run as an isolated unit. However, the pressing concern with the use of containers is its susceptibility to security attacks. Consequently, a number of container scanning tools are available for detecting container security vulnerabilities. Therefore, in this study, we investigate the quality of existing container scanning tools by proposing two metrics that reflects coverage and accuracy. We analyze 59 popular public container images for Java applications hosted on DockerHub using different container scanning tools (such as Clair, Anchore, and Microscanner). Our findings show that existing container scanning approach does not detect application package vulnerabilities. Furthermore, existing tools do not have high accuracy, since 34% vulnerabilities are being missed by the best performing tool. Finally, we also demonstrate quality of Docker images for Java applications hosted on DockerHub by assessing complete vulnerability landscape i.e., number of vulnerabilities detected in images.
研究动机与目标
- 评估容器扫描工具在检测容器化应用中操作系统及非操作系统组件漏洞方面的有效性。
- 识别当前仅依赖软件包漏洞数据库的检测方法存在的不足之处。
- 评估DockerHub上社区托管的Java基于容器应用镜像的真实漏洞环境。
- 为提升容器安全工具的检测准确率与覆盖率提供可操作的改进建议。
- 建立一个包含59个真实世界Docker镜像的基准数据集,提供细粒度的漏洞报告,以供未来工具评估使用。
提出的方法
- 本研究分析了DockerHub上59个流行的Java基于容器应用的公开Docker镜像。
- 使用其默认配置,对多种容器扫描工具——Clair、Anchore和Microscanner——进行应用。
- 通过检测操作系统的和非操作系统的(应用和依赖)软件包中已知漏洞的比例来衡量检测覆盖率。
- 通过检测命中率(DHR)量化准确率,该指标衡量各工具正确识别实际漏洞的比例。
- 对应用级组件进行静态代码分析,并与漏洞数据库进行对比。
- 整理了包含操作系统和非操作系统软件包级别漏洞报告的数据集,以确保可复现性并支持未来基准测试。
实验结果
研究问题
- RQ1RQ1:现有的容器漏洞扫描方法在发现非操作系统漏洞方面是否有效?
- RQ2RQ2:现有容器扫描工具的漏洞检测准确率如何?
- RQ3RQ3:DockerHub上社区托管的Java基于容器应用镜像中,包括操作系统和非操作系统软件包在内的完整漏洞环境是怎样的?
主要发现
- 表现最佳的工具仍漏检了约34%的已知漏洞,表明整体检测准确率较低。
- 现有扫描工具无法检测应用软件包及其依赖项中的漏洞,导致非操作系统组件的检测覆盖率较差。
- 与非操作系统软件包相比,操作系统软件包中的漏洞更常被检测到,凸显了当前工具在检测上的关键盲区。
- 研究发现,由于过度依赖软件包漏洞数据库,导致在检测应用级漏洞方面存在显著缺陷。
- 本研究提供了包含59个真实世界Docker镜像的基准数据集,涵盖操作系统和非操作系统层面的详细漏洞报告,可供未来研究和工具评估使用。
- 研究结果强调了需要采用结合静态代码分析与漏洞数据库查询的混合检测方法,以提升检测质量。
更好的研究,从现在开始
从阅读论文到最终审阅,大幅缩短您的研究时间。
无需绑定信用卡
本解读由 AI 生成,并经人工编辑审核。