【论文速读】| LLM4FUZZ:利用大语言模型指导智能合约的模糊测试

news2024/9/28 3:20:58

图片

本次分享论文:LLM4FUZZ: Guided Fuzzing of Smart Contracts with Large Language Models

基本信息

原文作者:Chaofan Shou, Jing Liu, Doudou Lu, Koushik Sen

作者单位:加州大学伯克利分校,加州大学欧文分校,Fuzzland公司

关键词:区块链,智能合约,Fuzzing,大语言模型

原文链接:

https://arxiv.org/pdf/2401.11108.pdf

开源代码:暂无

论文简介

随着区块链平台的迅速发展,智能合约在数字资产管理中的应用逐渐增多,同时也暴露出许多安全漏洞。本文介绍了一种名为“LLM4FUZZ”的创新方法,该方法利用大语言模型(LLMs)来智能地指导和优先处理模糊测试活动,从而优化智能合约的自动化安全分析。

传统的Fuzzing方法在探索庞大的状态空间时效率较低,但LLM4FUZZ通过使用LLM生成的指标来引导Fuzz工具,专注于那些更可能触发漏洞的代码区域和输入序列,从而显著提高测试的效率和覆盖率。

引言

随着区块链平台和去中心化应用的快速发展,管理数十亿美元数字资产的智能合约代码量急剧增加。不幸地,这些关键代码中的漏洞经常被黑客利用,导致了重大资产损失。因此,在部署前全面分析智能合约的安全性至关重要。

传统的人工审计大量的智能合约代码库容易出错,并且经常忽视边缘情况中的漏洞。为了克服这些限制,行业越来越倾向于使用自动化的方法,如测试、动态分析和形式验证。因此,开发能够有效指导Fuzz测试并提高其探索效率和安全性的新技术,对保障区块链生态系统的安全至关重要。

研究背景

区块链技术的快速进展使得智能合约成为管理大量数字资产的关键工具。尽管如此,智能合约中频繁出现的安全漏洞已导致巨大的资产损失。传统的安全审计方法主要依靠手动检查,而这种方法往往忽略了边缘案例中的漏洞。因此,业界已开始采用如动态分析和形式验证等自动化方法以提升审计效率。然而,目前的自动化Fuzz测试技术在理解代码的语义和状态依赖性方面表现不佳,难以高效地探索代码的复杂状态空间。因此,迫切需要开发更先进的解决方案以提高智能合约的安全测试效率。

相关工作

本论文综述了现有的智能合约Fuzzing技术,并指出它们主要依赖静态分析或动态执行跟踪来自动化地生成测试用例。然而,这些技术常局限于现有代码的API用法,难以探索新功能或深入挖掘潜在的复杂用例。

论文还讨论了大语言模型在程序代码生成中的应用,展示了这些模型为智能合约安全测试带来的新技术可能性。提出的LLM4FUZZ方法结合了大语言模型的分析能力与Fuzzing的动态测试优势,旨在显著提升智能合约测试的质量与效率。

实验设计

LLM4FUZZ首先把智能合约代码转换为抽象语法树(AST),进而执行深入的静态分析。接着,该系统利用大语言模型(LLMs)对代码进行分析,生成有关代码复杂度和潜在漏洞的度量指标。这些指标随后被用来指导Fuzz测试工具,优先针对那些更有可能触发漏洞的代码区域和输入序列进行测试。采用这种方法的LLM4FUZZ显著提升了测试的目标性和效率,有效减少了重复和无效的测试努力,加快了关键漏洞的发现和修复。这个流程的自动化和智能化显著增强了智能合约的安全验证过程。

实现方法

LLM4FUZZ实施了一个精细化的流程以优化智能合约的Fuzz测试。首先,该系统将智能合约代码转化为抽象语法树(AST),并执行静态分析来识别基本的代码特征。然后,通过大语言模型(LLMs)对这些特征进行详尽分析,产生关于代码区域的复杂性和潜在漏洞的度量指标。这些指标随后整合入Fuzzer的调度系统,以指导Fuzz测试工具优先针对那些潜在风险较高的区域。LLM4FUZZ通过这种方式显著提升了智能合约Fuzzing的效率和精确度,大幅减少了无目标探索的成本。

图片

研究评估

LLM4FUZZ已在多个去中心化金融(DeFi)项目中进行实际评估,并与传统Fuzzing技术相比表现出显著的性能提升。该技术在提升测试覆盖率、减少漏洞发现时间以及增强漏洞检测能力方面显示出优异的成效。

此外,在测试过程中,LLM4FUZZ成功识别了多个之前审计未发现的严重漏洞,这些漏洞涉及的潜在财务损失超过24万美元。这一成绩证明了LLM4FUZZ通过大语言模型优化智能合约Fuzzing流程的有效性,并凸显了其在智能合约安全领域的巨大应用潜力。

图片

论文结论

LLM4FUZZ通过结合大语言模型的深度语义分析功能,极大地提高了智能合约Fuzz测试的效率和成效。此方法智能地引导Fuzz测试工具专注于高风险的代码区域和输入序列,不仅提升了测试覆盖率,也在更短时间内识别出更多漏洞。随着区块链技术的广泛应用,LLM4FUZZ为智能合约的安全性验证提供了一种高效的新途径,有助于降低由漏洞引起的财务损失,并推动区块链生态系统的健康发展。

原作者:论文解读智能体

校对:小椰风

图片

图片

图片

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

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

相关文章

5.10.1 Pre-Trained Image Processing Transformer

研究了低级计算机视觉任务(例如去噪、超分辨率和去雨)并开发了一种新的预训练模型,即图像处理变压器(IPT)。利用著名的 ImageNet 基准来生成大量损坏的图像对。 IPT 模型是在这些具有多头和多尾的图像上进行训练的。此…

解决离线服务器无法加载HuggingFaceEmbeddings向量化模型的问题

由于服务器是离线的,因此我先在本地到huggingface官网下载模型text2vec,然后上传到服务器上运行,报错: (MaxRetryError(HTTPSConnectionPool(host\huggingface.co\, port443): Max retries exceeded with url: /api/models/senten…

matlab绘制时间序列图,横坐标轴如何标注为月-日

Excel表格中有类似于如下 年月日对应的数据 导入 matlab中,为数值矩阵;了解该表格中的时间跨度为从2021年1月2日至2021年12月31日,中间没有缺失,绘图代码: % clear; timespan1[20210102 20211231]; datenn1datenum(da…

PDF批量编辑:PDF转HTML批量操作技巧,提升文档格式转换效率

在数字化办公日益普及的今天,PDF(Portable Document Format)作为一种跨平台的文件格式,广泛应用于各种文档的存储和传输。然而,PDF文件的不可编辑性使得在某些情况下,我们需要将其转换为HTML格式以便更好地…

Win10鼠标右键新增软件快速打开项

1、cmd 运行 regedit 2、找到该位置的shell文件夹 3、在shell文件夹下创建需要添加的软件名的文件夹,并修改相关信息 4、新建子文件夹command,并修改相关信息 5、效果

luceda ipkiss教程 70:合并GDS版图

通过代码拼版: 所有代码如下: from si_fab import all as pdk from ipkiss3 import all as i3class Design1(i3.GDSCell):def _default_filename(self):return "Ring_Test.gds"def _default_name(self):return "Design1"class Des…

安卓实现视频录制与显示和翻转摄像头

权限&#xff1a; <!-- 相机权限 --> <uses-featureandroid:name"android.hardware.camera"android:required"false" /> <uses-permission android:name"android.permission.CAMERA" /><!-- 录音权限&#xff08;包括麦克…

融资融券概念和操纵流程,案例解析

融资融券是一种金融工具&#xff0c;它允许投资者在证券市场上进行杠杆交易。简单来说&#xff0c;融资就是借钱买股票&#xff0c;融券就是借股票卖出。这种交易方式可以帮助投资者在短期内获得更高的收益&#xff0c;但同时也伴随着较高的风险。 案例背景&#xff1a; 假设…

云南区块链商户平台:抓包技术自制开票工具(二)

前言 上节我们分析了云南区块链商户平台的登录接口以及数据加密、解密&#xff0c;本节我们将构建一个项目框架&#xff0c;将大致的雏形制作出来 说明 由于我们使用开票软件都是在 云南区块链商户平台上操作&#xff0c;如果再开发电脑端就显得没必要&#xff0c;思考良久&…

百度公关一号位翻车的本质是,“精英主义”已经没有市场了 | 最新快讯

“精英主义”没市场了。 文&#xff5c;商隐社&#xff0c;作者 | 浩然 01 这几天商业圈持续发酵的热点新闻就是百度“公关一号位”璩静的“短视频翻车事件”。 一个名为“我是璩&#xff08;q&#xff09;静”&#xff0c;在自我介绍中标注了“百度副总裁”“公关一号位”“…

如何在Android手机上恢复已删除的视频?

有时&#xff0c;由于不同的原因&#xff0c;可能会发生意外的数据丢失灾难。 那么如何在Android手机内存或没有计算机的情况下恢复已删除的视频呢&#xff1f;本文将给你一个答案。 如何在Android上恢复已删除的视频&#xff1f; 不要惊慌&#xff01;您可以在Android手机上恢…

苹果M4芯片:推动AI时代的革新力量

随着科技的飞速发展&#xff0c;苹果公司一直以其创新精神引领着行业潮流。其中&#xff0c;M4芯片的推出无疑是苹果在人工智能领域迈出的重要一步。这款专为机器学习和AI计算而设计的芯片&#xff0c;不仅在新款iPad Pro等消费电子产品上亮相&#xff0c;更是预示着苹果即将开…

机器学习(四) ----------逻辑回归

目录 1 概述 2 极大似然估计 3 逻辑回归核心思想 3.1 对数似然损失&#xff08;Log-likelihood Loss&#xff09; 4 分类问题的评估方法 4.1 混淆矩阵&#xff08;Confusion Matrix&#xff09;&#xff1a; 4.2 准确率&#xff08;Accuracy&#xff09; 4.3 精确率&…

文本三剑客grep与正则表达式、元字符

正则表达式 正则表达式又称为正规表达式、常规表达式、在代码中常简写为regex、regex或RE。正则表达式是使用单个字符串来描述、匹配一系列符合某个句法规则的字符串&#xff0c;简单来说&#xff0c;是一种匹配字符串的方法&#xff0c;通过一些特殊符号&#xff0c;实现快速查…

AcwingWeb应用课学习笔记

VSCode自动格式化 选中Format On Save不起作用 在设置中搜索default formatter&#xff0c;修改成Prettier-Code formatter meta标签 HTML 元素表示那些不能由其它 HTML 元相关&#xff08;meta-related&#xff09;元素&#xff08;(、,

全套停车场管理系统报价多少钱?停车场管理系统由哪些设备组成?

随着城市化进程的加快&#xff0c;汽车保有量的不断攀升&#xff0c;停车场的管理和运营成为城市基础设施建设的重要组成部分。一个高效、智能的停车场收费系统不仅能提升停车效率&#xff0c;还能增强用户体验&#xff0c;对城市的交通管理起到关键作用。本文将为您详细介绍全…

Linux NFS共享目录配置漏洞

Linux NFS共享目录配置漏洞 一、实验目的二、实验原理三、复现准备四、漏洞复现4.1、复现前提4.2、正式复现 一、实验目的 利用 NFS共享目录配置漏洞读取目标主机的 /etc/passwd 文件内容NFS 服务配置漏洞&#xff0c;赋予了根目录远程可写权限&#xff0c;导致 /root/.ssh/au…

TypeScript 中的类型与接口

在 TypeScript 中&#xff0c;定义类型有两种方式&#xff1a;“类型”和“接口”。 人们经常想知道该使用哪一种&#xff0c;答案并非适用于所有情况。有时一种更好&#xff0c;但在许多情况下&#xff0c;两者可以互换使用。 我们来详细了解一下类型和接口的不同点和相似点…

当时这样说就好了的笔记

系列文章目录 当时这样说就好了的笔记 文章目录 系列文章目录一、 不用好口才&#xff0c;怎么谈都讨喜的“说话金律”1、 掌握对方爱聊什么是交谈热络的第一步2、 装笨让对方当主角&#xff0c;和谁都能聊不停3、 “讲道理”谁都怕&#xff0c;坚持己见最伤感情4、 懂“聆听附…

Java——类与对象

目录 一、面向对象的初步认识 1.1 什么是面向对象 1.2 面向对象与面向过程 二、类的定义与使用 2.1 简单认识类 2.2 类的定义格式 三、类的实例化 3.1 什么是实例化 3.2 类和对象的说明 四、this引用 4.1 为什么要有this引用 4.2 什么是this引用 ​编辑 4.3 this引用…