抱歉,您的浏览器无法访问本站
本页面需要浏览器支持(启用)JavaScript
了解详情 >

1. 重入攻击 📌 重入攻击是智能合约中最常见的一种攻击,攻击者通过合约漏洞(例如fallback函数)循环调用合约,将合约中资产转走或铸造大量代币。 1.1 复现Bank.sol 123456789101112131415161718192021222324contract Bank { mapping (address => uint256) public ba...

1. issue2. analysing3. solvinglink

前言 📌 在做 damn defi的 backdoor挑战时,关于如何才能让 proxy合约给 hacker执行 approve授权操作,引发的深思。 我们知道,delegatecall是很特殊的调用方式,委托调用,代码是在逻辑合约 Proxy中执行。 如果我们通过这种方式执行 Caller --call--> Proxy --delegatecall--> Logic1 ...

delegatecall关键字在代理合约中的妙用 就感觉很很神奇~ 逻辑合约12345678910111213141516171819202122232425contract Logic { address owner; uint public a = 8; constructor() { owner = msg.sender; ...

前言 最近在做 damn defi 靶场的时候,遇到了一些题涉及到 GnosisSafeProxy 相关知识的题。查缺补漏,先来学习学习 GnosisSafeProxy 合约。 解读GnosisSafeProxy.sol这是一个代理合约,一个构造器一个回调函数。 1. 源码12345678910111213141516171819202122232425262728293031323334...

前言当我们想用数组存储一些数据的时候,如果我们不知道数据的个数有多少的话,往往会开辟一个长度很大的数组,如果数据的个数很少,那么函数给我们返回的数组就会有很多未使用的空间,这样一来就会造成空间浪费,消耗更多的gas,而在区块链上gas也是钱呐,我们本着能省就省的理念。 所以最好能忽略掉那些未使用的空间。 使用内联汇编可以很好的解决这个问题。 方法123456789101112131415fu...

前言 最近在做 damn defi 靶场的时候,遇到了一些题涉及到 GnosisSafe 相关知识的题。查缺补漏,先来学习学习 GnosisSafe 合约。 解读 GnosisSafe的父合约123456789101112131415161718192021222324252627282930// SPDX-License-Identifier: LGPL-3.0-onlypragma s...

1. 时间锁概念时间锁(Timelock)是银行金库和其他高安全性容器中常见的锁定机制。它是一种计时器,旨在防止保险箱或保险库在预设时间之前被打开,即便开锁的人知道正确密码。 在区块链,时间锁被DeFi和DAO大量采用。它是一段代码,他可以将智能合约的某些功能锁定一段时间。它可以大大改善智能合约的安全性,举个例子,假如一个黑客黑了Uniswap的多签,准备提走金库的钱,但金库合约加了2天锁定...

1. issue There’s a secure vault contract guarding 10 million DVT tokens. The vault is upgradeable, following the UUPS pattern. The owner of the vault, currently a timelock contract, can withdraw a ...

1. issue To incentivize the creation of more secure wallets in their team, someone has deployed a registry of Gnosis Safe wallets. When someone in the team deploys and registers a wallet, they will...



政策 · 统计 | 本站使用 Volantis 主题设计