java中字节码_人机协同 Java 字节码漏洞扫描系统

c16072912c3fbbb7303bc9cc67dee4fd.png

图 1 系统总体架构图

1. 项目意义

近年来,软件系统规模以及复杂性不断增大,软件安全问题层出不穷,其原因一般是程序本身在代码设计或实现过程中存在错误或缺陷(称为漏洞)。源码安全审计可以在系统开发阶段发现潜在安全漏洞,从而帮助减少 10%—50%安全漏洞。因此在源码级别对程序进行漏洞扫描,可以在源头上有效减少安全漏洞的产生,从而减少恶意攻击事件的发生,保证软件安全性。随着程序分析技术与静态扫描工具的快速发展,在系统发布前对程序进行漏洞扫描成为趋势。

但现存大多静态扫描工具基于模式匹配、数据流分析等技术,通常未能充分考虑上下文,存在大量误报漏洞。大量误报漏洞的存在不仅增加了工程师筛选真正漏洞的成本,甚至导致部分开发人员弃用漏洞扫描工具。综上,静态漏洞扫描工具存在大量误报结果,而纯人工漏洞检测需要手动检测相关代码,亦存在成本高、耗时长等缺点。因此,为了向用户提供低误报的高效 Java 漏洞扫描服务,系统扫描便于分析的字节码,通过基于特征提取与机器学习的误报过滤模型识别误报漏洞,利用众包专家(安全工程师)审核进一步人工确认正误报,结合二者生成低误报扫描报告。系统利用专家审核结果不断扩增数据集,迭代训练误报过滤模型,持续提高误报过滤效果,降低漏洞扫描误报率。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值