基于CNN-GAP可解释性模型的软件源码漏洞检测方法

TN919.31%TN915.08; 源代码漏洞检测是保证软件系统安全的重要手段.近年来,多种深度学习模型应用于源代码漏洞检测,极大提高了漏洞检测的效率,但还存在自定义标识符导致库外词过多、嵌入词向量的语义不够准确、神经网络模型缺乏可解释性等问题.基于此,该文提出了一种基于卷积神经网络(CNN)和全局平均池化(GAP)可解释性模型的源代码漏洞检测方法.首先在源代码预处理中对部分自定义标识符进行归一化,并采用One-hot编码进行词嵌入以缓解库外词过多的问题;然后构建CNN-GAP神经网络模型,识别出包含CWE-119缓冲区溢出类型漏洞的函数;最后通过类激活映射(CAM)可解释方法对结果进行可视...

Ausführliche Beschreibung

Gespeichert in:
Bibliographische Detailangaben
Veröffentlicht in:电子与信息学报 2022-07, Vol.44 (7), p.2568-2575
Hauptverfasser: 王剑, 匡洪宇, 李瑞林, 苏云飞
Format: Artikel
Sprache:chi
Online-Zugang:Volltext
Tags: Tag hinzufügen
Keine Tags, Fügen Sie den ersten Tag hinzu!
container_end_page 2575
container_issue 7
container_start_page 2568
container_title 电子与信息学报
container_volume 44
creator 王剑
匡洪宇
李瑞林
苏云飞
description TN919.31%TN915.08; 源代码漏洞检测是保证软件系统安全的重要手段.近年来,多种深度学习模型应用于源代码漏洞检测,极大提高了漏洞检测的效率,但还存在自定义标识符导致库外词过多、嵌入词向量的语义不够准确、神经网络模型缺乏可解释性等问题.基于此,该文提出了一种基于卷积神经网络(CNN)和全局平均池化(GAP)可解释性模型的源代码漏洞检测方法.首先在源代码预处理中对部分自定义标识符进行归一化,并采用One-hot编码进行词嵌入以缓解库外词过多的问题;然后构建CNN-GAP神经网络模型,识别出包含CWE-119缓冲区溢出类型漏洞的函数;最后通过类激活映射(CAM)可解释方法对结果进行可视化输出,标识出可能与漏洞相关的代码.通过与Rus-sell等人提出的模型以及Li等人提出的VulDeePecker模型进行对比分析,表明CNN-GAP模型能达到相当甚至更好的性能,且具有一定的可解释性,便于研究人员对漏洞进行更深入的分析.
doi_str_mv 10.11999/JEIT210412
format Article
fullrecord <record><control><sourceid>wanfang_jour</sourceid><recordid>TN_cdi_wanfang_journals_dzkxxk202207038</recordid><sourceformat>XML</sourceformat><sourcesystem>PC</sourcesystem><wanfj_id>dzkxxk202207038</wanfj_id><sourcerecordid>dzkxxk202207038</sourcerecordid><originalsourceid>FETCH-LOGICAL-s1028-18c2bcb7b9b3339ea277abdb7e596f0915d784febab84ffd80a7f00cd316ecfb3</originalsourceid><addsrcrecordid>eNpjYBA2NNAzNLS0tNT3cvUMMTI0MDE0YmHgNDQwsNQ1tbA042DgLS7OTDIwMjY0MzcwMOZkcHg6f9eTXX3Ofn667o4BT_vXv1i--GV717OG5c9WLHw6r_v5rJYXe9c_2b3t2a4Jzxc0PtvT_2zLvGeLG55t7X42beezzVN5GFjTEnOKU3mhNDdDqJtriLOHro-_u6ezo49usaGBkYWuoUWyUVJyknmSZZKxsbFlaqKRuXliUkqSeaqppVmagaWhaYq5hUlaalJiEpBKS7EwSDRPMzBITgG6NDU5LcmYm0EdYm55Yl5aYl56fFZ-aVEe0Mb4lKrsiopsIwMjIwNzA2MLYwA7K173</addsrcrecordid><sourcetype>Aggregation Database</sourcetype><iscdi>true</iscdi><recordtype>article</recordtype></control><display><type>article</type><title>基于CNN-GAP可解释性模型的软件源码漏洞检测方法</title><source>Alma/SFX Local Collection</source><creator>王剑 ; 匡洪宇 ; 李瑞林 ; 苏云飞</creator><creatorcontrib>王剑 ; 匡洪宇 ; 李瑞林 ; 苏云飞</creatorcontrib><description>TN919.31%TN915.08; 源代码漏洞检测是保证软件系统安全的重要手段.近年来,多种深度学习模型应用于源代码漏洞检测,极大提高了漏洞检测的效率,但还存在自定义标识符导致库外词过多、嵌入词向量的语义不够准确、神经网络模型缺乏可解释性等问题.基于此,该文提出了一种基于卷积神经网络(CNN)和全局平均池化(GAP)可解释性模型的源代码漏洞检测方法.首先在源代码预处理中对部分自定义标识符进行归一化,并采用One-hot编码进行词嵌入以缓解库外词过多的问题;然后构建CNN-GAP神经网络模型,识别出包含CWE-119缓冲区溢出类型漏洞的函数;最后通过类激活映射(CAM)可解释方法对结果进行可视化输出,标识出可能与漏洞相关的代码.通过与Rus-sell等人提出的模型以及Li等人提出的VulDeePecker模型进行对比分析,表明CNN-GAP模型能达到相当甚至更好的性能,且具有一定的可解释性,便于研究人员对漏洞进行更深入的分析.</description><identifier>ISSN: 1009-5896</identifier><identifier>DOI: 10.11999/JEIT210412</identifier><language>chi</language><publisher>国防科技大学电子科学学院 长沙 410073</publisher><ispartof>电子与信息学报, 2022-07, Vol.44 (7), p.2568-2575</ispartof><rights>Copyright © Wanfang Data Co. Ltd. All Rights Reserved.</rights><lds50>peer_reviewed</lds50><woscitedreferencessubscribed>false</woscitedreferencessubscribed></display><links><openurl>$$Topenurl_article</openurl><openurlfulltext>$$Topenurlfull_article</openurlfulltext><thumbnail>$$Uhttp://www.wanfangdata.com.cn/images/PeriodicalImages/dzkxxk/dzkxxk.jpg</thumbnail><link.rule.ids>314,776,780,27901,27902</link.rule.ids></links><search><creatorcontrib>王剑</creatorcontrib><creatorcontrib>匡洪宇</creatorcontrib><creatorcontrib>李瑞林</creatorcontrib><creatorcontrib>苏云飞</creatorcontrib><title>基于CNN-GAP可解释性模型的软件源码漏洞检测方法</title><title>电子与信息学报</title><description>TN919.31%TN915.08; 源代码漏洞检测是保证软件系统安全的重要手段.近年来,多种深度学习模型应用于源代码漏洞检测,极大提高了漏洞检测的效率,但还存在自定义标识符导致库外词过多、嵌入词向量的语义不够准确、神经网络模型缺乏可解释性等问题.基于此,该文提出了一种基于卷积神经网络(CNN)和全局平均池化(GAP)可解释性模型的源代码漏洞检测方法.首先在源代码预处理中对部分自定义标识符进行归一化,并采用One-hot编码进行词嵌入以缓解库外词过多的问题;然后构建CNN-GAP神经网络模型,识别出包含CWE-119缓冲区溢出类型漏洞的函数;最后通过类激活映射(CAM)可解释方法对结果进行可视化输出,标识出可能与漏洞相关的代码.通过与Rus-sell等人提出的模型以及Li等人提出的VulDeePecker模型进行对比分析,表明CNN-GAP模型能达到相当甚至更好的性能,且具有一定的可解释性,便于研究人员对漏洞进行更深入的分析.</description><issn>1009-5896</issn><fulltext>true</fulltext><rsrctype>article</rsrctype><creationdate>2022</creationdate><recordtype>article</recordtype><recordid>eNpjYBA2NNAzNLS0tNT3cvUMMTI0MDE0YmHgNDQwsNQ1tbA042DgLS7OTDIwMjY0MzcwMOZkcHg6f9eTXX3Ofn667o4BT_vXv1i--GV717OG5c9WLHw6r_v5rJYXe9c_2b3t2a4Jzxc0PtvT_2zLvGeLG55t7X42beezzVN5GFjTEnOKU3mhNDdDqJtriLOHro-_u6ezo49usaGBkYWuoUWyUVJyknmSZZKxsbFlaqKRuXliUkqSeaqppVmagaWhaYq5hUlaalJiEpBKS7EwSDRPMzBITgG6NDU5LcmYm0EdYm55Yl5aYl56fFZ-aVEe0Mb4lKrsiopsIwMjIwNzA2MLYwA7K173</recordid><startdate>20220701</startdate><enddate>20220701</enddate><creator>王剑</creator><creator>匡洪宇</creator><creator>李瑞林</creator><creator>苏云飞</creator><general>国防科技大学电子科学学院 长沙 410073</general><scope>2B.</scope><scope>4A8</scope><scope>92I</scope><scope>93N</scope><scope>PSX</scope><scope>TCJ</scope></search><sort><creationdate>20220701</creationdate><title>基于CNN-GAP可解释性模型的软件源码漏洞检测方法</title><author>王剑 ; 匡洪宇 ; 李瑞林 ; 苏云飞</author></sort><facets><frbrtype>5</frbrtype><frbrgroupid>cdi_FETCH-LOGICAL-s1028-18c2bcb7b9b3339ea277abdb7e596f0915d784febab84ffd80a7f00cd316ecfb3</frbrgroupid><rsrctype>articles</rsrctype><prefilter>articles</prefilter><language>chi</language><creationdate>2022</creationdate><toplevel>peer_reviewed</toplevel><toplevel>online_resources</toplevel><creatorcontrib>王剑</creatorcontrib><creatorcontrib>匡洪宇</creatorcontrib><creatorcontrib>李瑞林</creatorcontrib><creatorcontrib>苏云飞</creatorcontrib><collection>Wanfang Data Journals - Hong Kong</collection><collection>WANFANG Data Centre</collection><collection>Wanfang Data Journals</collection><collection>万方数据期刊 - 香港版</collection><collection>China Online Journals (COJ)</collection><collection>China Online Journals (COJ)</collection><jtitle>电子与信息学报</jtitle></facets><delivery><delcategory>Remote Search Resource</delcategory><fulltext>fulltext</fulltext></delivery><addata><au>王剑</au><au>匡洪宇</au><au>李瑞林</au><au>苏云飞</au><format>journal</format><genre>article</genre><ristype>JOUR</ristype><atitle>基于CNN-GAP可解释性模型的软件源码漏洞检测方法</atitle><jtitle>电子与信息学报</jtitle><date>2022-07-01</date><risdate>2022</risdate><volume>44</volume><issue>7</issue><spage>2568</spage><epage>2575</epage><pages>2568-2575</pages><issn>1009-5896</issn><abstract>TN919.31%TN915.08; 源代码漏洞检测是保证软件系统安全的重要手段.近年来,多种深度学习模型应用于源代码漏洞检测,极大提高了漏洞检测的效率,但还存在自定义标识符导致库外词过多、嵌入词向量的语义不够准确、神经网络模型缺乏可解释性等问题.基于此,该文提出了一种基于卷积神经网络(CNN)和全局平均池化(GAP)可解释性模型的源代码漏洞检测方法.首先在源代码预处理中对部分自定义标识符进行归一化,并采用One-hot编码进行词嵌入以缓解库外词过多的问题;然后构建CNN-GAP神经网络模型,识别出包含CWE-119缓冲区溢出类型漏洞的函数;最后通过类激活映射(CAM)可解释方法对结果进行可视化输出,标识出可能与漏洞相关的代码.通过与Rus-sell等人提出的模型以及Li等人提出的VulDeePecker模型进行对比分析,表明CNN-GAP模型能达到相当甚至更好的性能,且具有一定的可解释性,便于研究人员对漏洞进行更深入的分析.</abstract><pub>国防科技大学电子科学学院 长沙 410073</pub><doi>10.11999/JEIT210412</doi><tpages>8</tpages></addata></record>
fulltext fulltext
identifier ISSN: 1009-5896
ispartof 电子与信息学报, 2022-07, Vol.44 (7), p.2568-2575
issn 1009-5896
language chi
recordid cdi_wanfang_journals_dzkxxk202207038
source Alma/SFX Local Collection
title 基于CNN-GAP可解释性模型的软件源码漏洞检测方法
url https://sfx.bib-bvb.de/sfx_tum?ctx_ver=Z39.88-2004&ctx_enc=info:ofi/enc:UTF-8&ctx_tim=2025-02-09T23%3A14%3A40IST&url_ver=Z39.88-2004&url_ctx_fmt=infofi/fmt:kev:mtx:ctx&rfr_id=info:sid/primo.exlibrisgroup.com:primo3-Article-wanfang_jour&rft_val_fmt=info:ofi/fmt:kev:mtx:journal&rft.genre=article&rft.atitle=%E5%9F%BA%E4%BA%8ECNN-GAP%E5%8F%AF%E8%A7%A3%E9%87%8A%E6%80%A7%E6%A8%A1%E5%9E%8B%E7%9A%84%E8%BD%AF%E4%BB%B6%E6%BA%90%E7%A0%81%E6%BC%8F%E6%B4%9E%E6%A3%80%E6%B5%8B%E6%96%B9%E6%B3%95&rft.jtitle=%E7%94%B5%E5%AD%90%E4%B8%8E%E4%BF%A1%E6%81%AF%E5%AD%A6%E6%8A%A5&rft.au=%E7%8E%8B%E5%89%91&rft.date=2022-07-01&rft.volume=44&rft.issue=7&rft.spage=2568&rft.epage=2575&rft.pages=2568-2575&rft.issn=1009-5896&rft_id=info:doi/10.11999/JEIT210412&rft_dat=%3Cwanfang_jour%3Edzkxxk202207038%3C/wanfang_jour%3E%3Curl%3E%3C/url%3E&disable_directlink=true&sfx.directlink=off&sfx.report_link=0&rft_id=info:oai/&rft_id=info:pmid/&rft_wanfj_id=dzkxxk202207038&rfr_iscdi=true