软件源代码安全漏洞的检测方法及检测装置制造方法及图纸

技术编号:4221621 阅读:313 留言:0更新日期:2012-04-11 18:40
本发明专利技术公开了一种软件源代码安全漏洞的检测方法,该方法包括:建立待检测软件的源代码对应的抽象语法树AST;根据预先定义的可操纵点和风险点,确定所建立的AST的各节点中的可操纵点和风险点;搜索所述AST中的可操纵点到风险点之间的执行路径,如果所述执行路径上的风险点能够被所述执行路径上的可操纵点控制,则将所述执行路径确定为可能导致安全漏洞的潜在风险执行路径。本发明专利技术还公开了一种软件安全漏洞的检测装置。使用本发明专利技术能够有效地检测出存在于软件源代码中的安全漏洞。

【技术实现步骤摘要】

本专利技术涉及软件安全
,特别涉及一种软件源代码安全漏洞的检 测方法以及检测装置。
技术介绍
目前,软件被越来越多的用于处理各种敏感信息和高价值信息,例如商 业信息、财政信息等,这使得软件日益成为企图获取这些信息的攻击者的攻 击目标。攻击者企图挖掘软件中的安全漏洞,以干扰软件运行,实现对软件 的恶意操作。其中,源代码编写阶段引入的安全漏洞是最常见的安全漏洞。 因此,开发一种有效的安全漏洞检测方法,以检测存在于源代码中的潜在安 全漏洞是很有必要的。目前,可以采用自动代码安全审计技术从软件源代码中检测出安全漏 洞。自动代码安全审计是一种基于软件源代码分析的安全漏洞检测技术,它是静态检测,属于白盒(whitebox)测试技术。自动代码安全审计是在不运 行软件的情况下,对软件的源代码进行静态分析,从而获取软件结构。然后 再根据分析结果找出软件中的安全漏洞。但是,其缺点在于,静态的源代码 分析仅仅适用于检测与语法相关的安全漏洞,例如缓冲溢出、竞争条件等, 但是对于分析诸如命令注入和数据库注入等与语义相关的安全漏洞,就显得 无能为力。从以上所述可见,目前的安全漏洞检测方法虽然能够检测到存本文档来自技高网...

【技术保护点】
一种软件源代码安全漏洞的检测方法,其特征在于,该方法包括:    建立待检测软件的源代码对应的抽象语法树AST;    根据预先定义的可操纵点和风险点,确定所建立的AST的各节点中的可操纵点和风险点;    搜索所述AST中的可操纵点到风险点之间的执行路径,如果所述执行路径上的风险点能够被所述执行路径上的可操纵点控制,则将所述执行路径确定为可能导致安全漏洞的潜在风险执行路径。

【技术特征摘要】

【专利技术属性】
技术研发人员:唐文
申请(专利权)人:西门子中国有限公司
类型:发明
国别省市:11[中国|北京]

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

1