【论文速读】| 用于安全漏洞防范的人工智能技术

图片

本次分享论文:Artificial Intelligence Techniques for Security Vulnerability Prevention

基本信息

原文作者:Steve Kommrusch

作者单位:Colorado State University, Department of Computer Science, Fort Collins, CO, 80525 USA

关键词:artificial intelligence, machine learning, security, vulnerabilities, software

原文链接:https://arxiv.org/pdf/1912.06796

开源代码:暂无

论文要点

论文简介:计算机安全问题已存在数十年之久,人工智能技术在这一领域的应用亦有着漫长的历史。以往,多数技术主要用于检测运行系统中的攻击,然而,近期在机器学习(诸如自然语言处理)方面所取得的进步,让在系统部署前处理软件和规范以检测漏洞变为现实。此文针对运用人工智能技术(涵盖机器学习)于产品引入前检测或修复安全漏洞的方式展开了综述。在所调查的论文里,提出了诸如使用自然语言处理分析需求文档以保障安全标准的完整性、开展神经模糊测试、生成漏洞检测等技术。我们把现有技术划分为三类:漏洞检测、漏洞修复以及规范分析。总体来讲,尽管人工智能技术在该领域已极具效用,但其应用范畴依旧有限,提供了一系列能够辅助但无法取代系统开发的工具,以降低漏洞风险。

研究目的:本文的研究目的是通过总结和分析最新的人工智能技术在安全漏洞检测与预防中的应用,找出最有前景的研究方向,以期在系统部署前更有效地检测和修复软件漏洞。

引言

近年来,机器学习技术的应用范畴不断延展,已能够在自然语言处理、自动测试和代码分析方面发挥关键作用。此外,传统的人工智能技术(诸如支持向量机、遗传算法和推理引擎)也可用于代码分析,以防在系统部署前引入漏洞。据 Cybersecurity Ventures 的报告,全球每年生成的代码量多达 1110 亿行。凭借在系统部署前借助自动化机制检测漏洞,产品团队能够将更多精力集中于功能开发和性能优化上。尽管机器学习和人工智能技术于安全漏洞检测领域已取得显著成果,但仍需更进一步的研究来拓展其应用范围,提升检测的精度与效率。

图片

漏洞检测

漏洞检测指的是通过对源代码或二进制代码加以分析,从而识别其中易受攻击的代码段的问题。表 1 呈现了运用人工智能技术进行漏洞检测的相关论文。其中有两篇论文重点研究了安卓应用,这凸显了机器学习应用在安全领域的一个主要原因。那些声誉取决于软件质量的公司也在提供平台,以供大量开发者贡献代码。自动处理所提交的应用程序的这种能力,极大地减轻了经过培训的专业人员进行质量保证的工作负担。

图片

漏洞修复

漏洞修复意味着在检测到漏洞之后,借助人工智能技术对代码中的漏洞进行自动修复。代码修复的目标在于通过学习示例,把易受攻击的代码转变为安全的代码。伴随这一领域的发展,数百万行的遗留代码能够得到清理,从而大幅增强安全性。即便只是早期的进展,也可能极具价值。例如,倘若发现了新类型的漏洞(如 Spectre),能够迅速生成示例以训练如何将易受攻击的代码变更为受保护的代码。创建一个能够自动将包含漏洞的代码转化为安全代码的系统,能够有效地修复大型软件库中的代码。

规范分析

自然语言处理的进步为研究人员创造了自动处理漏洞描述或产品规范以评估安全风险的契机。在 2017 年,CVE 每周记录了将近300个漏洞,这给系统管理员带来了沉重的负担,他们需要对关键漏洞进行评估、优先处理以及修补。Bozorgi 等人运用机器学习来消化 CVE 漏洞标签和描述,并生成一个单一的分数,用于总结漏洞的可利用性和严重性。该分数能够辅助系统管理员优先开展新漏洞的补丁工作。

论文结论

尽管人工智能应用于安全漏洞的领域相对较窄,然而我们在此次调查中所讨论的论文展现出了研究的多样性。其中一些最为有趣的成果包含在新智能手机应用程序中检测代码和规范里的漏洞的能力,这在消费者群体中属于一个重要的风险领域。通过学习适当的代码转换来自动修复易受攻击的代码的潜力,在发现新漏洞时极为有用。另外,分析英文规范以察觉安全风险并参照安全标准文档的能力也颇具前景。鉴于全球每年约生成 1110 亿行软件代码,能够在系统部署前得以应用的自动化安全技术,对于技术能够继续被消费者、公司和政府安全使用将至关重要。 

原作者:论文解读智能体

校对:小椰风

图片

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/diannao/43891.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

ISO/OSI七层模型

ISO:国际标准化/ OSI:开放系统互联 七层协议必背图 1.注意事项: 1.上三层是为用户服务的,下四层负责实际数据传输。 2.下四层的传输单位: 传输层; 数据段(报文) 网络层: 数据包(报…

Vue项目openlayers中使用jsts处理wkt和geojson的交集-(geojson来源zpi解析)

Vue项目openlayers中使用jsts处理wkt和geojson的交集-(geojson来源zpi解析) 读取压缩包中的shape看上一篇笔记:Vue项目读取zip中的ShapeFile文件,并解析为GeoJson openlayers使用jsts官方示例:https://openlayers.org/en/latest/examples/j…

科技创新引领水利行业升级:深入分析智慧水利解决方案的核心价值,展望其在未来水资源管理中的重要地位与作用

目录 引言 一、智慧水利的概念与内涵 二、智慧水利解决方案的核心价值 1. 精准监测与预警 2. 优化资源配置 3. 智能运维管理 4. 公众参与与决策支持 三、智慧水利在未来水资源管理中的重要地位与作用 1. 推动水利行业转型升级 2. 保障国家水安全 3. 促进生态文明建设…

vb.netcad二开自学笔记5:ActiveX链接CAD的.net写法

一、必不可少的对象引用 使用activex需要在项目属性中勾选以下两个引用,若找不到,则浏览定位直接添加下面两个文件,可以看到位于cad的安装路径下,图中的3个mgd.dll也可以勾选。 C:\Program Files\Autodesk\AutoCAD 2024\Autodes…

实战 | YOLOv8使用TensorRT加速推理教程(步骤 + 代码)

导 读 本文主要介绍如何使用TensorRT加速YOLOv8模型推理的详细步骤与演示。 YOLOv8推理加速的方法有哪些? YOLOv8模型推理加速可以通过多种技术和方法实现,下面是一些主要的策略: 1. 模型结构优化 网络剪枝:移除模型中不重要的神经元或连接,减少模型复杂度。 模型精…

中文大模型基准测评2024上半年报告

中文大模型基准测评2024上半年报告 原创 SuperCLUE CLUE中文语言理解测评基准 2024年07月09日 18:09 浙江 SuperCLUE团队 2024/07 背景 自2023年以来,AI大模型在全球范围内掀起了有史以来规模最大的人工智能浪潮。进入2024年,全球大模型竞争态势日益加…

Obsidian 文档编辑器

Obsidian是一款功能强大的笔记软件 Download - Obsidian

降Compose十八掌之『见龙在田』| Modifier

公众号「稀有猿诉」 原文链接 降Compose十八掌之『见龙在田』| Modifier 通过前面的文章我们学会了如何使用元素来构建和填充我们的UI页面,但这只完成了一半,元素还需要装饰,以及进行动画和事件响应,这才能生成完整的UI。这…

2.5章节python中布尔类型

在Python中,布尔类型(Boolean type)用于表示真(True)或假(False)的值。这是编程中非常基础且重要的一个概念,因为它允许程序进行条件判断,从而根据条件执行不同的代码块。…

智慧校园行政办公-红头文件功能概述

在智慧校园的行政办公系统中,红头文件的管理功能是一项重要的组成部分,它极大地提升了文件处理的效率与规范性。该功能围绕文件的创建、审批、归档等关键环节,进行了全面的数字化改造。 首先,系统内置了多种标准化的红头文件模板&…

一文实践强化学习训练游戏ai--doom枪战游戏实践

一文实践强化学习训练游戏ai–doom枪战游戏实践 上次文章写道下载doom的环境并尝试了简单的操作,这次让我们来进行对象化和训练、验证,如果你有基础,可以直接阅读本文,不然请你先阅读Doom基础知识,其中包含了下载、动作…

打开ps提示dll文件丢失如何解决?教你几种靠谱的方法

在日常使用电脑过程中,由于不当操作,dll文件丢失是一种常见现象。当dll文件丢失时,程序将无法正常运行,比如ps,pr等待软件。此时,我们需要对其进行修复以恢复其功能,下面我们一起来了解一下出现…

【堆 (优先队列) 扫描线】218. 天际线问题

本文涉及知识点 堆 (优先队列) 扫描线 LeetCode218. 天际线问题 城市的 天际线 是从远处观看该城市中所有建筑物形成的轮廓的外部轮廓。给你所有建筑物的位置和高度,请返回 由这些建筑物形成的 天际线 。 每个建筑物的几何信息由数组 buildings 表示&…

景芯SoC训练营DFT debug

景芯训练营VIP学员在实践课上遇到个DFT C1 violation,导致check_design_rule无法通过,具体报错如下: 遇到这个问题第一反映一定是确认时钟,于是小编让学员去排查add_clock是否指定了时钟,指定的时钟位置是否正确。 景芯…

2024年信息系统项目管理师1批次上午客观题参考答案及解析(3)

51、探索各种选项,权衡包括时间与成本、质量与成本、风险与进度、进度与质量等多种因素,在整个过程中,舍弃无效或次优的替代方案,这种不确定性应对方法是()。 A.集合设计 B.坚韧性 C.多种结果…

离线运行Llama3:本地部署终极指南_liama2 本地部署

4月18日,Meta在官方博客官宣了Llama3,标志着人工智能领域迈向了一个重要的飞跃。经过笔者的个人体验,Llama3 8B效果已经超越GPT-3.5,最为重要的是,Llama3是开源的,我们可以自己部署! 本文和大家…

大数据------JavaWeb------FilterListenerAJAXAxiosJSON

Filter Filter简介 定义:Filter表示过滤器,是JavaWeb三大组件(Servlet、Filter、Listener)之一。 作用:它可把对资源(Servlet、JSP、Html)的请求拦截下来从而实现一些特殊功能 过滤器一般完成…

【QT中实现摄像头播放、以及视频录制】

学习分享 1、效果图2、camerathread.h3、camerathread.cpp4、mainwindow.h5、mainwindow.cpp6、main.cpp 1、效果图 2、camerathread.h #ifndef CAMERATHREAD_H #define CAMERATHREAD_H#include <QObject> #include <QThread> #include <QDebug> #include &…

选择排序(C语言版)

选择排序是一种简单直观的排序算法 算法实现 首先在未排序序列中找到最小&#xff08;大&#xff09;元素&#xff0c;存放到排序序列的起始位置。 再从剩余未排序元素中继续寻找最小&#xff08;大&#xff09;元素&#xff0c;然后放到已排序序列的末尾。 重复第二步&…

020-GeoGebra中级篇-几何对象之点与向量

本文概述了在GeoGebra中如何使用笛卡尔或极坐标系输入点和向量。用户可以通过指令栏输入数字和角度&#xff0c;使用工具或指令创建点和向量。在笛卡尔坐标系中&#xff0c;示例如“P(1,0)”&#xff1b;在极坐标系中&#xff0c;示例如“P(1;0)”或“v(5;90)”。文章还介绍了点…