一种基于静态分析的Java空指针解引用检测方法

AITNT-国内领先的一站式人工智能新闻资讯网站
# 热门搜索 #
一种基于静态分析的Java空指针解引用检测方法
申请号:CN202510501676
申请日期:2025-04-21
公开号:CN120407368A
公开日期:2025-08-01
类型:发明专利
摘要
本发明公开一种基于静态分析的Java空指针解引用检测方法,通过分层式分析框架与可达性验证结合,实现更精准的空指针异常检测。处理待检测的目标程序,获得中间表示IR和过程内控制流图CFG;基于IR和CFG进行过程内的空值数据流分析和别名分析,生成对应的数据流结果;根据数据流结果执行流不敏感指针分析,动态构建Java程序的指针流图,在图上传播null值,并同步生成过程间控制流图;从PFG中提取潜在的空值变量,收集这些变量相关的解引用语句,结合CFL‑Reachability算法在ICFG图上搜索符合控制流的null值传播的语句序列;针对不同的代码模式,对不同种类的语句序列,采用规则驱动的求解器来进行可达性验证,并输出缺陷检测报告。
技术关键词
指针 变量 序列 条件判断语句 计算机设备 可读存储介质 开源框架 报告 算法 动态 搜索模块 程序 处理器 分析模块 多层次 模式 存储器