CN112000572B - 一种源码扫描工具、方法、设备及介质 - Google Patents

一种源码扫描工具、方法、设备及介质 Download PDF

Info

Publication number
CN112000572B
CN112000572B CN202010790482.0A CN202010790482A CN112000572B CN 112000572 B CN112000572 B CN 112000572B CN 202010790482 A CN202010790482 A CN 202010790482A CN 112000572 B CN112000572 B CN 112000572B
Authority
CN
China
Prior art keywords
source code
question
program
target
dictionary
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Active
Application number
CN202010790482.0A
Other languages
English (en)
Other versions
CN112000572A (zh
Inventor
王凤丽
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Beijing Inspur Data Technology Co Ltd
Original Assignee
Beijing Inspur Data Technology Co Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Beijing Inspur Data Technology Co Ltd filed Critical Beijing Inspur Data Technology Co Ltd
Priority to CN202010790482.0A priority Critical patent/CN112000572B/zh
Publication of CN112000572A publication Critical patent/CN112000572A/zh
Application granted granted Critical
Publication of CN112000572B publication Critical patent/CN112000572B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/36Preventing errors by testing or debugging software
    • G06F11/3668Software testing
    • G06F11/3672Test management
    • G06F11/3676Test management for coverage analysis
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/36Preventing errors by testing or debugging software
    • G06F11/3668Software testing
    • G06F11/3672Test management
    • G06F11/3688Test management for test execution, e.g. scheduling of test suites

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Computer Hardware Design (AREA)
  • Quality & Reliability (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Stored Programmes (AREA)

Abstract

本申请公开了一种源码扫描工具、方法、设备及介质,该工具包括:分析模块,用于对程序源码进行分析,以生成第三方组件对应的问题词典;其中,所述问题词典中的问题为所述分析模块无法识别的所述第三方组件对应的语法;第三方组件解析引擎,用于查找所述问题词典中所述问题对应的所述程序源码引用的所述第三方组件的功能片段,然后将所述功能片段以及所述问题对应的所述程序源码中的上下文作为目标程序段保存至目标文件,并将所述目标文件的指针回调给所述分析模块,以便所述分析模块通过所述指针分析所述目标程序段,得到对应的分析结果。这样,能够降低源码问题的漏报率以及提升源码问题报告的准确率。

Description

一种源码扫描工具、方法、设备及介质
技术领域
本申请涉及程序测试技术领域,特别涉及一种源码扫描工具、方法、设备及介质。
背景技术
目前,在软件工程的开发测试阶段,为了提高代码质量,通常引入源码扫描工具来扫描项目源码,通常情况下,源码扫描工具能够报告项目源码中存在的问题。但是当源码中引入第三方框架时,源码扫描工具通常不扫描解析三方框架,因此源码扫描工具不了解三方框架的语法,故在分析源码时,遇到三方框架语法,存在一定的误判与漏判。
发明内容
有鉴于此,本申请的目的在于提供一种源码扫描工具、方法、设备及介质,能够降低源码问题的漏报率以及提升源码问题报告的准确率。其具体方案如下:
第一方面,本申请公开了一种源码扫描工具,包括:
分析模块,用于对程序源码进行分析,以生成第三方组件对应的问题词典;其中,所述问题词典中的问题为所述分析模块无法识别的所述第三方组件对应的语法;
第三方组件解析引擎,用于查找所述问题词典中所述问题对应的所述程序源码引用的所述第三方组件的功能片段,然后将所述功能片段以及所述问题对应的所述程序源码中的上下文作为目标程序段保存至目标文件,并将所述目标文件的指针回调给所述分析模块,以便所述分析模块通过所述指针分析所述目标程序段,得到对应的分析结果。
可选的,所述第三方组件解析引擎,还用于将所述问题以及所述问题对应的所述指针添加至解疑索引表。
可选的,所述第三方组件解析引擎,还用于在查找所述问题词典中所述问题对应的所述程序源码引用的所述第三方组件的功能片段之前,在所述解疑索引表中查找是否存在所述问题对应的目标指针,若存在,则将所述目标指针回调给所述分析模块,否则,启动所述在查找所述问题词典中所述问题对应的所述程序源码引用的所述第三方组件的功能片段的步骤。
可选的,所述分析模块,还用于在得到所述分析结果之后,将对应的所述问题从所述问题词典中删除。
可选的,所述分析模块,具体用于对所述程序源码进行分析,以生成所述第三方组件对应的所述问题词典;其中,所述问题词典包括任一所述问题以及所述问题对应的问题序号对应的键值对。
可选的,所述源码扫描工具,还包括:
输入模块,用于确定出所述程序源码对应的待扫描文件位置,以便所述分析模块根据所述待扫描文件位置进行针对所述程序源码的分析。
可选的,所述源码扫描工具,还包括:
输出模块,用于将所述分析模块生成的目标分析结果存放至预设缓存队列,当所述预设缓存队列满时,将所述预设缓存队列中的内容写入对应的问题报告;
其中,所述目标分析结果为所述分析模块判定所述目标程序段存在问题时生成的分析结果。
第二方面,本申请公开了一种源码扫描方法,包括:
对程序源码进行分析,以生成第三方组件对应的问题词典;其中,所述问题词典中的问题为所述分析模块无法识别的所述第三方组件对应的语法;
查找所述问题词典中所述问题对应的所述程序源码引用的所述第三方组件的功能片段;
将所述功能片段以及所述问题对应的所述程序源码中的上下文作为目标程序段保存至目标文件;
对所述目标文件的指针进行回调,通过所述指针分析所述目标程序段,得到对应的分析结果。
第三方面,本申请公开了一种源码扫描设备,包括处理器和存储器;其中,
所述存储器,用于保存计算机程序;
所述处理器,用于执行所述计算机程序以实现前述的源码扫描方法。
第四方面,本申请公开了一种计算机可读存储介质,用于保存计算机程序,其中,所述计算机程序被处理器执行时实现前述的源码扫描方法。
可见,本申请公开的一种源码扫描工具,包括:分析模块,用于对程序源码进行分析,以生成第三方组件对应的问题词典;其中,所述问题词典中的问题为所述分析模块无法识别的所述第三方组件对应的语法;第三方组件解析引擎,用于查找所述问题词典中所述问题对应的所述程序源码引用的所述第三方组件的功能片段,然后将所述功能片段以及所述问题对应的所述程序源码中的上下文作为目标程序段保存至目标文件,并将所述目标文件的指针回调给所述分析模块,以便所述分析模块通过所述指针分析所述目标程序段,得到对应的分析结果。这样,通过第三方组件解析引擎查找问题对应的第三方组件的功能片段,将功能片段以及源码中问题对应的上下文作为目标程序段保存至目标文件,并所述目标文件的指针回调给所述分析模块,以便所述分析模块通过指针分析目标程序段,得到对应的分析结果,能够降低源码问题的漏报率以及提升源码问题报告的准确率。
附图说明
为了更清楚地说明本申请实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本申请的实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据提供的附图获得其他的附图。
图1为本申请公开的一种源码扫描工具结构示意图;
图2为本申请公开的一种具体的源码扫描工具结构示意图;
图3为本申请公开的一种源码扫描方法流程图;
图4为本申请公开的一种源码扫描设备结构图;
图5为本申请公开的一种电子终端结构图。
具体实施方式
下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本申请一部分实施例,而不是全部的实施例。基于本申请中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本申请保护的范围。
目前,在软件工程的开发测试阶段,为了提高代码质量,通常引入源码扫描工具来扫描项目源码,通常情况下,源码扫描工具能够报告项目源码中存在的问题。但是当源码中引入第三方框架时,源码扫描工具通常不扫描解析三方框架,因此源码扫描工具不了解三方框架的语法,故在分析源码时,遇到三方框架语法,存在一定的误判与漏判。为此,本申请提供了一种源码扫描方案,能够降低源码问题的漏报率以及提升源码问题报告的准确率。
参见图1所示,本申请实施例公开了一种源码扫描工具,包括:
分析模块11,用于对程序源码进行分析,以生成第三方组件对应的问题词典;其中,所述问题词典中的问题为所述分析模块无法识别的所述第三方组件对应的语法;
第三方组件解析引擎12,用于查找所述问题词典中所述问题对应的所述程序源码引用的所述第三方组件的功能片段,然后将所述功能片段以及所述问题对应的所述程序源码中的上下文作为目标程序段保存至目标文件,并将所述目标文件的指针回调给所述分析模块11,以便所述分析模块11通过所述指针分析所述目标程序段,得到对应的分析结果。
可见,本申请实施例公开的一种源码扫描工具,包括:分析模块,用于对程序源码进行分析,以生成第三方组件对应的问题词典;其中,所述问题词典中的问题为所述分析模块无法识别的所述第三方组件对应的语法;第三方组件解析引擎,用于查找所述问题词典中所述问题对应的所述程序源码引用的所述第三方组件的功能片段,然后将所述功能片段以及所述问题对应的所述程序源码中的上下文作为目标程序段保存至目标文件,并将所述目标文件的指针回调给所述分析模块,以便所述分析模块通过所述指针分析所述目标程序段,得到对应的分析结果。这样,通过第三方组件解析引擎查找问题对应的第三方组件的功能片段,将功能片段以及源码中问题对应的上下文作为目标程序段保存至目标文件,并所述目标文件的指针回调给所述分析模块,以便所述分析模块通过指针分析目标程序段,得到对应的分析结果,能够降低源码问题的漏报率以及提升源码问题报告的准确率。
其中,所述分析模块11,具体用于对所述程序源码进行分析,以生成所述第三方组件对应的所述问题词典;其中,所述问题词典包括任一所述问题以及所述问题对应的问题序号对应的键值对。
也即,本申请实施例中的问题词典以MAP结构存储问题,包括问题以及问题序号对应的键值对。
并且,所述第三方组件解析引擎12,还用于将所述问题以及所述问题对应的所述指针添加至解疑索引表。
另外,所述第三方组件解析引擎12,还用于在查找所述问题词典中所述问题对应的所述程序源码引用的所述第三方组件的功能片段之前,在所述解疑索引表中查找是否存在所述问题对应的目标指针,若存在,则将所述目标指针回调给所述分析模块,否则,启动所述在查找所述问题词典中所述问题对应的所述程序源码引用的所述第三方组件的功能片段的步骤。
也即,本实施例中,在分析模块生成问题词典后,先在解疑索引表中查找是否存在问题对应的目标指针,若存在,则将所述目标指针回调给所述分析模块,否则,查找所述问题词典中所述问题对应的所述程序源码引用的所述第三方组件的功能片段,然后将所述功能片段以及所述问题对应的所述程序源码中的上下文作为目标程序段保存至目标文件,并将所述目标文件的指针回调给所述分析模块,以便所述分析模块通过所述指针分析所述目标程序段,得到对应的分析结果,以及将该指针添加至解疑索引表,以实现解疑索引表的更新。在具体的实施方式中,可以将所述功能片段以及所述问题对应的所述程序源码中的上下文转换为指定格式,得到指定格式的目标程序段然后保存至目标文件。
其中,解疑索引表可以为MAP结构,包括问题以及问题对应的指针。可以理解的是,在每次源码扫描的过程中,如果解疑索引表中不存在问题对应的指针,在将对应的目标程序段保存至目标文件后,均会将该问题以及该问题对应的目标文件的指针添加至解疑索引表中。这样,在程序迭代的过程中,提升了测试效率。
并且,所述分析模块,还用于在得到所述分析结果之后,将对应的所述问题从所述问题词典中删除。
在具体的实施方式中,可以首先利用分析模块生成第三方组件对应的问题词典,第三方组件分析引擎创建问题解析程序和解疑报告程序。通过问题解析程序读取问题词典和第三方组件对应的解疑索引表,循环遍历问题词典和解疑索引表,查看解疑索引表是否存在指向问题对应目标程序段的指针,存在则直接将该指针返回分析模块,否则根据问题词典找到源码中引用的第三方组件及所调用的功能片段,将调用的第三方组件的功能片段及源码中的上下文全部转换为指定格式,通过问题报告程序将该内容保存至指定文件,并更新第三方解疑索引表,同时将指向该文件的指针回调给分析模块,分析模块重新解析源码,得到分析结果,同时删除第三方组件问题字典中该问题对应的键值,直至第三方组件问题词典为空,分析模块分析工作结束。
参见图2所示,本申请实施例公开了一种具体的源码扫描工具,包括:
输入模块21,用于确定出所述程序源码对应的待扫描文件位置,以便所述分析模块根据所述待扫描文件位置进行针对所述程序源码的分析。
分析模块22,用于对程序源码进行分析,以生成第三方组件对应的问题词典;其中,所述问题词典中的问题为所述分析模块无法识别的所述第三方组件对应的语法。
在具体的实施方式中,输入模块21可以输入模块确定出待扫描文件位置,并建立文件索引表,以记录待扫描文件位置。分析模块根据确定出的待扫描文件位置从程序入口开始解析文件,并分析类、变量、函数的访问权限、函数返回值等否符合预期,若发现识别不了的第三方组件对应的语法,则添加至对应的问题词典中。
第三方组件解析引擎23,用于查找所述问题词典中所述问题对应的所述程序源码引用的所述第三方组件的功能片段,然后将所述功能片段以及所述问题对应的所述程序源码中的上下文作为目标程序段保存至目标文件,并将所述目标文件的指针回调给所述分析模块,以便所述分析模块通过所述指针分析所述目标程序段,得到对应的分析结果。
输出模块24,用于将所述分析模块生成的目标分析结果存放至预设缓存队列,当所述预设缓存队列满时,将所述预设缓存队列中的内容写入对应的问题报告。
其中,所述目标分析结果为所述分析模块判定所述目标程序段存在问题时生成的分析结果。
也即,分析模块在判定目标程序段存在问题时,将分析结果报告输出模块,输出模块将对应的分析结果存放至预设缓存队列,当预设缓存队列满时,将预设缓存队列中的内容写入对应的问题报告。这样,可以判断出在程序源码中对第三方组件的调用方式是否准确,不准确则将问题写入问题缓存对列。能够有效减少源码漏报,提高源码问题报告准确率,减少人工分析,维护报告时间。
参见图3所示,本申请实施例公开的一种源码扫描方法,包括:
步骤S11:对程序源码进行分析,以生成第三方组件对应的问题词典;其中,所述问题词典中的问题为所述分析模块无法识别的所述第三方组件对应的语法。
在具体的实施方式中,可以对所述程序源码进行分析,以生成所述第三方组件对应的所述问题词典;其中,所述问题词典包括任一所述问题以及所述问题对应的问题序号对应的键值对。
并且,本实施例可以先确定出所述程序源码对应的待扫描文件位置,以便所述分析模块根据所述待扫描文件位置进行针对所述程序源码的分析。
步骤S12:查找所述问题词典中所述问题对应的所述程序源码引用的所述第三方组件的功能片段。
步骤S13:将所述功能片段以及所述问题对应的所述程序源码中的上下文作为目标程序段保存至目标文件。
步骤S14:对所述目标文件的指针进行回调,通过所述指针分析所述目标程序段,得到对应的分析结果。
并且,本实施例还可以将所述问题以及所述问题对应的所述指针添加至解疑索引表。
并且,在所述查找所述问题词典中所述问题对应的所述程序源码引用的所述第三方组件的功能片段之前,在所述解疑索引表中查找是否存在所述问题对应的目标指针,若存在,则对所述目标指针进行回调,否则,启动所述查找所述问题词典中所述问题对应的所述程序源码引用的所述第三方组件的功能片段的步骤。
进一步的,在得到所述分析结果之后,可以将对应的所述问题从所述问题词典中删除。
并且,本实施例可以目标分析结果存放至预设缓存队列,当所述预设缓存队列满时,将所述预设缓存队列中的内容写入对应的问题报告;其中,所述目标分析结果为所述分析模块判定所述目标程序段存在问题时生成的分析结果。
参见图4所示,本申请实施例公开了一种源码扫描设备,包括处理器21和存储器22;其中,所述存储器22,用于保存计算机程序;所述处理器21,用于执行所述计算机程序,以实现前述实施例公开的源码扫描方法。
关于上述源码扫描方法的具体过程可以参考前述实施例中公开的相应内容,在此不再进行赘述。
参见图5所示,本申请实施例公开了一种电子终端20,包括前述实施例中公开的处理器21和存储器22。关于上述处理器21具体可以执行的步骤可以参考前述实施例中公开的相应内容,在此不再进行赘述。
进一步的,本实施例中的电子终端20,还可以具体包括电源23、通信接口24、输入输出接口25和通信总线26;其中,所述电源23用于为所述终端20上的各硬件设备提供工作电压;所述通信接口24能够为所述终端20创建与外界设备之间的数据传输通道,其所遵循的通信协议是能够适用于本申请技术方案的任意通信协议,在此不对其进行具体限定;所述输入输出接口25,用于获取外界输入数据或向外界输出数据,其具体的接口类型可以根据具体应用需要进行选取,在此不进行具体限定。
进一步的,本申请实施例还公开了一种计算机可读存储介质,用于保存计算机程序,其中,所述计算机程序被处理器执行时实现前述实施例公开的源码扫描方法。
关于上述源码扫描方法的具体过程可以参考前述实施例中公开的相应内容,在此不再进行赘述。
本说明书中各个实施例采用递进的方式描述,每个实施例重点说明的都是与其它实施例的不同之处,各个实施例之间相同或相似部分互相参见即可。对于实施例公开的装置而言,由于其与实施例公开的方法相对应,所以描述的比较简单,相关之处参见方法部分说明即可。
结合本文中所公开的实施例描述的方法或算法的步骤可以直接用硬件、处理器执行的软件模块,或者二者的结合来实施。软件模块可以置于随机存储器(RAM)、内存、只读存储器(ROM)、电可编程ROM、电可擦除可编程ROM、寄存器、硬盘、可移动磁盘、CD-ROM、或技术领域内所公知的任意其它形式的存储介质中。
以上对本申请所提供的一种源码扫描工具、方法、设备及介质进行了详细介绍,本文中应用了具体个例对本申请的原理及实施方式进行了阐述,以上实施例的说明只是用于帮助理解本申请的方法及其核心思想;同时,对于本领域的一般技术人员,依据本申请的思想,在具体实施方式及应用范围上均会有改变之处,综上所述,本说明书内容不应理解为对本申请的限制。

Claims (8)

1.一种源码扫描工具,其特征在于,包括:
分析模块,用于对程序源码进行分析,以生成第三方组件对应的问题词典;其中,所述问题词典中的问题为所述分析模块无法识别的所述第三方组件对应的语法;
第三方组件解析引擎,用于查找所述问题词典中所述问题对应的所述程序源码引用的所述第三方组件的功能片段,然后将所述功能片段以及所述问题对应的所述程序源码中的上下文作为目标程序段保存至目标文件,并将所述目标文件的指针回调给所述分析模块,以便所述分析模块通过所述指针分析所述目标程序段,得到对应的分析结果;
其中,所述第三方组件解析引擎,还用于将所述问题以及所述问题对应的所述指针添加至解疑索引表;
其中,所述第三方组件解析引擎,还用于在查找所述问题词典中所述问题对应的所述程序源码引用的所述第三方组件的功能片段之前,在所述解疑索引表中查找是否存在所述问题对应的目标指针,若存在,则将所述目标指针回调给所述分析模块,否则,启动所述查找所述问题词典中所述问题对应的所述程序源码引用的所述第三方组件的功能片段的步骤。
2.根据权利要求1所述的源码扫描工具,其特征在于,
所述分析模块,还用于在得到所述分析结果之后,将对应的所述问题从所述问题词典中删除。
3.根据权利要求1所述的源码扫描工具,其特征在于,
所述分析模块,具体用于对所述程序源码进行分析,以生成所述第三方组件对应的所述问题词典;其中,所述问题词典包括任一所述问题以及所述问题对应的问题序号对应的键值对。
4.根据权利要求1所述的源码扫描工具,其特征在于,还包括:
输入模块,用于确定出所述程序源码对应的待扫描文件位置,以便所述分析模块根据所述待扫描文件位置进行针对所述程序源码的分析。
5.根据权利要求1至4任一项所述的源码扫描工具,其特征在于,还包括:
输出模块,用于将所述分析模块生成的目标分析结果存放至预设缓存队列,当所述预设缓存队列满时,将所述预设缓存队列中的内容写入对应的问题报告;
其中,所述目标分析结果为所述分析模块判定所述目标程序段存在问题时生成的分析结果。
6.一种源码扫描方法,其特征在于,包括:
对程序源码进行分析,以生成第三方组件对应的问题词典;其中,所述问题词典中的问题为分析模块无法识别的所述第三方组件对应的语法;
查找所述问题词典中所述问题对应的所述程序源码引用的所述第三方组件的功能片段;
将所述功能片段以及所述问题对应的所述程序源码中的上下文作为目标程序段保存至目标文件;
对所述目标文件的指针进行回调,通过所述指针分析所述目标程序段,得到对应的分析结果;
其中,所述源码扫描方法,还包括:将所述问题以及所述问题对应的所述指针添加至解疑索引表;
其中,所述查找所述问题词典中所述问题对应的所述程序源码引用的所述第三方组件的功能片段之前,还包括:在所述解疑索引表中查找是否存在所述问题对应的目标指针,若存在,则将所述目标指针回调给所述分析模块,否则,启动所述查找所述问题词典中所述问题对应的所述程序源码引用的所述第三方组件的功能片段的步骤。
7.一种源码扫描设备,其特征在于,包括处理器和存储器;其中,
所述存储器,用于保存计算机程序;
所述处理器,用于执行所述计算机程序以实现如权利要求6所述的源码扫描方法。
8.一种计算机可读存储介质,其特征在于,用于保存计算机程序,其中,所述计算机程序被处理器执行时实现如权利要求6所述的源码扫描方法。
CN202010790482.0A 2020-08-07 2020-08-07 一种源码扫描工具、方法、设备及介质 Active CN112000572B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202010790482.0A CN112000572B (zh) 2020-08-07 2020-08-07 一种源码扫描工具、方法、设备及介质

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202010790482.0A CN112000572B (zh) 2020-08-07 2020-08-07 一种源码扫描工具、方法、设备及介质

Publications (2)

Publication Number Publication Date
CN112000572A CN112000572A (zh) 2020-11-27
CN112000572B true CN112000572B (zh) 2022-06-17

Family

ID=73463875

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202010790482.0A Active CN112000572B (zh) 2020-08-07 2020-08-07 一种源码扫描工具、方法、设备及介质

Country Status (1)

Country Link
CN (1) CN112000572B (zh)

Citations (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN104834858A (zh) * 2015-04-24 2015-08-12 南京邮电大学 一种android应用中恶意代码的静态检测方法
CN107844705A (zh) * 2017-11-14 2018-03-27 苏州棱镜七彩信息科技有限公司 基于二进制代码特征的第三方组件漏洞检测方法
US10069855B1 (en) * 2015-09-23 2018-09-04 Wells Fargo Bank, N.A. Automated security analysis of software libraries
CN109376072A (zh) * 2018-09-10 2019-02-22 百度在线网络技术(北京)有限公司 基于第三方组件库的应用程序开发方法和装置
CN110532029A (zh) * 2019-09-04 2019-12-03 深圳前海微众银行股份有限公司 小程序生成方法、装置、设备及计算机可读存储介质
CN110716715A (zh) * 2019-10-18 2020-01-21 恒生电子股份有限公司 一种应用程序开发方法、装置、设备及介质
CN110806978A (zh) * 2019-10-31 2020-02-18 吉林亿联银行股份有限公司 一种第三方组件的缺陷管理方法及装置
CN111104676A (zh) * 2019-12-06 2020-05-05 携程旅游信息技术(上海)有限公司 第三方组件的安全检测方法、系统、设备及可读存储介质

Family Cites Families (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8997180B2 (en) * 2012-06-26 2015-03-31 Google Inc. System and method for embedding first party widgets in third-party applications

Patent Citations (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN104834858A (zh) * 2015-04-24 2015-08-12 南京邮电大学 一种android应用中恶意代码的静态检测方法
US10069855B1 (en) * 2015-09-23 2018-09-04 Wells Fargo Bank, N.A. Automated security analysis of software libraries
CN107844705A (zh) * 2017-11-14 2018-03-27 苏州棱镜七彩信息科技有限公司 基于二进制代码特征的第三方组件漏洞检测方法
CN109376072A (zh) * 2018-09-10 2019-02-22 百度在线网络技术(北京)有限公司 基于第三方组件库的应用程序开发方法和装置
CN110532029A (zh) * 2019-09-04 2019-12-03 深圳前海微众银行股份有限公司 小程序生成方法、装置、设备及计算机可读存储介质
CN110716715A (zh) * 2019-10-18 2020-01-21 恒生电子股份有限公司 一种应用程序开发方法、装置、设备及介质
CN110806978A (zh) * 2019-10-31 2020-02-18 吉林亿联银行股份有限公司 一种第三方组件的缺陷管理方法及装置
CN111104676A (zh) * 2019-12-06 2020-05-05 携程旅游信息技术(上海)有限公司 第三方组件的安全检测方法、系统、设备及可读存储介质

Non-Patent Citations (2)

* Cited by examiner, † Cited by third party
Title
Automatic identifier inconsistency detection using code dictionary;Suntae Kim等;《Empirical Software Engineering》;20161231(第2期);全文 *
基于特征匹配的Android App漏洞检测系统设计与实现;吴丹;《网络安全技术与应用》;20170131;93-95 *

Also Published As

Publication number Publication date
CN112000572A (zh) 2020-11-27

Similar Documents

Publication Publication Date Title
CN110457277B (zh) 业务处理性能分析方法、装置、设备及存储介质
CN109376166B (zh) 脚本转换方法、装置、计算机设备及存储介质
CN107239392B (zh) 一种测试方法、装置、终端及存储介质
CN111475694A (zh) 一种数据处理方法、装置、终端及存储介质
CN111367595A (zh) 数据处理方法、程序运行方法、装置及处理设备
WO2019161618A1 (zh) 字符串解析方法、装置、设备及计算机可读存储介质
CN111552640A (zh) 一种代码检测方法、装置、设备及存储介质
CN113901083A (zh) 基于多解析器的异构数据源操作资源解析定位方法和设备
CN112328499A (zh) 一种测试数据生成方法、装置、设备及介质
CN116226170A (zh) 一种数据库语句转换方法、装置、电子设备及存储介质
CN113220588A (zh) 一种数据处理的自动化测试方法、装置、设备及存储介质
CN114186524A (zh) 晶圆探测数据的处理方法和计算机可读存储介质
CN109543027B (zh) 分页数据的获取方法及装置、设备及存储介质
CN112000572B (zh) 一种源码扫描工具、方法、设备及介质
CN114185791A (zh) 一种数据映射文件的测试方法、装置、设备及存储介质
CN116775488A (zh) 异常数据确定方法、装置、设备、介质及产品
CN116226681A (zh) 一种文本相似性判定方法、装置、计算机设备和存储介质
CN112445482A (zh) 面向容量受限的程序栈空间深度追溯方法
CN113641731B (zh) 模糊搜索优化方法、装置、电子设备和可读存储介质
CN109213490A (zh) 一种程序处理方法、装置以及相关设备
CN112527757A (zh) 基于大规模芯片测试结果的快速检索方法
CN112000573B (zh) 代码质量的监控方法、装置、计算机设备及介质
CN109446078B (zh) 代码测试方法及装置、存储介质、电子设备
CN114003211A (zh) 一种太阳码的生成及解析方法、装置、电子设备及介质
CN116149945A (zh) 数据库统计信息的收集方法、存储介质及设备

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant