第75期 | GPTSecurity周报

图片

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

Security Papers

1. AttackQA:利用微调及开源大语言模型辅助网络安全运营的数据集的开发与应用

简介:当研究者对大语言模型(LLMs)进行微调以生成针对用户查询的回复时,在专业领域数据集上进行的检索增强生成(RAG)已显示出性能的提升。研究者在本研究中开发了一个网络安全问答(Q&A)数据集,名为 AttackQA,并利用它构建了一个基于 RAG 的问答系统,该系统是为安全运营中心的分析师设计的。该数据集包含 25335 对问答数据,同时配有相关依据以便于进行微调与评估。数据集的 80% 是在一个轻量级开源大语言模型(LLama 3 8B)的帮助下生成的,该模型在 SambaNova 系统的 SN40L 专用硬件上能以全 16 位精度每秒生成超过 1100 个词元。为确保数据集的质量,研究者对 LLama 3 70B 进行了微调,以检测并剔除低质量的问答对。在将该数据集用于 RAG 时,研究者证明了与 OpenAI 最先进的专有嵌入和大语言模型(GPT - 4o)相比,对开源嵌入和大语言模型进行微调能够产生更高的准确性。此外,研究者使用 Llama 3.1 405B 作为评判标准来评估答案的正确性,从而能够创建一个完全开源、高速的 RAG 及评估流程,并为模型准确性设立了一个基准。

链接:

https://arxiv.org/abs/2411.01073

2. AutoPT:研究者距离端到端的自动化网络渗透测试还有多远?

简介:渗透测试对于确保网络安全至关重要,它能够提前发现并修复漏洞,防止数据泄露及严重后果的发生。大语言模型(LLMs)强大的推理能力在各个领域都取得了显著进展,基于 LLM 的智能体的发展潜力有望给网络安全渗透测试行业带来革命性的变化。在这项工作中,研究者利用真实的渗透测试环境建立了一个全面的端到端渗透测试基准,以探究基于 LLM 的智能体在该领域的能力。研究者的研究结果显示,这些智能体熟悉渗透测试任务的框架,但在生成准确的指令以及执行完整流程方面仍面临局限。据此,研究者总结了当前面临的挑战,包括难以维护整个消息历史记录以及智能体容易陷入停滞状态的问题。

基于上述见解,研究者提出了一种渗透测试状态机(PSM),它利用有限状态机(FSM)方法来解决这些局限。然后,研究者引入了 AutoPT,这是一种基于由 LLMs 驱动的 PSM 原理的自动化渗透测试智能体,它利用了 LLM 固有的推理能力以及状态机的约束框架。研究者的评估结果表明,在 GPT - 4o 小型模型上,AutoPT 的表现优于基准框架 ReAct,并且在基准目标上使任务完成率从 22% 提高到了 41%。与基准框架和人工操作相比,AutoPT 还进一步降低了时间和经济成本。因此,研究者的 AutoPT 推动了自动化渗透测试的发展,对学术界和工业界都产生了重大影响。

链接:

https://arxiv.org/abs/2411.01236

3. 超越静态工具:评估大语言模型在检测密码误用方面的应用

简介:大语言模型(LLMs)在软件开发中的应用正在迅速增长,开发人员越来越依赖这些模型来提供编码辅助,包括执行对安全至关重要的任务。研究者的工作对用于检测加密应用程序编程接口(API)误用的传统静态分析工具(CryptoGuard、CogniCrypt 和 Snyk Code)与大语言模型(GPT 和 Gemini)进行了全面比较。研究者利用基准数据集(OWASP、CryptoAPI 和 MASC)来评估每种工具在识别加密误用方面的有效性。研究者的研究结果表明,GPT 4-o-mini 在 CryptoAPI 和 MASC 数据集上的表现优于当前最先进的静态分析工具,但在 OWASP 数据集上则表现欠佳。此外,研究者还评估了大语言模型回复的质量,以确定哪些模型能够提供可操作且准确的建议,从而让开发人员了解它们在安全编码方面的实际效用。这项研究凸显了静态分析与大语言模型驱动方法相比各自的优势和局限性,为人工智能在推动软件安全实践发展过程中不断演变的角色提供了宝贵见解。

链接:

https://arxiv.org/abs/2411.09772

4. FirmRCA:面向 ARM 嵌入式固件的后模糊测试分析,并实现高效的基于事件的故障定位

简介:虽然模糊测试已证明其在揭示嵌入式固件内漏洞方面的有效性,但发现导致崩溃的测试用例仅仅是提升这些关键系统安全性的第一步。后续旨在精确识别所观察到的崩溃根本原因的故障定位流程,是模糊测试后一项至关重要却又耗时的工作。遗憾的是,针对嵌入式固件崩溃的自动化根本原因分析仍是一个尚未充分探索的领域,从以下几个方面来看颇具挑战性:(1)针对嵌入式固件的模糊测试活动缺乏足够的调试机制,这使得自动提取用于分析的关键运行时信息变得困难;(2)嵌入式固件固有的原始二进制特性往往会导致过度污染且嘈杂的可疑指令,这为分析人员手动调查根本原因和修复潜在漏洞提供了有限的指导。

为应对这些挑战,研究者设计并实现了 FirmRCA,这是一个专门针对嵌入式固件定制的实用故障定位框架。FirmRCA 引入了一种基于事件的足迹收集方法,以辅助并显著加快逆向执行。接下来,为解决复杂的内存别名问题,FirmRCA 提出了一种基于历史驱动的方法,通过执行轨迹跟踪数据传播,从而能够精确识别深层次的崩溃源头。最后,FirmRCA 提出了一种新颖的策略来突出显示与根本原因相关的关键指令,为最终的调查提供实用指导。

研究者使用合成目标和实际目标对 FirmRCA 进行了评估,其中包括来自 17 个固件镜像的 41 个导致崩溃的测试用例。结果显示,FirmRCA 能够有效地(成功率达 92.7%)在前 10 条指令内识别出导致测试用例崩溃的根本原因。

链接:

https://arxiv.org/abs/2410.18483

5. Pipe-Cleaner:使用安全策略的灵活模糊测试

简介:模糊测试在发现某些软件缺陷类型方面卓有成效,但在协助开发人员处理这些发现时却差强人意。传统基于崩溃的模糊测试工具,因缺乏足够的故障信息,既无法确定故障根本原因,也不能区分新崩溃和已知崩溃,这使得开发人员不得不手动处理冗长且重复的崩溃报告清单。而且,传统模糊测试工具通常无法配置,难以检测开发人员关注的各类漏洞,因为其中许多漏洞不易引发崩溃。

为突破这些局限,研究人员提出了 “Pipe - Cleaner” 系统。该系统运用改进的模糊测试方法来检测和分析 C 代码漏洞。“Pipe - Cleaner” 依据的是开发人员设计的灵活安全策略,这些策略由基于标签的运行时引用监视器执行,而此监视器与一个能感知策略的模糊测试工具相互通信。开发人员可以定制模糊测试工具的故障检测类型和故障报告的详细程度。增加细节有助于模糊测试工具区分新漏洞、剔除重复漏洞,还能提升漏洞分类结果的清晰度。研究人员通过几个与堆相关的安全漏洞展示了该方法的潜力,这些漏洞包括经典的内存安全违规以及两种传统模糊测试工具无法触及的新型非崩溃类漏洞,即遗留秘密泄露和堆地址泄漏。

链接:

https://arxiv.org/abs/2411.00261

6. 利用人工智能修复 OSS-Fuzz 中的安全漏洞

简介:关键的开源软件系统会以长时间的模糊测试活动的形式接受大量验证。模糊测试活动通常会在程序输入的范围进行有偏向性的随机搜索,以找到会使软件系统崩溃的输入。一般来说,这种模糊测试对于提高软件系统的安全性很有用,因为即使是闭源软件也可能会使用开源组件。因此,对开源软件进行测试至关重要。

目前,OSS-Fuzz 是对开源系统进行持续验证的最重要且应用最广泛的基础设施。遗憾的是,尽管 OSS-Fuzz 已经在 1000 多个软件项目中发现了 1 万多个漏洞,但检测到的漏洞可能仍未得到修补,因为在实际操作中,漏洞修复通常是手动进行的。

在这项工作中,研究者依靠大语言模型(LLM)智能体在自主程序改进(包括漏洞修复)方面的最新进展。研究者对著名的 AutoCodeRover 智能体进行定制,用于修复安全漏洞。这是因为像 AutoCodeRover 这样的 LLM 智能体是通过代码搜索从问题描述中修复漏洞的。而对于安全补丁修复,研究者依靠对漏洞利用输入的测试执行来提取与修复相关的代码元素。

研究者在 OSS-Fuzz 漏洞数据方面的经验表明,与控制流固定的无智能体方法等途径相比,LLM 智能体的自主性对于成功进行安全补丁修复很有用。更重要的是,研究者的研究结果显示,研究者不能通过补丁与参考代码的代码相似度来衡量补丁的质量(就像 VulMaster 中使用的 CodeBLEU 分数那样),因为即使 CodeBLEU 分数很高的补丁在给定的漏洞利用输入情况下仍然无法通过测试。研究者的研究结果表明,安全补丁的正确性需要考虑诸如测试执行等动态属性,而不是依赖标准的文本 / 代码相似度指标。

链接:

https://arxiv.org/abs/2411.03346

7. MultiKG:用于高质量攻击技术知识图谱表示的多源威胁情报聚合

简介:攻击技术知识图谱的构建目的在于把各类攻击知识转变成结构化表示形式,从而更高效地为攻击流程建模。当前方法大多依赖文本数据,像网络威胁情报(CTI)报告,这些数据通常是粗粒度且非结构化的,这就使得构建的知识图谱存在不完整、不准确的问题。为克服这些问题,研究人员把审计日志、静态代码分析与 CTI 报告相结合,拓展了攻击知识来源,为构建攻击技术知识图谱提供了更细粒度的数据。研究人员提出了 MultiKG 这一完全自动化的框架,它能整合多种威胁知识来源。MultiKG 分别对 CTI 报告、动态日志和静态代码的数据进行处理,之后将它们合并到一个统一的攻击知识图谱中。通过系统设计,并借助大语言模型(LLM),MultiKG 实现了对这些来源的攻击图谱进行自动化分析、构建与合并,生成了一个细粒度、多源的攻击知识图谱。

研究人员实现了 MultiKG,并使用 CTI 报告中的 1015 种真实攻击技术和 9006 条攻击情报条目对其进行评估。结果显示,MultiKG 能够有效地从不同来源提取攻击知识图谱,并将它们聚合成准确、全面的表示形式。通过案例研究,研究人员证实了该方法能直接对攻击重构和检测等安全任务产生益处。

链接:

https://arxiv.org/abs/2411.08359

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

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

vue2-基础核心

vue简介 动态构建用户界面的渐进式 JavaScript 框架 vue的特点: 遵循MVVM模式 采用组件化模式,提高代码复用率,让代码更好维护 声明式编码,无需直接操作DOM,提高开发效率,编码简洁、体积小,运行效率高 本…

移动应用开发:使用Android Studio 实现登录页与注册页跳转

文章目录 前期一,添加UI控件触发跳转二,编写LoginActivity活动代码三,运行程序查看效果 前期 需创建两个活动页面,登录页和注册页,可参考:《Android Studio实现简易登录页》《Android Studio实现简易注册页…

C++小白实习日记——Day 5 gitee怎么删文件,测试文件怎么写循环

昨晚一直内耗,一个程序写了三天写不出来,主要是耗时太多了,老板一直不满意。想在VScode上跑一下,昨晚一直报错。今天来公司重新搞了一下, 主要工作有: 1,读取当前时间用tscns 2,输…

ssm143校园一卡通系统软件的设计与实现+jsp(论文+源码)_kaic

毕 业 设 计(论 文) 题目:校园一卡通系统设计与实现 摘 要 现代经济快节奏发展以及不断完善升级的信息化技术,让传统数据信息的管理升级为软件存储,归纳,集中处理数据信息的管理方式。本校园一卡通系统就是…

[Go]-sync.map使用详解

sync.Map是 Go 语言中在并发环境下使用的安全映射类型。 一、为什么需要sync.Map 在 Go 语言中,普通的map不是并发安全的。当多个 goroutine 同时读写一个普通map时,可能会导致程序出现未定义的行为,比如数据竞争、程序崩溃等。而sync.Map则…

迁移学习理论与应用

迁移学习(Transfer Learning)是一种机器学习技术,旨在将一个任务(源任务)上学到的知识迁移到另一个相关但不完全相同的任务(目标任务)上,从而提高目标任务的学习效果。这种方法的核心…

孙玲:从流水线工人到谷歌程序员

这是《开发者说》的第24期,本期我们邀请的开发者是孙玲,她出生于湖南娄底一个贫穷的农村家庭,2009年高考落榜,她去了深圳一家电子厂,在流水线上给电池喷码,每天12个小时轮班,月薪2300&#xff0…

深度解析FastDFS:构建高效分布式文件存储的实战指南(上)

文章目录 一、FastDFS简介1.1 概述1.2 特性 二、FastDFS原理架构2.1 FastDFS角色2.2 存储策略2.3 上传过程2.4 文件同步2.5 下载过程 三、FastDFS适用场景四、同类中间件对比4.1 FastDFS和集中存储方式对比4.2 FastDFS与其他文件系统的对比 五、FastDFS部署5.1 单机部署5.1.1 使…

Argo workflow 拉取git 并使用pvc共享文件

文章目录 拉取 Git 仓库并读取文件使用 Kubernetes Persistent Volumes(通过 volumeClaimTemplates)以及任务之间如何共享数据 拉取 Git 仓库并读取文件 在 Argo Workflows 中,如果你想要一个任务拉取 Git 仓库中的文件,另一个任…

Xilinx 7 系列 FPGA的各引脚外围电路接法

Xilinx 7系列FPGA的外围电路接法涉及到多个方面,包括电源引脚、时钟输入引脚、FPGA配置引脚、JTAG调试引脚,以及其他辅助引脚。 本文大部分内容由ug475, Product Specification——7 Series FPGAs Packaging and Pinout《7系列FPGA的封装与引脚》整理汇…

CDH大数据平台搭建

各大开源以及商用厂商的大数据产品汇总: https://zhuanlan.zhihu.com/p/675011462 Ambari 界面: 一、安装一个新的虚拟机 配置要求:8核,10G内存,最好是200G 修改yum源: 修改阿里云的镜像文件&#xff1…

计算机毕业设计 | SpringBoot+vue汽车资讯网站 汽车购买咨询管理系统(附源码+论文)

1,绪论 1.1 研究背景 随着计算机技术的发展以及计算机网络的逐渐普及,互联网成为人们查找信息的重要场所,二十一世纪是信息的时代,所以信息的管理显得特别重要。因此,使用计算机来管理汽车资讯网站的相关信息成为必然…

24.11.19 web框架

2.2配置环境变量 2.3maven命令测试 mvn -v 测试maven查看版本 2.4maven仓库配置 配置远程仓库地址 配置本地仓库 2.5idea中配置maven 2.6通过配置idea 创建maven项目 创建项目时 构建系统 选到maven 初次创建项目时 会把maven的基础依赖库(jar包) 下载到本地仓库 需要等待一…

【Golang】——Gin 框架中的模板渲染详解

Gin 框架支持动态网页开发,能够通过模板渲染结合数据生成动态页面。在这篇文章中,我们将一步步学习如何在 Gin 框架中配置模板、渲染动态数据,并结合静态资源文件创建一个功能完整的动态网站。 文章目录 1. 什么是模板渲染?1.1 概…

【list的模拟实现】—— 我与C++的模拟实现(十四)

一、list节点 ​ list是一个双向循环带头的链表&#xff0c;所以链表节点结构如下&#xff1a; template<class T>struct ListNode{T val;ListNode* next;ListNode* prve;ListNode(int x){val x;next prve this;}};二、list迭代器 2.1、list迭代器与vector迭代器区别…

QString 转 char*问题与方法(const_cast的使用问题)

1、背景:今天有QString的变量&#xff0c;将QString的值传递给void func(char * ptr)&#xff0c;于是就有了类似下面这一段离谱的代码 当时我还在想为什么var的值为空了&#xff0c;为什么呢。 2、原因:就是因为右边函数返回的是一个临时指针对象&#xff0c;给到了右边&…

每天五分钟机器学习:支持向量机算法数学基础之核函数

本文重点 从现在开始,我们将开启支持向量机算法的学习,不过在学习支持向量机算法之前,我们先来学习一些支持向量机所依赖的数学知识,这会帮助我们更加深刻的理解支持向量机算法,本文我们先来学习核函数。 定义 核函数(Kernel Function)是一种在支持向量机(SVM)、高…

云原生之运维监控实践-使用Prometheus与Grafana实现对Nginx和Nacos服务的监测

背景 如果你要为应用程序构建规范或用户故事&#xff0c;那么务必先把应用程序每个组件的监控指标考虑进来&#xff0c;千万不要等到项目结束或部署之前再做这件事情。——《Prometheus监控实战》 去年写了一篇在Docker环境下部署若依微服务ruoyi-cloud项目的文章&#xff0c;当…

MiniMates:一款轻量级的图片数字人驱动框架

随着数字人技术的不断发展,越来越多的应用场景开始涌现,从虚拟主播到AI伴侣,数字人的应用范围越来越广。然而,现有的数字人驱动框架往往存在性能瓶颈、依赖性强、定制难度高等问题。近期,我发现了一款名为 MiniMates 的轻量级图片数字人驱动框架,它在性能、个性化定制和终…

SpringBoot3_Web开发

4. 内容协商 一套系统适配多端数据返回 移动端&#xff1a;返回JSON数据第三方&#xff1a;返回XMLIoT&#xff1a;返回自定义协议数据 1. 默认规则 1. SpringBoot 多端内容适配 基于请求头内容协商 【默认】 客户端向服务端发送请求&#xff0c;携带HTTP标准的 Accept 请求…