一种无源码场景下的漏洞补丁存在性检测方法及系统与流程
未命名
07-12
阅读:192
评论:0

1.本发明涉及漏洞补丁检测技术领域,是一种无源码场景下的漏洞补丁存在性检测方法及系统。
背景技术:
2.系统漏洞是指计算机系统在硬件、软件、协议的设计、具体实现以及系统安全策略上存在的缺陷和不足。从广义的角度来看,安全漏洞的存在使得非法用户可以利用这些漏洞获得某些系统权限,进而对系统执行非法操作,导致安全事件的发生。漏洞与补丁检测就是希望能够防患于未然,在漏洞被利用之前发现漏洞并修补漏洞,具体表现就是根据已知漏洞判断某个已发布的固件版本是否已存在该漏洞的补丁。在商用领域,通常需要在源代码不可获得的场景下,仅通过编译好的二进制文件和补丁信息来快速、准确地判断某个已发布的固件版本是否含有某个漏洞的补丁。
3.在静态分析研究领域中,常见二进制区分工具对调用图和控制流程图(cfg)执行多对多图同构检测,并利用启发式(函数名、图边md索引)来匹配函数和基本块。这些方法大多只考虑指令的语法而不考虑语义,实际上语义在分析过程中非常重要。另一个研究领域是动态分析。通过直接执行给定的代码,对给定的二进制文件执行动态切片或污染,并基于执行期间收集的信息检查语义级别的等价性来执行分析。一般来说,这些技术擅长提取代码的语义,并对编译器优化和代码混淆具有良好的弹性,但由于动态分析的性质,可扩展性较差、代码覆盖不完整。与传统的静态和动态方法相比,机器学习方法有两个主要优势:1)更高的准确性,因为它们通过使用手动工程特征或基于深度学习的自动方法将代码的独特特征结合到分析中;2)更好的可扩展性,因为它们避免了繁重的图形匹配算法或动态执行。更重要的是,gpu可以显著加快学习过程。现有的基于学习的二进制相似性检测技术虽然取得了一些效果,但是仍然存在一些局限性:1)没有针对实际应用场景进行特别优化,在无源码且补丁存在性未知的场景下,难以获得完整固件的多个二进制文件用于机器学习。2)没有在分析过程中同时考虑程序范围的依赖信息和基本块语义信息。
技术实现要素:
4.针对现有技术中存在的问题,本发明提供一种无源码场景下的漏洞补丁存在性检测方法及系统。主要针对源代码不可获得的情况下,根据给定补丁和目标镜像判断漏洞补丁是否存在。
5.本发明是通过以下技术方案来实现:
6.一种无源码场景下的漏洞补丁存在性预测模型训练方法,包括:
7.获取固件目标镜像库和补丁库的数据,提取补丁代码关键信息,并在已打补丁和未打补丁的代码版本上分别提取补丁影响处的语义信息;
8.将补丁代码关键信息和语义信息组成代码结构信息,进行数据分析得到一个向量,通过embedding生成对应的特征向量,然后将上下两个特征向量进行拼接,生成的代码
结构信息特征向量;
9.将代码结构信息特征向量与补丁存在性结合,输入bert模型输入层,在输出层之后,使用softmax函数解决多分类问题,最终输出匹配程度;最终训练得到漏洞补丁存在性预测模型。
10.作为本发明的进一步改进,所述获取固件目标镜像库和补丁库的数据是选定下游厂商已编译的固件目标镜像库和补丁库。
11.作为本发明的进一步改进,所述提取补丁代码关键信息是利用程序分析技术,提取补丁代码的语法信息。
12.作为本发明的进一步改进,所述提取补丁影响处的语义信息包括:
13.对于代码结构信息,获取途径是通过程序分析源码,生成路径摘要,在触发漏洞的路径上收集补丁影响处的语义信息。
14.作为本发明的进一步改进,所述生成路径摘要包括:
15.将源代码漏洞库中代码和补丁库代码进行编译,形成无补丁pre-patch和含补丁post-patch版本二进制文件;根据得到的二进制文件,通过解析源代码,确定补丁影响函数,并生成补丁影响函数内部结构的控制流图(cfg);输入打补丁前后相关函数的cfg和代码影响块,通过计算得到每个受补丁影响块的锚点位置;利用符号执行技术生成两个版本的路径摘要;
16.根据下游内核版本镜像文件,通过查找符号表确定补丁影响函数及其cfg,在镜像上确定每个受补丁影响块的锚点的对应位置,全局变量访问次数,进而确定每个受补丁影响块的补丁代码范围,利用符号执行技术生成镜像上的路径摘要。
17.作为本发明的进一步改进,所述代码结构信息,包括:攻击入口点数量、系统调用函数数量、外部api调用数量;外部api是指用户层实现的类库函数;漏洞代码结构信息是一组结构化数据。
18.一种无源码场景下的漏洞补丁存在性检测方法,包括:
19.获取给定的补丁和目标镜像;对给定的补丁和目标镜像分别抽取对应的待预测语义信息;
20.将待预测语义信息生成待预测代码结构信息特征向量;
21.将待预测代码结构信息特征向量输入到所述的训练方法得到的漏洞补丁存在性预测模型中,输出最终的预测结果。
22.一种无源码场景下的漏洞补丁存在性预测模型训练系统,包括:
23.数据获取模块,用于获取固件目标镜像库和补丁库的数据,提取补丁代码关键信息,并在已打补丁和未打补丁的代码版本上分别提取补丁影响处的语义信息;
24.向量生成模块,用于将补丁代码关键信息和语义信息组成代码结构信息,进行数据分析得到一个向量,通过embedding生成对应的特征向量,然后将上下两个特征向量进行拼接,生成的代码结构信息特征向量;
25.模型训练模块,用于将代码结构信息特征向量与补丁存在性结合,输入bert模型输入层,在输出层之后,使用softmax函数解决多分类问题,最终输出匹配程度;最终训练得到漏洞补丁存在性预测模型。
26.一种电子设备,包括存储器、处理器以及存储在所述存储器中并可在所述处理器
上运行的计算机程序,所述处理器执行所述计算机程序时实现所述无源码场景下的漏洞补丁存在性预测模型训练方法的步骤或所述无源码场景下的漏洞补丁存在性检测方法的步骤。
27.一种计算机可读存储介质,所述计算机可读存储介质存储有计算机程序,所述计算机程序被处理器执行时实现所述无源码场景下的漏洞补丁存在性预测模型训练方法的步骤或所述无源码场景下的漏洞补丁存在性检测方法的步骤。
28.与现有技术相比,本发明具有以下有益的技术效果:
29.本发明通过对固件目标镜像库和补丁库的数据,提取补丁代码关键信息,进而语义信息;将语义信息转化成代码结构信息特征向量,输入bert模型中训练得到漏洞补丁存在性预测模型。整个训练过程不需要源代码,训练过程简单方便,依赖bert模型能够丰富动态的表达词汇含义。主要针对源代码不可获得的情况下,根据给定补丁和目标镜像判断漏洞补丁是否存在。
附图说明
30.图1为本发明一实施例给出的补丁存在性检测预测模型训练流程示意图;
31.图2为本发明一实施例给出的补丁存在性检测预测流程示意图;
32.图3为本发明一实施例给出的基于神经网络的分类模型结构示意图;
33.图4为本发明的一种无源码场景下的漏洞补丁存在性预测模型训练系统;
34.图5为本发明提供的一种电子设备示意图。
具体实施方式
35.为了使本技术领域的人员更好地理解本发明方案,下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分的实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都应当属于本发明保护的范围。
36.需要说明的是,本发明的说明书和权利要求书及上述附图中的术语“第一”、“第二”等是用于区别类似的对象,而不必用于描述特定的顺序或先后次序。应该理解这样使用的数据在适当情况下可以互换,以便这里描述的本发明的实施例能够以除了在这里图示或描述的那些以外的顺序实施。此外,术语“包括”和“具有”以及他们的任何变形,意图在于覆盖不排他的包含,例如,包含了一系列步骤或单元的过程、方法、系统、产品或设备不必限于清楚地列出的那些步骤或单元,而是可包括没有清楚地列出的或对于这些过程、方法、产品或设备固有的其它步骤或单元。
37.如图1所示,本发明提供了一种无源码场景下的漏洞补丁存在性预测模型训练方法,包括:
38.获取固件目标镜像库和补丁库的数据,提取补丁代码关键信息,并在已打补丁和未打补丁的代码版本上分别提取补丁影响处的语义信息;
39.将补丁代码关键信息和语义信息组成代码结构信息,进行数据分析得到一个向量,通过embedding生成对应的特征向量,然后将上下两个特征向量进行拼接,生成的代码
结构信息特征向量;
40.将代码结构信息特征向量与补丁存在性结合,输入bert模型输入层,在输出层之后,使用softmax函数解决多分类问题,最终输出匹配程度;最终训练得到漏洞补丁存在性预测模型。
41.本发明还提供一种无源码场景下的漏洞补丁存在性检测方法,包括:
42.获取给定的补丁和目标镜像;对给定的补丁和目标镜像分别抽取对应的待预测语义信息;
43.将待预测语义信息生成待预测代码结构信息特征向量;
44.将待预测代码结构信息特征向量输入到所述的训练方法得到的漏洞补丁存在性预测模型中,输出最终的预测结果。
45.下面结合具体的实施例对本发明做进一步的详细说明,所述是对本发明的解释而不是限定。
46.本发明给出了一种无源码场景下的漏洞补丁存在性检测方法,涉及漏洞补丁检测技术领域和人工智能机器学习领域,本发明选定下游厂商已编译的固件目标镜像库和补丁库;本检测方法主要分为生成预测模型和进行预测两个部分。
47.首先,提取补丁代码关键信息,并在已打补丁和未打补丁的版本上分别提取补丁影响处的语义信息,结合二者选定相应的深度学习神经网络模型训练出预测模型。
48.其次,对给定的补丁和目标镜像分别抽取对应的语义信息,结合已训练出的预测模型,最后,得出预测结果,即漏洞的补丁是否存在。
49.一、补丁代码关键信息的提取
50.本发明的目标镜像数据来源可以为下游厂商目标镜像库,或者其他目标镜像库,提取补丁对应的镜像文件。
51.提取补丁代码关键信息。以语法信息的提取为例,利用常用程序分析技术,譬如词法语法信息分析工具(lexical analyzer),提取补丁代码的语法等信息。
52.二、补丁影响处语义信息的提取
53.提取补丁影响处语义信息。在数据预处理阶段,漏洞描述信息不需要做过多处理。对于代码结构信息,包括以下数据:攻击入口点数量、系统调用函数数量、外部api调用数量等,获取途径是通过程序分析源码,生成路径摘要,在触发漏洞的路径上收集。其中,攻击入口点,即是路径上从外部获取数据(网络流量,io等)的函数;外部api是指用户层实现的类库函数,譬如pthread类库或jdk等。漏洞代码结构信息是一组结构化数据。
54.三、路径摘要的生成
55.本发明的漏洞数据来源可以为cve(common vulnerabilities and exposures)网站等漏洞库,或者其他漏洞库,提取漏洞对应的源码。
56.将源代码漏洞库中代码和补丁库代码进行编译,形成无补丁pre-patch和含补丁post-patch版本二进制文件;根据得到的二进制文件,通过解析源代码,确定补丁影响函数,并生成补丁影响函数内部结构的控制流图(cfg);输入打补丁前后相关函数的cfg和代码影响块,通过计算得到每个受补丁影响块的锚点位置;利用符号执行技术生成两个版本的路径摘要。
57.根据下游内核版本镜像文件,通过查找符号表确定补丁影响函数及其cfg,在镜像
上确定每个受补丁影响块的锚点的对应位置,全局变量访问次数,进而确定每个受补丁影响块的补丁代码范围,利用符号执行技术生成镜像上的路径摘要。
58.四、模型训练与预测
59.对于自然语言描述的漏洞信息,bert模型(bidirectional encoder representations from transformer)能够学习出特征向量表示,相比传统的word2vec技术,bert的优势在于能够丰富动态的表达词汇含义。对于代码结构信息,此处将程序分析之后得到的数据形成一个向量,通过embedding生成对应的特征向量,然后将上下两个特征向量进行拼接,生成的特征向量作为下一步的输入。
60.首先,进行预测模型的训练。训练数据集来自于下游厂商目标镜像库,爬取到的所有目标镜像样本训练样本与测试样本比例为9:1。将上一步所生成的特征向量与补丁存在性结合,作为神经网络模型训练的输入。如图3所示,神经网络只有三层,此处不采用深度神经网络原因是因为bert已经为自然语言描述生成了一个较好的特征表示。此处使用深度神经网络不但不会提升效果,反而会适得其反。在输出层之后,使用softmax函数解决多分类问题,最终输出匹配程度。
61.其次,利用预测模型进行预测。模型训练完成之后,对于每一个漏洞需要进行图3中的流程,获取到其对应的特征向量,即可以预测目标镜像和补丁的匹配程度。对给定的补丁和目标镜像分别抽取对应的语义信息。结合已训练出的预测模型,得出最终预测结果,即目标镜像中是否含有该漏洞的补丁。
62.以下给出具体的实施例对本发明的方法进行详细说明:
63.实施例1:
64.根据图1-图2所示,本发明提供一种无源码场景下的漏洞补丁存在性检测方法,包括以下步骤:
65.步骤一:获取固件目标镜像库和补丁库的数据,提取补丁代码关键信息,并在已打补丁和未打补丁的代码版本上分别提取补丁影响处的语义信息;
66.步骤二:将补丁代码关键信息和语义信息组成代码结构信息,进行数据分析得到一个向量,通过embedding生成对应的特征向量,然后将上下两个特征向量进行拼接,生成的代码结构信息特征向量;
67.步骤三:将代码结构信息特征向量与补丁存在性结合,输入bert模型输入层,在输出层之后,使用softmax函数解决多分类问题,最终输出匹配程度;最终训练得到漏洞补丁存在性预测模型。
68.实施例2:
69.根据图1-图2所示,本发明提供一种无源码场景下的漏洞补丁存在性检测方法,包括以下步骤:
70.步骤一:获取给定的补丁和目标镜像;对给定的补丁和目标镜像分别抽取对应的待预测语义信息;
71.步骤二:将待预测语义信息生成待预测代码结构信息特征向量;
72.步骤三:将待预测代码结构信息特征向量输入到所述的训练方法得到的漏洞补丁存在性预测模型中,输出最终的预测结果。
73.如图4所示,本发明还提供一种无源码场景下的漏洞补丁存在性预测模型训练系
统,包括:
74.数据获取模块,用于获取固件目标镜像库和补丁库的数据,提取补丁代码关键信息,并在已打补丁和未打补丁的代码版本上分别提取补丁影响处的语义信息;
75.向量生成模块,用于将补丁代码关键信息和语义信息组成代码结构信息,进行数据分析得到一个向量,通过embedding生成对应的特征向量,然后将上下两个特征向量进行拼接,生成的代码结构信息特征向量;
76.模型训练模块,用于将代码结构信息特征向量与补丁存在性结合,输入bert模型输入层,在输出层之后,使用softmax函数解决多分类问题,最终输出匹配程度;最终训练得到漏洞补丁存在性预测模型。
77.如图5所示,本发明提供一种电子设备,包括存储器、处理器以及存储在所述存储器中并可在所述处理器上运行的计算机程序,所述处理器执行所述计算机程序时实现所述无源码场景下的漏洞补丁存在性预测模型训练方法的步骤或所述无源码场景下的漏洞补丁存在性检测方法的步骤。
78.所述无源码场景下的漏洞补丁存在性预测模型训练方法包括以下步骤:
79.获取固件目标镜像库和补丁库的数据,提取补丁代码关键信息,并在已打补丁和未打补丁的代码版本上分别提取补丁影响处的语义信息;
80.将补丁代码关键信息和语义信息组成代码结构信息,进行数据分析得到一个向量,通过embedding生成对应的特征向量,然后将上下两个特征向量进行拼接,生成的代码结构信息特征向量;
81.将代码结构信息特征向量与补丁存在性结合,输入bert模型输入层,在输出层之后,使用softmax函数解决多分类问题,最终输出匹配程度;最终训练得到漏洞补丁存在性预测模型。
82.所述无源码场景下的漏洞补丁存在性检测方法,包括:
83.获取给定的补丁和目标镜像;对给定的补丁和目标镜像分别抽取对应的待预测语义信息;
84.将待预测语义信息生成待预测代码结构信息特征向量;
85.将待预测代码结构信息特征向量输入到所述的训练方法得到的漏洞补丁存在性预测模型中,输出最终的预测结果。
86.本发明第还提供一种计算机可读存储介质,所述计算机可读存储介质存储有计算机程序,所述计算机程序被处理器执行时实现所述无源码场景下的漏洞补丁存在性预测模型训练方法的步骤或所述无源码场景下的漏洞补丁存在性检测方法的步骤。
87.本领域内的技术人员应明白,本发明的实施例可提供为方法、系统、或计算机程序产品。因此,本发明可采用完全硬件实施例、完全软件实施例、或结合软件和硬件方面的实施例的形式。而且,本发明可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质(包括但不限于磁盘存储器、cd-rom、光学存储器等)上实施的计算机程序产品的形式。
88.本发明是参照根据本发明实施例的方法、设备(系统)、和计算机程序产品的流程图和/或方框图来描述的。应理解可由计算机程序指令实现流程图和/或方框图中的每一流程和/或方框、以及流程图和/或方框图中的流程和/或方框的结合。可提供这些计算机程序
指令到通用计算机、专用计算机、嵌入式处理机或其他可编程数据处理设备的处理器以产生一个机器,使得通过计算机或其他可编程数据处理设备的处理器执行的指令产生用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的装置。
89.这些计算机程序指令也可存储在能引导计算机或其他可编程数据处理设备以特定方式工作的计算机可读存储器中,使得存储在该计算机可读存储器中的指令产生包括指令装置的制造品,该指令装置实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能。
90.这些计算机程序指令也可装载到计算机或其他可编程数据处理设备上,使得在计算机或其他可编程设备上执行一系列操作步骤以产生计算机实现的处理,从而在计算机或其他可编程设备上执行的指令提供用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的步骤。
91.最后应当说明的是:以上实施例仅用以说明本发明的技术方案而非对其限制,尽管参照上述实施例对本发明进行了详细的说明,所属领域的普通技术人员应当理解:依然可以对本发明的具体实施方式进行修改或者等同替换,而未脱离本发明精神和范围的任何修改或者等同替换,其均应涵盖在本发明的权利要求保护范围之内。
技术特征:
1.一种无源码场景下的漏洞补丁存在性预测模型训练方法,其特征在于,包括:获取固件目标镜像库和补丁库的数据,提取补丁代码关键信息,并在已打补丁和未打补丁的代码版本上分别提取补丁影响处的语义信息;将补丁代码关键信息和语义信息组成代码结构信息,进行数据分析得到一个向量,通过embedding生成对应的特征向量,然后将上下两个特征向量进行拼接,生成的代码结构信息特征向量;将代码结构信息特征向量与补丁存在性结合,输入bert模型输入层,在输出层之后,使用softmax函数解决多分类问题,最终输出匹配程度;最终训练得到漏洞补丁存在性预测模型。2.根据权利要求1所述的一种无源码场景下的漏洞补丁存在性预测模型训练方法,其特征在于,所述获取固件目标镜像库和补丁库的数据是选定下游厂商已编译的固件目标镜像库和补丁库。3.根据权利要求1所述的一种无源码场景下的漏洞补丁存在性预测模型训练方法,其特征在于,所述提取补丁代码关键信息是利用程序分析技术,提取补丁代码的语法信息。4.根据权利要求1所述的一种无源码场景下的漏洞补丁存在性预测模型训练方法,其特征在于,所述提取补丁影响处的语义信息包括:对于代码结构信息,获取途径是通过程序分析源码,生成路径摘要,在触发漏洞的路径上收集补丁影响处的语义信息。5.根据权利要求4所述的一种无源码场景下的漏洞补丁存在性预测模型训练方法,其特征在于,所述生成路径摘要包括:将源代码漏洞库中代码和补丁库代码进行编译,形成无补丁pre-patch和含补丁post-patch版本二进制文件;根据得到的二进制文件,通过解析源代码,确定补丁影响函数,并生成补丁影响函数内部结构的控制流图(cfg);输入打补丁前后相关函数的cfg和代码影响块,通过计算得到每个受补丁影响块的锚点位置;利用符号执行技术生成两个版本的路径摘要;根据下游内核版本镜像文件,通过查找符号表确定补丁影响函数及其cfg,在镜像上确定每个受补丁影响块的锚点的对应位置,全局变量访问次数,进而确定每个受补丁影响块的补丁代码范围,利用符号执行技术生成镜像上的路径摘要。6.根据权利要求4所述的一种无源码场景下的漏洞补丁存在性预测模型训练方法,其特征在于,所述代码结构信息,包括:攻击入口点数量、系统调用函数数量、外部api调用数量;外部api是指用户层实现的类库函数;漏洞代码结构信息是一组结构化数据。7.一种无源码场景下的漏洞补丁存在性检测方法,其特征在于,包括:获取给定的补丁和目标镜像;对给定的补丁和目标镜像分别抽取对应的待预测语义信息;将待预测语义信息生成待预测代码结构信息特征向量;将待预测代码结构信息特征向量输入到权利要求1至6任一项所述的训练方法得到的
漏洞补丁存在性预测模型中,输出最终的预测结果。8.一种无源码场景下的漏洞补丁存在性预测模型训练系统,其特征在于,包括:数据获取模块,用于获取固件目标镜像库和补丁库的数据,提取补丁代码关键信息,并在已打补丁和未打补丁的代码版本上分别提取补丁影响处的语义信息;向量生成模块,用于将补丁代码关键信息和语义信息组成代码结构信息,进行数据分析得到一个向量,通过embedding生成对应的特征向量,然后将上下两个特征向量进行拼接,生成的代码结构信息特征向量;模型训练模块,用于将代码结构信息特征向量与补丁存在性结合,输入bert模型输入层,在输出层之后,使用softmax函数解决多分类问题,最终输出匹配程度;最终训练得到漏洞补丁存在性预测模型。9.一种电子设备,包括存储器、处理器以及存储在所述存储器中并可在所述处理器上运行的计算机程序,所述处理器执行所述计算机程序时实现权利要求1-6任一项所述无源码场景下的漏洞补丁存在性预测模型训练方法的步骤或权利要求7所述无源码场景下的漏洞补丁存在性检测方法的步骤。10.一种计算机可读存储介质,所述计算机可读存储介质存储有计算机程序,所述计算机程序被处理器执行时实现权利要求1-6任一项所述无源码场景下的漏洞补丁存在性预测模型训练方法的步骤或权利要求7所述无源码场景下的漏洞补丁存在性检测方法的步骤。
技术总结
本发明公开了一种无源码场景下的漏洞补丁存在性检测方法及系统,属于漏洞补丁检测技术领域,模型训练方法包括:提取补丁代码关键信息,并在已打补丁和未打补丁的代码版本上分别提取补丁影响处的语义信息;将补丁代码关键信息和语义信息组成代码结构信息,进行数据分析得到一个向量,通过embedding生成对应的特征向量,然后将上下两个特征向量进行拼接,生成的代码结构信息特征向量;将代码结构信息特征向量与补丁存在性结合,输入BERT模型输入层,在输出层之后,使用softmax函数解决多分类问题,最终输出匹配程度;最终训练得到漏洞补丁存在性预测模型。该方法主要针对源代码不可获得的情况下,根据给定补丁和目标镜像判断漏洞补丁是否存在。洞补丁是否存在。洞补丁是否存在。
技术研发人员:张晓东 董诗睿 杨子江
受保护的技术使用者:西安深信科创信息技术有限公司
技术研发日:2022.12.29
技术公布日:2023/7/11
版权声明
本文仅代表作者观点,不代表航家之家立场。
本文系作者授权航家号发表,未经原创作者书面授权,任何单位或个人不得引用、复制、转载、摘编、链接或以其他任何方式复制发表。任何单位或个人在获得书面授权使用航空之家内容时,须注明作者及来源 “航空之家”。如非法使用航空之家的部分或全部内容的,航空之家将依法追究其法律责任。(航空之家官方QQ:2926969996)
航空之家 https://www.aerohome.com.cn/
飞机超市 https://mall.aerohome.com.cn/
航空资讯 https://news.aerohome.com.cn/
上一篇:基于自监督双粒度多图学习的文本分类方法 下一篇:集成外周静脉内导管的制作方法