【技术实现步骤摘要】
本申请涉及网络安全,且更为具体地,涉及一种基于污点分析的静态代码分析系统及方法。
技术介绍
1、随着软件系统的日益复杂,代码质量和安全性成为软件开发和运维中的重要关注点。静态代码分析作为一种有效的手段,可以在代码编写阶段发现潜在的安全漏洞和质量问题,从而降低后期修复的成本和风险。
2、近年来,污点分析技术因其在检测数据流安全漏洞方面的有效性而得到了广泛应用。例如,公开号为cn113836532a的专利技术专利公开了一种基于污点分析的php静态代码分析方法,其首先对静态代码进行词法分析和语法分析,构建对应的抽象语法树(ast)。然后,将抽象语法树分割成不同的子函数,并利用污点分析技术对每个子函数中的污点数据流进行标记。最后,根据污点数据流的汇聚点参数性质来判定是否存在安全漏洞。
3、然而,尽管上述方法在php静态代码分析方面取得了一定的成效,但由于其在处理污点数据流时,主要关注于污点数据流的汇聚点参数性质,而缺乏对数据流深层次语义特征和数据流动的时序关联关系的深入分析,可能导致其在面对复杂的代码逻辑结构时,存在安全
...【技术保护点】
1.一种基于污点分析的静态代码分析方法,包括:获取待检测静态代码;对所述待检测静态代码进行词法分析和语法分析以得到所述待检测静态代码对应的抽象语法树;将所述抽象语法树分割成不同的子函数以得到子函数的集合;使用污点分析技术对所述子函数的集合中的各个子函数进行污点数据流标记以得到污点数据流的时间队列;基于所述污点数据流的时间队列,确定所述待检测静态代码是否存在漏洞,其特征在于,基于所述污点数据流的时间队列,确定所述待检测静态代码是否存在漏洞,包括:
2.根据权利要求1所述的基于污点分析的静态代码分析方法,其特征在于,对所述污点数据流的时间队列进行上下文关联编码
...【技术特征摘要】
1.一种基于污点分析的静态代码分析方法,包括:获取待检测静态代码;对所述待检测静态代码进行词法分析和语法分析以得到所述待检测静态代码对应的抽象语法树;将所述抽象语法树分割成不同的子函数以得到子函数的集合;使用污点分析技术对所述子函数的集合中的各个子函数进行污点数据流标记以得到污点数据流的时间队列;基于所述污点数据流的时间队列,确定所述待检测静态代码是否存在漏洞,其特征在于,基于所述污点数据流的时间队列,确定所述待检测静态代码是否存在漏洞,包括:
2.根据权利要求1所述的基于污点分析的静态代码分析方法,其特征在于,对所述污点数据流的时间队列进行上下文关联编码以得到上下文污点数据流语义编码特征向量的时间队列,包括:
3.根据权利要求2所述的基于污点分析的静态代码分析方法,其特征在于,基于所述上下文污点数据流语义编码特征向量的时间队列中各个上下文污点数据流语义编码特征向量相对于当前上下文污点数据流语义编码特征向量的特征关联强度,对所述上下文污点数据流语义编码特征向量的时间队列进行特征调制以得到强度调制后上下文污点数据流语义编码特征向量的时间队列,包括:
4.根据权利要求3所述的基于污点分析的静态代码分析方法,其特征在于,计算所述上下文污点数据流语义编码特征向量的时间队列中的各个上下文污点数据流语义编码特征向...
【专利技术属性】
技术研发人员:刘颖,孙杰,
申请(专利权)人:北京久在航空科技有限公司,
类型:发明
国别省市:
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。