第三方组件漏洞扫描方法及装置制造方法及图纸

技术编号:25690469 阅读:44 留言:0更新日期:2020-09-18 21:02
本发明专利技术公开了一种第三方组件漏洞扫描方法及装置,该方法包括:将漏洞扫描工具封装到容器的镜像中。基于镜像,利用调度工具创建新的容器。利用新的容器从源代码服务器中拉取目标系统的源代码。对源代码进行构建处理,以获取使用的第三方组件信息。基于漏洞扫描工具配置文件和第三方组件信息,在预设漏洞库中查询第三方组件的漏洞。本发明专利技术可以对目标系统使用的第三方组件的漏洞进行自动扫描,排查时间较短,效率较高,在漏洞扫描过程中不容易出现遗漏。

【技术实现步骤摘要】
第三方组件漏洞扫描方法及装置
本专利技术涉及计算机
,尤其涉及一种第三方组件漏洞扫描方法及装置。
技术介绍
随着计算机相关业务的不断发展,为了满足业务需求,提升开发效率,很多项目中引入了第三方组件。然而,第三方组件在提升开发效率的同时,也带来了较大的安全风险,因为第三方组件本身可能存在安全漏洞,该安全漏洞一旦被披露很快就被黑客大规模利用,因此,提供一种对第三方组件的漏洞扫描方法是十分必要的。在现有技术中,一般会对第三方组件的漏洞采用人工排查的方式,但是,在项目众多的情况下,该人工排查的方式则至少存在以下问题:排查时间较长,效率较低,在漏洞查询过程中容易出现遗漏。
技术实现思路
本专利技术实施例提供一种第三方组件漏洞扫描方法,用以对第三方组件的漏洞进行自动扫描,排查时间较短,效率较高,在漏洞查询过程中不容易出现遗漏,该方法包括:将漏洞扫描工具封装到容器的镜像中;基于所述镜像,利用调度工具创建新的容器;利用新的容器从源代码服务器中拉取目标系统的源代码;对所述源代码进行构建处理,以获取第三方组件信息;基于漏洞扫描工具配置文件和第三方组件信息,在预设漏洞库中查询第三方组件的漏洞。可选的,所述漏洞扫描工具为Dependency-Check工具。可选的,对所述源代码进行构建处理包括:确定构建工具;利用构建工具对所述源代码进行构建处理。可选的,所述方法还包括:建立扫描结果漏洞库;将在预设漏洞库中查询第三方组件的漏洞存储至扫描结果漏洞库中。本专利技术实施例还提供一种第三方组件漏洞扫描装置,用以对第三方组件的漏洞进行自动扫描,排查时间较短,效率较高,在漏洞扫描过程中不容易出现遗漏,该装置包括:封装模块,用于将漏洞扫描工具封装到容器的镜像中;容器创建模块,用于基于所述镜像,利用调度工具创建新的容器;源代码拉取模块,用于新的容器连接源代码服务器,拉取目标系统的源代码;构建模块,用于对所述源代码进行构建处理,以获取第三方组件信息;漏洞扫描模块,用于基于漏洞扫描工具配置文件和第三方组件信息,在预设漏洞库中查询第三方组件的漏洞。可选的,所述漏洞扫描工具为Dependency-Check工具。可选的,构建模块进一步用于:确定构建工具;利用构建工具对所述源代码进行构建处理。可选的,所述装置还包括:漏洞库建立模块,用于建立扫描结果漏洞库;漏洞存储模块,用于将在预设漏洞库中查询第三方组件的漏洞存储至扫描结果漏洞库中。本专利技术实施例还提供一种计算机设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,所述处理器执行所述计算机程序时实现上述方法。本专利技术实施例还提供一种计算机可读存储介质,所述计算机可读存储介质存储有执行上述方法的计算机程序。本专利技术实施例中,通过将漏洞扫描工具封装到容器的镜像中,基于镜像,利用调度工具创建新的容器,利用该新的容器从源代码服务器中拉取目标系统的源代码,对该源代码进行构建处理,以获取第三方组件信息,基于漏洞扫描工具配置文件和第三方组件信息,在预设漏洞库中查询第三方组件的漏洞,实现了对第三方组件漏洞的自动扫描,扫描时间较短,效率较高,在漏洞扫描过程中不容易出现遗漏。附图说明为了更清楚地说明本专利技术实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本专利技术的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。在附图中:图1为本专利技术实施例中的第三方组件漏洞扫描方法的流程图;图2为本专利技术实施例中的第三方组件漏洞扫描方法的又一流程图;图3为本专利技术实施例中的第三方组件漏洞扫描装置的结构示意图;图4为本专利技术实施例中的第三方组件漏洞扫描装置的又一结构示意图。具体实施方式为使本专利技术实施例的目的、技术方案和优点更加清楚明白,下面结合附图对本专利技术实施例做进一步详细说明。在此,本专利技术的示意性实施例及其说明用于解释本专利技术,但并不作为对本专利技术的限定。在本说明书的描述中,所使用的“包含”、“包括”、“具有”、“含有”等,均为开放性的用语,即意指包含但不限于。参考术语“一个实施例”、“一个具体实施例”、“一些实施例”、“例如”等的描述意指结合该实施例或示例描述的具体特征、结构或者特点包含于本申请的至少一个实施例或示例中。在本说明书中,对上述术语的示意性表述不一定指的是相同的实施例或示例。而且,描述的具体特征、结构或者特点可以在任何的一个或多个实施例或示例中以合适的方式结合。各实施例中涉及的步骤顺序用于示意性说明本申请的实施,其中的步骤顺序不作限定,可根据需要作适当调整。需要说明的是,第三方组件作为软件的一部分提供功能,但由软件编制方以外的其他组织或个人开发的相关组件。这种组件不是某种语言官方提供的,也不是由软件开发者编写的组件。使用成熟的第三方组件进行开发会提高开发的效率,减少出错的可能。图1为本专利技术实施例提供的第三方组件漏洞扫描方法的流程图,如图1所示,该方法包括:步骤101、将漏洞扫描工具封装到容器的镜像中。在本实施例中,漏洞扫描工具可以为Dependency-Check工具。Dependency-Check工具是OWASP(OpenWebApplicationSecurityProject)的一个实用开源程序,支持JAVA和.NET平台,能够识别项目依赖的第三方组件,并检查这些组件中是否存在公开披露的安全漏洞,该Dependency-Check工具还具有支持面广(支持多种语言)、可集成性强、使用方便等特点,支持和许多主流的软件进行集成,比如:命令行、Ant、Maven、Gradle、Jenkins、Sonar等。该容器可以为Docker,Docker是一个开源的应用容器引擎,它可以让开发者打包他们的应用以及依赖包到一个轻量级、可移植的容器中,然后发布到任何流行的Linux机器上。步骤102、基于所述镜像,利用调度工具创建新的容器。在本实施例中,调度工具可以为Jenkins,Jenkins可用于自动化各种任务,如构建,测试和部署软件。该镜像只需首次使用时进行构建,后续可以直接使用,方便快捷。基于步骤101,通过将Dependency-Check工具封装到Docker的镜像中,再利用Jenkins启动容器进行检查,无须下载工具,无须修改项目源代码,实现了对项目的无侵入性和配置简化,同时保证了环境的一致性。步骤103、利用新的容器从源代码服务器中拉取目标系统的源代码。在本实施例中,新的容器与源代码服务器连接,该服务器可以为git、svn等代码服务器。步骤104、对所述源代码进行构建处理,以获取第三方组件信息。在本实施例中,对所述源本文档来自技高网...

【技术保护点】
1.一种第三方组件漏洞扫描方法,其特征在于,包括:/n将漏洞扫描工具封装到容器的镜像中;/n基于所述镜像,利用调度工具创建新的容器;/n利用新的容器从源代码服务器中拉取目标系统的源代码;/n对所述源代码进行构建处理,以获取使用的第三方组件信息;/n基于漏洞扫描工具配置文件和第三方组件信息,在预设漏洞库中查询第三方组件的漏洞。/n

【技术特征摘要】
1.一种第三方组件漏洞扫描方法,其特征在于,包括:
将漏洞扫描工具封装到容器的镜像中;
基于所述镜像,利用调度工具创建新的容器;
利用新的容器从源代码服务器中拉取目标系统的源代码;
对所述源代码进行构建处理,以获取使用的第三方组件信息;
基于漏洞扫描工具配置文件和第三方组件信息,在预设漏洞库中查询第三方组件的漏洞。


2.如权利要求1所述的方法,其特征在于,所述漏洞扫描工具为Dependency-Check工具。


3.如权利要求1所述的方法,其特征在于,对所述源代码进行构建处理包括:
确定构建工具;
利用构建工具对所述源代码进行构建处理。


4.如权利要求1所述的方法,其特征在于,还包括:
建立扫描结果漏洞库;
将在预设漏洞库中查询第三方组件的漏洞存储至扫描结果漏洞库中。


5.一种第三方组件漏洞扫描装置,其特征在于,包括:
封装模块,用于将漏洞扫描工具封装到容器的镜像中;
容器创建模块,用于基于所述镜像,利用调度工具创建新的容器;
源代码拉取模块,用于利用新...

【专利技术属性】
技术研发人员:高倩田济榕韩琪张博尹充
申请(专利权)人:中国银行股份有限公司
类型:发明
国别省市:北京;11

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1