第77期 | GPTSecurity周报

图片

GPTSecurity是一个涵盖了前沿学术研究和实践经验分享的社区,集成了生成预训练Transformer(GPT)、人工智能生成内容(AIGC)以及大语言模型(LLM)等安全领域应用的知识。在这里,您可以找到关于GPT/AIGC/LLM最新的研究论文、博客文章、实用的工具和预设指令(Prompts)。现为了更好地知悉近一周的贡献内容,现总结如下。

Security Papers

1. 利用大语言模型在灰盒模糊测试中生成初始种子

简介:灰盒模糊测试作为发现软件漏洞的首选技术,成功在效率与探索深度之间达成平衡。尽管研究方向长期聚焦于模糊测试技术的改进,然而高质量初始种子的关键意义却始终未得到应有的重视,常被研究人员所忽略。现有的种子生成方法确实存在诸多局限,对于那些具有非标准或自定义输入格式的程序来说更是如此。

大语言模型(LLMs)在众多领域掀起了变革浪潮,其在理解并生成跨各个知识领域复杂模式方面所展现出的能力堪称史无前例。

本文向大家介绍一款新颖的系统 ——SeedMind。它借助大语言模型,以智能生成种子的方式强化灰盒模糊测试。与过往方法不同之处在于,SeedMind 利用大语言模型来创建测试用例生成器,而不是直接生成测试用例。研究者采用了一种迭代式、反馈驱动的方法,引导大语言模型逐步优化测试用例生成过程,目标是扩大代码覆盖的深度与广度。

在 SeedMind 的开发进程中,研究者攻克了一系列关键难题,像是输入格式受限、上下文窗口存在约束,以及保障行为的一致性与对进展的感知能力等问题。经过对实际应用的深入评估后发现,SeedMind 能够高效运用大语言模型生成高质量测试用例,有力推动了漏洞发现方面的模糊测试工作。其成效与人工创建的种子不相上下,并且相较于现有的基于大语言模型的解决方案,具有显著优势。

链接:

https://arxiv.org/abs/2411.18143

2. InputSnatch:通过时序侧信道攻击窃取大语言模型服务中的输入信息

简介:大语言模型(LLMs)凭借其广泛的知识储备和强大的问答能力,在金融、医疗咨询等对隐私高度敏感的领域得以广泛应用。当大语言模型进行推理运算时,常常会运用缓存共享方法,通过对相同或相似的推理请求重复使用缓存状态或响应,以此提升效率。

不过,研究者在研究过程中察觉到,这些缓存机制存在着隐私输入信息泄露的隐患。由于缓存的存在,响应时间会产生可被观测到的差异,这一差异恰好成为了基于时序攻击的有力线索。

在本次研究里,研究者创新性地提出了一种基于时序的侧信道攻击手段,专门用于在大语言模型推理过程中窃取输入信息。基于缓存的攻击面临着一个巨大挑战,即在极为庞大的搜索空间里构建候选输入,从而精准命中并成功窃取缓存中的用户查询信息。

为了有效应对这些挑战,研究者设计了两个核心组件。其中,输入构造器运用机器学习技术以及基于大语言模型的方法来开展词汇相关性学习,与此同时,实施经过优化的搜索机制以完成通用输入构造。而时间分析器则借助带有异常值剔除功能的统计时间拟合技术,来识别缓存命中模式,并持续提供反馈信息,以便进一步优化构造器的搜索策略。

研究者针对两种缓存机制开展了实验,实验结果清晰地表明,研究者所提出的方法在各类应用场景中均能够始终保持较高的攻击成功率。研究者的这项工作充分揭示了与性能优化紧密相关的安全漏洞,着重强调在不断提升大语言模型推理能力的进程中,务必将隐私和安全问题摆在优先考量的重要位置。

链接:

https://arxiv.org/abs/2411.18191

3. 评估并提高大语言模型生成的安全攻击探测器的鲁棒性

简介:大语言模型(LLMs)在软件开发领域的应用日益广泛,常被用于生成诸如攻击探测器这类实现安全需求的功能。但大语言模型在生成精确代码方面存在困难,这使得在实际应用场景中,其生成的攻击探测器会遗漏一些广为人知的攻击类型。究其原因,很可能是大语言模型对部分现有攻击缺乏足够认知,并且生成的代码也未曾在实际使用情境下接受评估。

为此,研究者创新性地提出一种新方法,将检索增强生成(RAG)技术与自排序技术整合到大语言模型的工作流程之中。检索增强生成借助引入外部知识源的方式,强化输出结果的鲁棒性。而自排序技术受自洽性概念的启发,能够生成多条推理路径,并对这些路径进行排序筛选,进而确定最具鲁棒性的探测器。

研究者开展了广泛的实证研究,重点针对大语言模型生成的用于检测网络安全领域中两种常见注入攻击 —— 跨站脚本攻击(XSS)和 SQL 注入攻击(SQLi)的代码。研究结果表明,与基线相比,检测性能得到了显著提升,在跨站脚本攻击和 SQL 注入攻击检测的 F2 分数方面,分别提升了多达 71 个百分点和 37 个百分点。

链接:

https://arxiv.org/abs/2411.18216

4. RTL-Breaker:评估大语言模型在硬件描述语言(HDL)代码生成中抵御后门攻击的安全性

简介:大语言模型(LLMs)在硬件设计的代码生成与补全任务中彰显出了非凡的潜力。实际上,基于大语言模型的硬件描述语言(HDL)代码生成,已然助力该行业更为高效地达成复杂设计,极大地削减了开发周期中所耗费的时间与精力。然而,伴随对这种自动化手段依赖程度的与日俱增,严峻的安全风险也随之而来。

需要着重指出的是,鉴于大语言模型需在海量代码数据集上展开训练,而这些代码又大多取自公开的代码库,且往往未经过全面细致的验证,因而大语言模型极易遭受所谓的数据投毒或后门攻击。具体而言,攻击者会将恶意代码注入训练数据之中,而这些恶意代码极有可能被嵌入大语言模型所生成的硬件描述语言(HDL)代码里。如此一来,这一威胁因素便极有可能对整个硬件系统的安全与完整性造成损害。

在本项工作中,研究者精心打造了 RTL-Breaker,这是一款专门针对基于大语言模型的硬件描述语言(HDL)代码生成的全新后门攻击框架。RTL-Breaker 深入剖析了这一全新问题的关键要点:其一,深入探究各种触发机制以及它们在插入恶意修改时的有效性;其二,全面考量一般情况下后门攻击对代码生成所产生的副作用,也就是对代码质量造成的影响。RTL-Breaker 着重强调了当下迫切需要实施更为强有力的举措,以有效防范此类攻击。基于此,研究者将所构建的框架以及所有相关数据进行了开源处理。

链接:

https://arxiv.org/abs/2411.17569

5. PEFTGuard:检测针对参数高效微调的后门攻击

简介:微调对于提升大语言模型(LLMs)在特定领域的性能而言,是极为关键的一个过程。在众多微调方式里,参数高效微调(PEFT)凭借其借助集成低秩适配器来削减计算需求的独特优势,正变得愈发流行。像低秩适配器(LoRA)这类轻量级适配器,能够在开源平台上实现共享与使用。然而,攻击者可能会利用这一机制向这些适配器中植入后门,进而引发诸如输出错误信息或者产生有害结果等恶意行为,给相关群体带来了极为严重的安全隐患。遗憾的是,当前专门针对分析这些适配器中的后门模式,或者检测其中后门程序的研究寥寥无几。

为了弥补这一研究领域的空白,研究者率先构建了(并且即将对外发布)PADBench。这是一套全面且系统的基准测试集,其中涵盖了 13300 个适配器,这些适配器通过使用不同的数据集、攻击策略、参数高效微调方法以及大语言模型进行微调,既有良性的,也有被植入后门的。不仅如此,研究者还创新性地提出了 PEFTGuard,这是全球首个专门针对基于参数高效微调的适配器所设计的后门检测框架。在 PADBench 上开展的大量评估实验结果清晰地表明,PEFTGuard 的性能表现显著优于现有的各类检测方法,在绝大多数情形下,其检测准确率近乎完美,能够达到 100%。尤其值得一提的是,PEFTGuard 在三个重要方面展现出了零样本迁移能力,这三个方面分别是不同类型的攻击、参数高效微调方法以及适配器的秩。此外,研究者还深入考量了各种自适应攻击场景,以此充分证实 PEFTGuard 具备高度的鲁棒性。研究者更进一步地探索了若干种可能用于缓解后门威胁的防御措施,最终发现精细混合是其中最为行之有效的方法。研究者由衷地期望,研究者所构建的基准测试集以及提出的检测方法,能够为未来大语言模型的后门检测研究工作提供极具价值的思路与启发。

链接:

https://arxiv.org/abs/2411.17453

6. CleanVul:利用大语言模型启发式方法在代码提交中进行自动的函数级漏洞检测

简介:对于系统完整性而言,准确识别软件漏洞起着至关重要的作用。在训练机器学习模型以检测这些安全缺陷时,漏洞数据集是不可或缺的,其通常来源于美国国家漏洞数据库(NVD)或者直接取自 GitHub。不过,这些数据集大多存在较高比例的噪声,比例一般在 40% 到 75% 之间。这主要是由于在对漏洞修复提交(VFCs)里的所有变更进行标记时,采用了自动且无差别的方式,将其全部认定为与漏洞相关。而出现这种误分类现象的原因在于,提交中用于修复漏洞的所有变更并非都与安全威胁存在关联,其中许多变更仅仅是像错误修复或者测试改进这类常规性的更新。

本文首次提出了一种利用经过启发式增强的大语言模型(LLM),从漏洞修复提交里自动识别出与修复漏洞相关变更的方法,该方法的 F1 分数达到了 0.82。研究者把名为 VulSifter 的工具应用于一项大规模研究当中,在这项研究里,研究者对 GitHub 上的 127,063 个存储库展开了爬取工作,最终收集到了 5,352,105 次提交。VulSifter 的运作原理是利用大语言模型来理解代码语义以及上下文信息,同时借助启发式方法将不相关的变更过滤掉。在此基础上,研究者进一步开发出了 CleanVul,这是一个借助研究者的大语言模型启发式增强方法构建而成的高质量数据集,其中包含 11,632 个函数,其准确性高达 90.6%,能够与诸如 SVEN 和 PrimeVul 等现有的数据集相提并论。

为了对 CleanVul 数据集进行评估,研究者开展了一系列实验,实验重点是在 CleanVul 和其他高质量数据集上对多种大语言模型进行微调操作。评估结果表明,在 CleanVul 上经过微调的大语言模型不但具有更高的准确性,而且与在未清理数据集上训练的模型相比,其泛化能力也更为出色。具体来讲,在 CleanVul 上训练后在 PrimeVul 上进行测试的模型所获得的准确性,要高于仅在 PrimeVul 上训练和测试的模型。

链接:

https://arxiv.org/abs/2411.17274

7. EnStack:一种用于增强源代码漏洞检测的大语言模型集成堆叠框架

简介:软件漏洞的自动检测对提升安全性有着举足轻重的地位,然而当下的既有方法在面对现代代码库的复杂性与多样性时,常常显得力不从心。在本文之中,研究者将向大家推介 EnStack,这是一个别出心裁的集成堆叠框架,其借助自然语言处理(NLP)技术来强化漏洞检测的效能。

研究者的方法巧妙地整合了多个专为代码理解而预训练的大语言模型(LLMs),其中包括用于语义剖析的 CodeBERT、专注于结构呈现的 GraphCodeBERT,以及具备跨模态能力的 UniXcoder。在 Draper VDISC 数据集上对这些模型予以微调之后,再运用逻辑回归、支持向量机(SVM)、随机森林以及 XGBoost 等元分类器来整合它们的输出结果,如此一来,EnStack 便能精准且高效地捕捉到那些单个模型可能疏忽遗漏的复杂代码模式以及潜在漏洞。

这些元分类器将每个大语言模型的优势加以汇聚融合,进而塑造出一个综合性的模型,该模型在不同的编程环境下,针对那些细微且复杂的漏洞检测工作展现出了卓越非凡的表现。实验数据清晰地表明,EnStack 的性能相较于现有的方法有了极为显著的提升,在准确率、精确率、召回率以及 F1 分数等关键指标上均取得了长足的进步。

这项研究工作充分彰显了集成大语言模型方法在代码分析任务里所蕴含的巨大潜力,同时也为运用自然语言处理技术来推动自动漏洞检测工作的发展贡献了极具价值的思路与见解。

链接:

https://arxiv.org/abs/2411.16561

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

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

相关文章

如何通过自学成长为一名后端开发工程师?

大家好,我是袁庭新。最近,有星友向我提出了一个很好的问题:如何通过自学成为一名后端开发工程师? 为了解答这个疑问,我特意制作了一个视频来详细分享我的看法和建议。 戳链接:如何通过自学成长为一名后端开…

Linux---对缓冲区的简单理解--第一个系统程序

前序: 首先先理解一下什么是回车与换行;回车和换行是两个概念,它们不是一个东西; 回车:光标回到开始;换行:换到下一行; 如下图: 行缓冲区 如何理解缓冲区问题? 可以认为&#xff0…

[Python学习日记-70] 元类

[Python学习日记-70] 元类 简介 什么是元类 关键字 class 创建类的流程分析 自定义元类控制类的创建 自定义元类控制类的调用 自定义元类的属性查找 自定义元类的应用与练习 简介 在上一篇章当中我们已经了解了面向对象的各种内置函数了,本篇我们将讲述“元类…

数据结构题库11

第五章 树和二叉树 一、单项选择题 1.关于二叉树的下列说法正确的是 (1)。 (1):A.二叉树的度为2 B.二叉树的度可以小于2 C.每一个结点的度都为2 D.至少有一个结点的度为 2.设深度为h(h>0)的二…

学生公寓智能限电系统的功能和作用

学生公寓智能限电系统‌是一种用于管理和限制学生公寓用电的设备和技术,旨在确保用电安全、防止火灾事故,并促进节能减排。以下是关于学生公寓智能限电系统的详细介绍: 1、功能和作用 智能限电系统通过以下功能来管理和限制用电&#xff1a…

MYSQL PARTITIONING分区操作和性能测试

PARTITION OR NOT PARTITION IN MYSQl Bill Karwin says “In most circumstances, you’re better off using indexes instead of partitioning as your main method of query optimization.” According to RICK JAMES: “It is so tempting to believe that PARTITIONing wi…

基于 AutoFlow 快速搭建基于 TiDB 向量搜索的本地知识库问答机器人

导读 本文将详细介绍如何通过 PingCAP 开源项目 AutoFlow 实现快速搭建基于 TiDB 的本地知识库问答机器人。如果提前准备好 Docker、TiDB 环境,整个搭建过程估计在 10 分钟左右即可完成,无须开发任何代码。 文中使用一篇 TiDB 文档作为本地数据源作为示…

基于XML的AOP开发

AOP 为 Aspect Oriented Programming 的缩写,意思为面向切面编程。 AOP相关术语: 目标对象(Target): 你要去代理的对象,可以理解为之前很单纯的那个对象。 代理对象(Proxy): 你把你那个单纯的对象给我&#xff0c…

记录blender学习过程中遇到的问题

物体发射的方向不对 被发射物体(例如一棵树)n键看旋转归0 切换正视图 将被发射物体的局部坐标的Z轴 指向 全局方向的X轴时 并且把粒子系统设置的物体旋转勾选上 方向就对了 做倒角发现有问题 检查缩放应用、面朝向、有没有重合点(融合点&am…

Ubuntu系统中Redis的安装步骤及服务配置

目录 内容概括 系统环境 安装方式 1、apt包管理器安装 (1)安装redis服务 (2)安装客户端(进入命令行操作使用,包含redis-cli) (3)安装检验 (4&#xf…

半导体设备中的微型导轨应如何选择合适的润滑油?

微型导轨的润滑对于保证其高精度和高稳定性至关重要,尤其是在半导体设备中,微型导轨的润滑油选择需要考虑多个因素,以确保设备的最佳性能和寿命。以下是一些关键点: 1、黏度:润滑油的黏度是影响其流动性和润滑效果的重…

RocketMq详解:六、RocketMq的负载均衡机制

上一章:《SpringBootAop实现RocketMq的幂等》 文章目录 1.背景1.1 什么是负载均衡1.2 负载均衡的意义 2.RocketMQ消息消费2.1 消息的流转过程2.2 Consumer消费消息的流程 3.RocketMq的负载均衡策略3.1 Broker负载均衡3.2 Producer发送消息负载均衡3.3 消费端的负载均…

主打极致性价比,AMD RX 8600/8800显卡定了

*以下内容仅为网络爆料及传闻,一切以官方消息为准。 这谁能想到,率先掏出下一代桌面独立显卡的不是老大哥 NVIDIA,也不是 AMD,反而是三家中存在感最弱的 Intel! 就在 12 月 3 日,Intel 正式发布了自家第二…

npm, yarn, pnpm之间的区别

前言 在现代化的开发中,一个人可能同时开发多个项目,安装的项目越来越多,所随之安装的依赖包也越来越臃肿,而且有时候所安装的速度也很慢,甚至会安装失败。 因此我们就需要去了解一下,我们的包管理器&#…

C语言连接数据库

文章目录 一、初始化数据库二、创建数据库连接三、执行增删改查语句1、增删改2、查 四、执行增删改查语句 接下来我简单的介绍一下怎么用C语言连接数据库。 初始化数据库创建数据库连接执行增删改查语句关闭数据库连接 一、初始化数据库 // 数据库初始化 MYSQL mysql; MYSQL* r…

优化LabVIEW数据运算效率的方法

在LabVIEW中进行大量数据运算时,提升计算效率并减少时间占用是开发过程中常遇到的挑战。为此,可以从多个角度着手优化,包括合理选择数据结构与算法、并行处理、多线程技术、硬件加速、内存管理和界面优化等。通过采用这些策略,可以…

计算机的错误计算(一百七十六)

摘要 利用某一大语言模型计算 的值,输出为 0 . 例1. 在某一大语言模型下,计算 的值。其中sin中值取弧度。结果保留16位有效数字。 直接贴图吧: 点评: (1)以上为一个大模型给的答案。从其回答可知&…

数据结构与算法——1204—递归分治法

1、斐波那契数列优化 使用滚动变量&#xff0c;保存当前计算结果和前两项值 (1)RAB (2)更新计算对象&#xff0c;AB&#xff0c;BR #include<iostream> using namespace std;int fun(int n) {if (n 0)return 0;if (n 1 || n 2)return 1;int num11;int num21;int su…

openstack内部rpc消息通信源码分析

我们知道openstack内部消息队列基于AMQP协议&#xff0c;默认使用的rabbitmq 消息队列。谈到rabbitmq&#xff0c;大家或许并不陌生&#xff0c;但或许会对oslo message有些陌生。openstack内部并不是直接使用rabbitmq&#xff0c;而是使用了oslo.message 。oslo.message 后端的…