美文网首页
优秀的源代码扫描工具对比分析,DMSCA-企业级静态源代码扫描分

优秀的源代码扫描工具对比分析,DMSCA-企业级静态源代码扫描分

作者: 益达_glmsb | 来源:发表于2021-06-21 18:57 被阅读0次

针对企业信息系统源代码中可能存在的安全漏洞,可以运用基于历史漏洞信息的智能学习技术进行检测。通过采集海量开源代码并提取其中漏洞代码的方法构建样本集,提取漏洞比对特征进行模型训练,形成原型系统,实现对系统源代码进行安全性检测,并辅助工程人员快速进行源代码漏洞的定位与修复,大幅提高代码安全检测与维护的工作效率。总体目标如下:
(1)使用多渠道、多版本、多来源的软件模块代码采集技术,对企业信息系统开发代码、开源代码和第三方代码分别进行爬取;针对开源代码各个模块的不同历史版本,采集完整历史版本代码形成开源代码库;针对API及库函数等不同调用方式对第三方代码进行处理,形成第三方代码库。
(2)基于采集到的代码库,利用git、svn等版本控制工具提供的历史提交信息检索方法,结合栈溢出和堆溢出等漏洞关键词,检索代码库中各个模块代码的实现性漏洞,对漏洞成因、代码位置、修补信息等进行存储,依据漏洞类型分别形成相应类型的漏洞库,获得完整漏洞代码库。
(3)基于生成的漏洞代码库,实现从语法相似性、语义相似性、变量相似性、代码结构相似性等比对结果中进行特征提取;进一步通过将单独特征进行相乘或计算笛卡尔积的方式,形成高质量的能更好表征代码安全性的合成特征。
(4)利用决策树、神经网络、SVM等机器学习算法对比对结果进行判别,得到目标网络密码模块代码的漏洞信息;提取软件模块的漏洞信息,并形成安全性比对报告,最终形成代码安全性比对判别原型系统。

源代码智能审计功能
源代码智能安全审计平台软件功能主要包括:项目管理、源代码仓库管理、代码采集、漏洞扫描、源代码安全分析、智能学习等模块。
(1)多渠道软件代码采集及源代码管理平台

image.png
使用多种版本控制系统协议支持模块,最后形成广域分布式的多种版本控制系统聚合爬取技术的代码采集模块。
建设形成了基于历史版本且具有表征能力的代码仓库和离线开源代码框架仓库,满足对项目代码历史信息和修改记录、历史版本获取的需求;
建立了本地源代码仓库,搭建源代码管理平台,方便对源代码进行统一管理管理,为后续的源代码扫描做好准备的工作。
生成基于历史版本管理的源代码仓库。
生成基于历史版本管理的离线开源代码仓库。
(2)漏洞特征库
image.png
通过程序静态分析技术等方法,提取历史漏洞能够表征漏洞信息的初步特征,结合保留语义的抽象化方法实现在初步特征基础上生成更为优质的漏洞优化特征,形成企业代码漏洞特征库。可对漏洞优化特征的数据管理,实现了对特征的逐条及批量的增删或导入,并且无需重新构建或编译整个模型。
(3)基于机器学习的源代码漏洞比对与分析
image.png
将漏洞采集、漏洞定位、特征提取和特征优化结合中间表示转化、机器学习模型训练与预测。
已达到扫描速度每1万行代码检测时间≤5分钟
在没有机器学习前,审计准确率在50%60%左右,但采用学习得到的漏洞库后,审计准确率能提升到80%95%。
image.png
image.png
image.png
image.png
image.png
image.png

相关文章

  • 优秀的源代码扫描工具对比分析,DMSCA-企业级静态源代码扫描分

    针对企业信息系统源代码中可能存在的安全漏洞,可以运用基于历史漏洞信息的智能学习技术进行检测。通过采集海量开源代码并...

  • 代码质量检查Sonarqube安装及Jenkins自动化集成

    sonarqube是一款优秀的开源代码质量扫描与分析平台, 用来持续分析和评测项目源代码的质量。 通过SonarQ...

  • 代码文件编译生成过程完成的事情

    编译过程可分为6步:扫描(词法分析)、语法分析、语义分析、源代码优化、代码生成、目标代码优化。 词法分析:扫描器(...

  • 代码扫描工具fortify

    代码扫描工具fortify概念: Fortify 是一个静态的、白盒的软件源代码安全测试工具。它通过内置的五大主要...

  • 静态扫描操作手册

    静态扫描操作手册 前言 静态源代码扫描是近年被人提及较多的软件应用安全解决方案之一。它是指在软件工程中,程序员在写...

  • 静态代码扫描工具

    静态代码扫描工具/引擎对比: 序号引擎分析对象备注1Findbugs字节码缺陷模式匹配、数据流分析。通过字节码分析...

  • web渗透测试小工具使用篇

    工具一:nikto nikto是一款perl语言开发的开源代码web扫描评估软件 基本都支持两种扫描模式。代理截断...

  • Static Code Scan(SCS)

    静态源代码扫描是近年被人提及较多的软件应用安全解决方案之一。它是指在软件工程中,程序员在写好源代码后,无需经过编译...

  • 程序员自我修养2:编译过程

    编译过程分为6步:扫描(词法分析)、语法分析、语义分析、源代码优化、代码生成、目标代码优化。 示例代码:array...

  • iOS代码静态扫描工具对比

    针对业内大量扫描工具在实际项目中扫描结果的影响比较,我们将代码质量问题分为以下几大类: ① 致命类:可能导...

网友评论

      本文标题:优秀的源代码扫描工具对比分析,DMSCA-企业级静态源代码扫描分

      本文链接:https://www.haomeiwen.com/subject/jixuyltx.html