第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.rhkb.cn/news/485669.html

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

相关文章

nginx漏洞修复

漏洞名称:web服务器http信息头公开 解决,在以下各个监听端口加上一行,然后重启****nginx server_tokens off; 漏洞名称:默认的nginx http服务器设置 解决:请求头加上以下参数 add_header Content-Security-Policy “…

远程修改ESXi 6.7管理IP地址

1.启用安全Shell(也就是EXSi可以被SSH访问的功能) 2.使用SecureCRT SSH2连接ESXi主机,现在使用dcui并没有任何反应,在Session标签栏右键点击Disconnect。 The time and date of this login have been sent to the system logs.WA…

结构型-组合模式(Composite Pattern)

什么是组合模式 又名部分整体模式,是用于把一组相似的对象当作一个单一的对象。组合模式依据树形结构来组合对象,用来表示部分以及整体层次。这种类型的设计模式属于结构型模式,它创建了对象组的树形结构。 结构 抽象根节点(Co…

【求助】Tinymce组件异常

版本号 { "tinymce/tinymce-vue": "^3.0.1", "tinymce": "^5.10.9", "vue": "^2.6.10", }问题: 就是红框处点击后没有菜单出现,下面是正常的

LabVIEW气缸摩擦力测试系统

基于LabVIEW的气缸摩擦力测试系统实现了气缸在不同工作状态下摩擦力的快速、准确测试。系统由硬件平台和软件两大部分组成,具有高自动化、精确测量和用户友好等特点,可广泛应用于精密机械和自动化领域。 ​ 项目背景: 气缸作为舵机关键部件…

在.NET 6中使用Serilog收集日志

此示例的完整详细信息:https://download.csdn.net/download/hefeng_aspnet/89998498 Serilog 是一个日志库,它提供对文件、控制台和其他几个地方的记录。它易于配置,并且具有干净且易于使用的界面。 Serilog具有无与伦比的输出目的地选择&…

使用Goland对6.5840项目进行go build出现异常

使用Goland对6.5840项目进行go build出现异常 Lab地址: https://pdos.csail.mit.edu/6.824/labs/lab-mr.html项目地址: git://g.csail.mit.edu/6.5840-golabs-2024 6.5840运行环境: mac系统 goland git clone git://g.csail.mit.edu/6.5840-golabs-2024 6.5840 cd 6.5840/src…

【Spring Cloud】实现微服务调用的负载均衡

文章目录 什么是负载均衡自定义实现负载均衡启动shop-product微服务通过nacos查看微服务的启动情况自定义实现负载均衡 基于Ribbon实现负载均衡添加注解修改服务调用的方法Ribbon支持的负载均衡策略通过修改配置来调整 Ribbon 的负载均衡策略通过注入Bean来调整 Ribbon 的负载均…

AUTOSAR AP和CP的安全要求规范(Safety Req)详细解读

一、规范的编制的背景原因 编制该规范的原因 确保系统安全性和可靠性 随着汽车电子系统日益复杂,功能不断增加,对安全性和可靠性的要求也越来越高。该规范为AUTOSAR平台在安全执行、配置、更新、信息交换、数据处理等多方面制定了明确要求,…

Robot Framework的 if/else语句

一. 简介 在Robot Framework中,可以使用多个 IF/ELSE 条件来实现不同的测试逻辑。IF 语句用于在满足条件时执行特定的测试步骤,而 ELSE语句则用于在条件不满足时执行其他步骤。 本文来学习 Robot Framework 框架中 if/else 语句的语法以及使用。 二. …

Jenkins 的HTTP Request 插件为什么不能配置Basic认证了

本篇遇到的问题 还是因为Jenkins需要及其所在的OS需要升级,升级策略是在一台新服务器上安装和配置最新版本的Jenkins, 当前的最新版本是: 2.479.2 LTS。 如果需要这个版本的话可以在官方站点下载,也可以到如下地址下载&#xff1…

【Linux课程学习】: 进程地址空间,小故事理解虚拟地址,野指针

🎁个人主页:我们的五年 🔍系列专栏:Linux课程学习 🌷追光的人,终会万丈光芒 🎉欢迎大家点赞👍评论📝收藏⭐文章 Linux学习笔记: https://blog.csdn.net/…

位运算符I^~

&运算:上下相等才是1,有一个不同就是0 |运算:只要有1返回的就是1 ^(亦或)运算:上下不同是1,相同是0 ~运算:非运算,与数据全相反 cpu核心运算原理,四种cpu底层小电路 例&#xf…

16-01、JVM系列之:内存与垃圾回收篇(一)

JVM系列之:内存与垃圾回收篇(一) ##本篇内容概述: 1、JVM结构 2、类加载子系统 3、运行时数据区之:PC寄存器、Java栈、本地方法栈一、JVM与JAVA体系结构 JAVA虚拟机与JAVA语言并没有必然的联系,它只是与特…

美团一面,有点难度

前几天分享过一篇训练营的朋友在阿里的一面面经,挺简单的她也是很轻松的过了,感兴趣的可以看一下我之前发的文章。 今天要分享的还是她的面经,美团的一面,感觉比阿里的难一些,各位观众老爷你怎么看? 自我介…

spring6:2入门

spring6:2入门 目录 spring6:2入门2.1、环境要求2.2、构建模块2.3、程序开发2.3.1、引入依赖2.3.2、创建java类2.3.3、创建配置文件2.3.4、创建测试类测试2.3.5、运行测试程序 2.4、程序分析2.5、启用Log4j2日志框架2.5.1、Log4j2日志概述2.5.2、引入Log…

03、Node.js安装及环境配置

1.下载node.js 下载地址:Node.js 2.安装 2.1 自定义安装路径(可以选择默认) 下图根据本身的需要进行,我选择了默认Node.js runtime,然后Next: Node.js runtime :表示运行环境 npm package mana…

容器镜像仓库

文章目录 1、docker hub1_注册2_登录3_创建容器镜像仓库4_在本地登录Docker Hub5_上传容器镜像6_下载容器镜像 2、harbor1_获取 docker compose二进制文件2_获取harbor安装文件3_获取TLS文件4_修改配置文件5_执行预备脚本6_执行安装脚本7_验证运行情况8_访问harborUI界面9_harb…

在paddle中安装python-bidi出错

翻看网上解决方式,是由于系统中缺少 Rust 及其包管理器 Cargo。python-bidi 依赖 Rust 来编译其扩展,如果没有安装 Rust 和 Cargo,安装过程将无法继续。 解决方式 curl --proto https --tlsv1.2 -sSf https://sh.rustup.rs | sh但是我的终端…

buuctf:被嗅探的流量

解压后用wireshark查看 flag{da73d88936010da1eeeb36e945ec4b97}