Mamori.xyz:基于机器学习的区块链价值提取系统

news2024/11/25 9:01:50

Mamori.xyz 是一个基于机器学习的自动化区块链价值提取系统,其开创一种通用路径查找器,该工具可用于检测和防御潜在的未知安全风险,Mamori.xyz 也将其称为“未知的未知”,即智能合约中的零日漏洞和新出现的与区块链相关的软件问题,以更低成本、更精准的降低智能合约安全隐患。同时,Mamori.xyz 的系统还有望在 MEV、意图解决等领域深入的拓展与应用。

据悉,该项目在 7 月初获得了一笔规模为 500 万美元的种子轮融资,本轮融资由 Blockchain Capital 领投,Velocity.Capital 和 Web3.com 等知名机构也参与了对该项目的投资。

合约安全审计存在局限性

在链上世界,智能合约是链上应用的重要自动执行组件,其本质上是一种具备执行交易逻辑能力的特殊账户地址,扮演资金池的角色。而一些存在潜在漏洞的合约地址,通常会因网络攻击而引发资金安全事件。

据悉,安全审计机构 Certik 在 2023 记录了 751 起链上安全事件(损失超过 18 亿美元),其47 起安全事件归因于私钥泄露,这些损失约占上述总损失的一半左右。而其余损失则是由于技术漏洞和经济风险的利用所导致。其中技术风险是指利用代码和基础设施中的漏洞,而经济风险则是操纵协议的经济设计,通常通过多重函数调用和智能合约状态操纵来利用这些风险。其中一些典型的事件包括 Euler Finance,因合约逻辑缺陷导致 2 亿美元损失,以及 BonqDAO,因预言机操纵受损 1.2 亿美元。这些令人震惊的安全事件,被认为是链上应用、加密货币大规模采用的基本障碍。

事实上,目前主流的检测智能合约漏洞的方式包括静态分析器和动态分析器(模糊测试)。

其中静态分析器通常是使用一系列的规则和模式匹配技术来检查代码,识别不符合最佳实践或存在已知漏洞的模式。这可能会产生大量的误报(错误的警告),因为静态分析无法完全理解代码的上下文,并且对于依赖于运行时状态的漏洞,如经济风险或逻辑错误,静态分析可能不够有效。

对于动态分析器,则是指在代码实际运行时对其进行监控和分析,以检测漏洞和异常行为。
例如,Trail of Bits 开发的 Echidna 使用基于属性的测试,并需要定义合约应始终保持的精确属性。但其只能检测到在测试期间执行的代码路径,可能遗漏未被执行的代码部分。同时其需要创建和维护测试环境,定义测试用例,这可能需要大量的时间和资源。

图为 Zhang 等人在 2023 年揭露智能合约中可利用的漏洞,来源:mamori.xyz 白皮书

所以整体而言,现有的审计工具和方法,通常是基于历史数据,无法满足快速创新和涉及数十亿美元的行业所需的预防性安全需求。

加密行业为什么需要 Mamori.xyz?

Mamori.xyz 是一个基于机器学习的自动化区块链价值提取系统,其采用了一种支持机器学习的路径查找器(ML-enabled Pathfinder)方案,是一种自动化的价值提取系统,旨在应对 Web3 安全领域中的可扩展性、自动化、漏洞检测的相关性和有效性等挑战,并应用跨学科技术,防范“未知的未知”漏洞。

在这里插入图片描述

事实上,现有的技术,包括 ML 模型和静态分析器,已经逐步覆盖了“已知的未知”区域,并试图消除反复出现的漏洞。然而,在 Mamori.xyz 前仍旧没有单一算法能够完美覆盖所有类型的经济漏洞。Mamori.xyz 正在利用多样化的技术,保护系统免受“未知的未知”漏洞的威胁,为智能合约领域的创新特性提供一个促进环境。

Mamori.xyz 目前利用算法解析技术建立智能合约序列,采用可重复的状态计算技术,并融入创新和可定制的算法反馈机制,以改善智能合约安全领域的空白、现有技术的局限性,推动智能合约审计的新标准。

凭借其创新的框架,改进了许多细节,包括:

一种高级的状态计算结构。
通过算法解析实现减少寻找有效函数的设置成本。
一种创新的跨学科反馈机制和序列初始化。
一种可定制的特性,作为 MEV 搜索器。

Mamori.xyz 的技术特点

算法解析方案:

Mamori.xyz 的算法解析技术旨在通过深入分析智能合约的执行路径和状态转换,发现潜在的技术和经济漏洞。Mamori.xyz 首先通过识别和设置智能合约中功能调用的顺序,构建可能的执行路径图。这些路径图用于优先处理实际操作中的漏洞检测。该过程能够确保合约的各个功能调用序列都能被准确解析和测试,从而发现潜在的风险。

可复现的状态计算:

可复现的状态计算技术是 Mamori.xyz 漏洞检测能力的核心之一。这项技术通过使用高效的状态性模糊测试方法,确保智能合约在各种状态下的行为都能被准确地测试和验证。Mamori.xyz 利用 Rust 实现的 EVM 环境(revm),提供了一个灵活的执行平台,该平台允许在不同状态下执行智能合约功能,同时保持计算的高效性和精确性。

为了实现可复现的状态计算,Mamori.xyz 采用了临时数据库技术,在内存中运行测试,只保留必要的键值对。这不仅减少了内存使用量,还显著提高了测试速度。此外,Mamori.xyz 的执行环境被优化为支持并行执行和异步 I/O,从而进一步增强了其测试效率。

图源:mamori.xyz 白皮书

创新的可定制反馈机制:

可定制反馈机制通过跨学科的技术融合,提供了一个高度灵活和可定制的反馈系统,以提高漏洞检测的准确性和效率。该方案的核心在于,它不仅关注技术漏洞,还特别关注经济风险,通过全面的多功能调用检测来识别潜在的威胁。

该反馈机制通过持续监控智能合约在不同状态下的表现,及时识别并反馈潜在的漏洞和风险。这种动态监控允许系统根据检测到的风险调整测试路径,优化搜索路径,减少假阴性搜索的发生。Mamori.xyz 还利用这种机制支持 MEV(矿工可提取价值)搜索器的功能,最大化其利用率,从而覆盖更多的潜在风险场景。

此外,这一机制的定制化功能允许用户根据特定需求调整算法参数和检测策略,从而提高系统的灵活性和适应性。通过这种方式,Mamori.xyz 不仅能够在合约上线前进行全面的漏洞检测,还可以在合约运行期间持续进行监控和更新,提供持续的安全保障。创新的可定制反馈机制使得 Mamori.xyz 在应对复杂和多变的智能合约环境中,能够更快速、准确地识别和修复漏洞,提升了整体安全性。

经济风险检测:

Mamori.xyz 的经济风险检测机制是其智能合约安全审计的一大特色,旨在识别和防范由于经济漏洞引发的潜在威胁。经济风险检测的核心在于多功能调用序列的综合检测算法,该算法不仅针对单一功能的技术漏洞,还关注由于多功能组合导致的复杂经济风险。

Mamori.xyz 利用其先进的算法解析技术,通过检测合约中的多功能调用序列,构建可能的执行路径图。这些路径图经过优化处理后,用于识别那些可能导致经济损失的复杂交互。特别是,Mamori.xyz 的状态性模糊测试方法,通过生成和变异测试用例,能够系统地测试合约在不同状态下的行为,从而发现隐藏的经济风险。

此外,Mamori.xyz 的创新可定制反馈机制,在检测过程中持续监控智能合约的状态变化,及时反馈潜在的经济风险。这种动态的监控和反馈系统允许实时调整测试策略,确保覆盖所有可能的风险场景。通过结合技术漏洞和经济风险的双重检测,Mamori.xyz 能够提供全面的智能合约安全审计,确保合约在复杂的经济环境中运行时的安全性和可靠性。

高效搜索算法:

Mamori.xyz 的高效搜索算法旨在提高检测速度和覆盖范围。该算法通过结合离散和连续优化技术,全面搜索智能合约的潜在漏洞。Mamori.xyz 的搜索算法包括两层优化结构:上层进行动作序列的离散优化,下层则针对每个动作的输入参数进行连续优化。

上层优化通过预筛选用户可调用函数,确定一个可能导致漏洞的功能子集,然后生成和评估这些功能的动作序列。通过这种方式,Mamori.xyz 能够有效减少需要检测的路径数量,从而加快搜索速度。在连续优化过程中,Mamori.xyz 采用粒子群优化(PSO)算法,通过模拟多个粒子在搜索空间中的移动,找到全局最优解。这种方法不仅提高了优化效率,还能够处理复杂的非凸优化问题。而在状态计算的加持下,Mamori.xyz 能够在短时间内全面检测智能合约的技术和经济风险,提供快速、准确的漏洞识别和修复方案,确保合约在复杂环境中的安全运行。

Mamori.xyz 系统的用例

零日经济漏洞检测

Mamori.xyz 针对智能合约中潜在的零日经济漏洞进行了深入的研究和优化。就像上文提到的那样,传统静态分析工具在检测经济风险方面存在局限性,因为它们往往侧重于技术风险的识别,而忽略了复杂函数调用序列中可能隐藏的经济漏洞。

Mamori.xyz 通过生成并执行一系列测试用例,模拟攻击者可能采取的行动序列,观察智能合约在不同状态下的行为变化。通过优化这些测试用例的输入参数、算法解析技术建立智能合约序列,以及利用可复现的状态计算技术,并结合创新的算法反馈机制,Mamori.xyz 有效地缩小了假阴性搜索范围,提高了对经济漏洞的检测能力,以发现隐藏在复杂交易序列中的经济漏洞,从而保护智能合约免受未知经济攻击的影响。

MEV 价值提取用例

Mamori.xyz 不仅聚焦于智能合约中的零日经济漏洞检测,还识别了传统 MEV 与经济风险之间的共性,将其视为一个同质优化问题,这也使得 Mamori.xyz 的算法能够扩展并服务于 MEV 搜索的角色,最大化其在实际应用中的效用。

Mamori.xyz 的核心优势在于其能够自动化地识别和利用智能合约中的套利机会,这些机会往往隐藏在复杂的交易序列和状态转换之中。Mamori.xyz 本身通过其先进的算法框架,能够模拟不同的市场条件和交易场景,精确计算智能合约中的潜在 MEV 机会。通过分析智能合约的状态依赖性和函数间的相互作用,生成一系列具有高潜在价值的测试用例。这些测试用例旨在探索智能合约在不同市场条件下的行为边界,揭示隐藏的套利机会,精确计算每个潜在交易序列的可提取价值。在连续的输入空间内搜索最大化 MEV 的参数组合,为市场参与者提供精确的 MEV 优化方案。

这对于矿工、交易者和其他市场参与者来说具有重要意义,因为他们可以利用这些 MEV 机会来最大化其交易收益。

跨合约审计与集成

Mamori.xyz 通过其创新的架构和算法设计,能够有效解决了跨合约审计的难题,提供了全面、深入的审计服务。

Mamori.xyz 的跨合约审计功能依赖于先进的静态分析技术,以深入解析智能合约之间的依赖关系,包括函数调用、状态变量共享等。通过构建跨合约依赖图,Mamori.xyz 能够清晰地展示不同合约之间的交互逻辑,为后续的审计测试提供基础。

基于 Mamori.xyz 的高度集成测试环境,系统能够模拟了真实的区块链网络条件,如区块高度、交易顺序和 Gas 消耗等,还支持多合约的并行执行和交互测试。通过在这个环境中部署并执行测试用例,Mamori.xyz 能够全面评估智能合约在跨合约场景下的行为表现和潜在漏洞。

Mamori.xyz 先进的优化算法来生成跨合约测试用例,能够综合考虑了合约间的依赖关系、函数调用序列以及输入参数的不同组合,以最大化漏洞暴露和经济价值的挖掘。同时,Mamori.xyz 还利用反馈机制不断优化测试用例,确保在有限的测试资源下获得最佳的审计效果。

在审计过程中,Mamori.xyz 不仅关注代码覆盖率和功能覆盖率等传统指标,还引入了状态覆盖率和输入空间覆盖率等多维度评估标准。这些指标共同构成了对智能合约跨合约交互行为的全面评估体系,帮助审计师和用户更准确地了解合约的安全状况。

值得一提的是,Mamori.xyz 的跨合约审计与集成功能还具有高度的灵活性和可扩展性。随着 DeFi 生态系统的不断发展和智能合约的持续演进,Mamori.xyz 能够快速适应新的合约类型和交互模式,确保跨合约审计功能的持续有效性和前沿性。

总结

Mamori.xyz 在解决 DeFi 领域面临的安全挑战方面现方面,正在展现出了非凡的潜力与优势。

Mamori.xyz 的 ML 体系,通过融合先进的静态分析技术、动态模拟测试环境、高级优化算法以及多维度评估体系,不仅有效覆盖了传统审计工具的盲点,更在跨合约审计与集成方面取得了突破性进展。

凭借其独特的架构设计和灵活的定制能力,正在构建智能合约的安全审计领域的全新范式。它不仅能够帮助开发者在合约部署前发现并修复潜在漏洞,还能在合约运行期间持续监控和评估其安全性能,为 DeFi 生态系统的稳定性和用户的资金安全提供了坚实的保障。

随着 DeFi 市场的不断扩张和智能合约应用的日益广泛,它不仅是智能合约安全、MEV 等诸多领域的一次重要创新,更是推动链上领域健康、可持续发展的关键力量,Mamori.xyz 的出现无疑将为整个行业注入了新的活力与信心。

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

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

相关文章

学习Python的IDE功能--(一)入门导览

项目视图是主要工具窗口之一。它包含项目目录、SDK 特定的外部库和临时文件。点击带条纹的按钮可以预览演示项目。您也可以按Alt1打开。点击以打开项目视图,展开项目目录以查看项目文件。双击以打开welcome.py。 切换到"学习"工具窗口继续学习本课次。…

vue3表格使用拖拽排序

拖拽排序 实现效果实现步骤拖拽排序功能的完整代码 实现效果 实现步骤 先安装sortable.js库使用的vue文件中引入 import Sortablejs from ‘sortablejs’在进入页面后创建sortable实例在提交后端时可获取到排序后的最新table列表数据 sortable.js文档 拖拽排序功能的完整代码 …

微服务实战系列之玩转Docker(二)

前言 上一篇,博主对Docker的背景、理念和实现路径进行了简单的阐述。作为云原生技术的核心之一,轻量级的容器Docker,受到业界追捧。因为它抛弃了笨重的OS,也不带Data,可以说,能够留下来的都是打仗的“精锐…

【瑞吉外卖 | day07】移动端菜品展示、购物车、下单

文章目录 瑞吉外卖 — day71. 导入用户地址簿相关功能代码1.1 需求分析1.2 数据模型1.3 代码开发 2. 菜品展示2.1 需求分析2.2 代码开发 3. 购物车3.1 需求分析3.2 数据模型3.3 代码开发 4. 下单4.1 需求分析4.2 数据模型4.3 代码开发 瑞吉外卖 — day7 移动端相关业务功能 —…

《绝区零》是一款什么类型的游戏,Mac电脑怎么玩《绝区零》苹果电脑玩游戏怎么样

米哈游的《绝区零》最近在网上爆火呀,不过很多人都想知道mac电脑能不能玩《绝区零》,今天麦麦就给大家介绍一下《绝区零》是一款什么样的游戏,Mac电脑怎么玩《绝区零》。 一、《绝区零》是一款什么样的游戏 《绝区零》是由上海米哈游自主研发…

求立方体面积体积以及判断(c++)

代码&#xff1a; #include<iostream> using namespace std;class Cube { public:void setL(int l){m_L l;}int getL(){return m_L;}void setW(int w){m_W w;}int getW(){return m_W;}void setH(int h){m_H h;}int getH(){return m_H;}int calculateS(){return 2 * (…

使用jenkins进行自动化部署

记录一下查看的文档和遇到的坑 什么是jenkins Jenkins是一个开源的持续集成&#xff08;CI&#xff09;和持续交付&#xff08;CD&#xff09;工具&#xff0c;主要用于自动化软件开发的各个阶段&#xff0c;包括构建、测试、部署等。 Jenkins基于Java开发&#xff0c;支持与…

【数据集处理工具】将COCO格式数据集的val.json与tett.json文件合并为一个json

合并COCO数据集JSON文件的Python脚本 1、目的2、功能概述3、使用方法4、注意事项5、 代码部分 1、目的 此Python脚本旨在帮助用户合并多个COCO格式的数据集JSON文件&#xff0c;特别适用于将验证集和测试集的标注数据整合到单一文件中。 该脚本假设各个数据集的类别信息&…

OpenCV中的GrabCut图像分割算法的使用

操作系统&#xff1a;ubuntu22.04 OpenCV版本&#xff1a;OpenCV4.9 IDE:Visual Studio Code 编程语言&#xff1a;C11 功能描述 GrabCut 算法是一种用于图像分割的技术&#xff0c;由 Carsten Rother、Vladimir Kolmogorov 和 Andrew Blake 在 2004 年 SIGGRAPH 会议的论文《…

Pr 2024下载安装,Adobe Premiere pro2024剪辑软件下载合集获取

Premiere Pro 2023中文版简称Pr&#xff0c;pr2023是一款视频编辑软件。 pr 2023不仅可以帮助用户对各种视频进行剪辑、旋转、分割、合并、字幕添加、背景音乐等基础的处理&#xff0c;还能帮助用户进行视频颜色校正、颜色分级、稳定镜头、调整层、更改片段的持续时间和速度、效…

软件架构之基于中间件开发

软件架构之基于中间件开发 第 15 章&#xff1a;基于中间件的开发15.1 中间件技术15.1.1 中间件的概念15.1.2 中间件的分类 15.1.3 中间件产品介绍15.2 应用服务器技术15.2.1 应用服务器的概念15.2.2 主要的应用服务器15.3.1 表示层15.3.2 应用服务层 15.4 .NET15.4.1 .NET 平台…

LeetCode热题100刷题16:74. 搜索二维矩阵、33. 搜索旋转排序数组、153. 寻找旋转排序数组中的最小值、98. 验证二叉搜索树

74. 搜索二维矩阵 class Solution { public:bool searchMatrix(vector<vector<int>>& matrix, int target) {int row matrix.size();int col matrix[0].size();for(int i0;i<row;i) {//先排除一下不存在的情况if(i>0&&matrix[i][0]>target…

自动驾驶车道线检测系列—3D-LaneNet: End-to-End 3D Multiple Lane Detection

文章目录 1. 摘要概述2. 背景介绍3. 方法3.1 俯视图投影3.2 网络结构3.2.1 投影变换层3.2.2 投影变换层3.2.3 道路投影预测分支 3.3 车道预测头3.4 训练和真实值关联 4. 实验4.1 合成 3D 车道数据集4.2 真实世界 3D 车道数据集4.3 评估结果4.4 评估图像仅车道检测 5. 总结和讨论…

技能 | postman接口测试工具安装及使用

哈喽小伙伴们大家好!今天来给大家分享一款轻量级,高效好用的接口测试工具-postman. Postman是一个流行的API开发工具&#xff0c;主要用于测试、开发和文档化API。以下是关于Postman的介绍及其主要使用场景&#xff1a; Postman介绍&#xff1a; 1. 功能丰富的API客户端&#…

【14】Github Copilot环境搭建

环境搭建 这里以Visual Studio Code为例&#xff0c;安装好vs code&#xff0c;打开扩展侧边菜单栏&#xff0c;搜索“Github Copilot”&#xff0c;会出现如下图的两个插件&#xff0c;点击安装第一个&#xff0c;另一个会附带一起安装&#xff0c;然后弹出提示重新启动vs co…

怎么调整硬盘分区?让电脑运行更加高效!

硬盘分区是电脑存储管理的重要组成部分&#xff0c;合理的分区设置不仅能提高数据管理的效率&#xff0c;还能在一定程度上提升系统的运行性能。然而&#xff0c;随着使用需求的变化&#xff0c;我们可能需要对已有的硬盘分区进行调整。那么&#xff0c;我们该怎么调整硬盘分区…

zookeeper+kafka消息队列群集部署

消息队列(Message Queue)&#xff0c;是分布式系统中重要的组件&#xff0c;其通用的使用场景可以简单地描述为:当不需要立即获得结果&#xff0c;但是并发量又需要进行控制的时候&#xff0c;差不多就是需要使用消息队列的时候。 一、消息队列 1.什么是消息队列 消息(Messag…

Windows命令行(CMD)中,tasklist | findstr(搜索并显示包含特定字符串的进程信息)

文章目录 示例注意事项示例&#xff1a;使用 /FI 选项过滤进程 在Windows命令行&#xff08;CMD&#xff09;中&#xff0c; tasklist 命令用于显示当前运行的进程列表&#xff0c;而 findstr 命令则用于搜索字符串。当你将 tasklist 命令的输出通过管道&#xff08; |&…

支持大量边缘盒子集中管理调度的智慧物流开源了。

智慧物流视频监控平台是一款功能强大且简单易用的实时算法视频监控系统。它的愿景是最底层打通各大芯片厂商相互间的壁垒&#xff0c;省去繁琐重复的适配流程&#xff0c;实现芯片、算法、应用的全流程组合&#xff0c;从而大大减少企业级应用约95%的开发成本。用户只需在界面上…

解读|http和https的区别,谁更好用

在日常我们浏览网页时&#xff0c;有些网站会看到www前面是http&#xff0c;有些是https&#xff0c;这两种有什么区别呢&#xff1f;为什么单单多了“s”&#xff0c;会有人说这个网页会更安全些&#xff1f; HTTP&#xff08;超文本传输协议&#xff09;和HTTPS&#xff08;…