本文总结了Ackee Blockchain Security对Lombard Finance的Liquid Bitcoin协议进行的多次安全审计。审计发现了从信息级别到高危级别的22个问题,包括未经授权的LBTC铸造、费用问题和潜在的初始化抢跑。审计团队建议Lombard Finance解决所有报告的问题,并提供了完整的审计报告链接。
Lombard Finance 的 Liquid Bitcoin 协议 允许用户以 Solana SPL Tokens(称为 LBTC
)的形式获得桥接的 Bitcoin。
Lombard Finance 聘请 Ackee Blockchain Security 在 2025 年 3 月 3 日至 3 月 18 日期间进行安全审查,总共捐赠了 12 个工程日。
对先前修订的修复进行了第二次修复审查。
Lombard Finance 随后聘请 Ackee Blockchain Security 对 Liquid Bitcoin 协议 进行另一次安全审查,在 2025 年 3 月 25 日至 3 月 28 日期间总共捐赠了 3 个工程日。
然后对第二次修订的修复进行了修复审查,包括对范围的扩展,如下所述。
我们首先熟悉代码库和范围的业务逻辑来开始我们的审查。我们花费了大量时间审查文档并研究 协议 的更广泛范围(例如,Babylon Bitcoin 质押)。
完成初步研究后,我们继续手动审查代码库。手动审查包括多个阶段,第一阶段侧重于大致了解代码库:
在建立了初步了解之后,我们继续进行第二阶段,我们进行了逐行代码审查。这包括对代码的更深入分析,检查潜在的问题、错误和安全问题。
在手动审查期间,我们特别注意:
在审查 Bascule 程序期间,我们通过概念验证测试来测试 协议 是否按预期工作。审查在对程序的更深入理解的情况下继续进行,在此期间,我们确保:
第一次审计是在 commit 9171ae4
上进行的,范围如下:
修订版 1.1 是在给定的 commit ca1ccb2
上执行的,重点是第一次审计的修复。
修订版 2.0 是在 commit c96dc36
上执行的,范围如下:
然后对修订版 2.0 中提供的修复程序在 commit 9001c77
上进行了修订版 2.1。该范围包含对源代码的添加(例如,change_mint_auth
),这些添加未被审查,因为这些添加不在修订版 2.0 的范围内。
安全发现的分类由两个等级确定:影响和可能性。这种二维分类有助于阐明各个问题的严重性。如果问题被评为中等严重程度,但可能仅由团队发现,则通常会通过可能性因素将其降低到警告或信息性严重程度等级。
我们的审查导致了 22 项发现,范围从信息到高严重性。客户已修复或确认了这些问题。阅读下面链接的完整报告以获得完整的概述。
未发现危急严重性问题。
H1:可能未经授权的 LBTC 铸造
M1:可能不足的费用
M2:可能的初始化抢跑
M3:赎回不允许资产退款
M4:Mint 者是一种安全隐患
M5:由于 Config 帐户是 Rent 支付者,因此无法执行跨程序调用
M6:由于帐户不可变,因此无法执行跨程序调用
L1:无法保证基于角色的访问控制的唯一性
W1:无法转移 Config 权限
W2:金库可能会使 协议 无法运行
W3:加权验证器签名
W4:已弃用的跨程序调用
W5:字段可能未初始化
W6:UnstakeRequest
没有考虑费用
W7:由于算术溢出,可能会发生 panic
W8:向量边界中的意外行为
W9:未完成的代码可能会触发不期望的行为
W10:Bascule 初始化抢跑
W11:无法转移 BasculeData
权限
I1:不准确的注释
I2:可以提高代码质量
I3:Config 帐户中不必要的 Bascule 程序存储
尽管 协议 实现了基于角色的访问控制 (RBAC),具有多个权限级别并且消息验证过程已正确实现,但用户必须信任:
LBTC
token,这意味着不滥用 freeze_authority
或可用的 Token-2022 扩展。Ackee Blockchain Security 建议 Lombard Finance 解决所有报告的问题。
可以在此处找到 Ackee Blockchain Security 的完整 Lombard Finance Liquid Bitcoin 审计 报告。
我们很高兴对 Lombard Finance 进行审计,并期待再次与他们合作。
- 原文链接: ackee.xyz/blog/lombard-l...
- 登链社区 AI 助手,为大家转译优秀英文文章,如有翻译不通的地方,还请包涵~
如果觉得我的文章对您有用,请随意打赏。你的支持将鼓励我继续创作!