使用web3.js执行tx
合约代码123456789101112131415161718192021222324//SPDX-License-Identifier: Unlicensepragma solidity ^0.8.0;contract Incrementer { event Reset(); uint256 public number; constructor(uint256 _initaNumer) { number = _initaNumer; } function increment(uint256 _value) public { number = number + _value; } function reset() public { number = 0; emit Reset(); } function getNumber() public view returns (uint256) { ...
使用web3.js部署合约
1.初始化项12npm init npm init -y
生成package.json文件
2.安装依赖1npm install dotenv@^10.0.0 fs@0.0.1-security ganache-cli@^6.12.2 solc@0.8.0 web3@^1.3.5
3.配置env生成一个.env文件
12PRIVATE_KEY=私钥INFURA_ID=你的id
4.solidity文件Incrementer.sol
12345678910111213141516171819202122//SPDX-License-Identifier: Unlicensepragma solidity ^0.8.0;contract Incrementer { uint256 public number; constructor(uint256 _initaNumer) { number = _initaNumer; } function increment(uint256 _value) public ...
UniswapV2
ERC20&&Pair&&FactoryTotal Code1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677787980818283848586878889909192939495969798991001011021031041051061071081091101111121131141151161171181191201211221231241251261271281291301311321331341351361371381391401411421431441451461471481491501511521531541551561571581591601611621631641651661671681691701711721731741751761771781791801811821831841851861871 ...
Proxy代理合约的理解
代理的原理调用者(call) ========>> proxy代理合约 =========>> 逻辑合约 Implementation
将数据与逻辑分开,可以不断的更新逻辑,从而达到升级的目的,关键是delegatecall的调用,两者的储存结构应该一样,否则就造成重大危机。
代理合约可以分为三大模块 :代理合约Proxy 逻辑合约Logic 调用示例 Caller
模块一Proxy主要是用来储存数据,用Implementation用来进行delegatecall调用
Code123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707 ...
TreasureDAO攻击事件
关键词: NFT
作者: ChainSecLabs
攻击发生时间: 2022年3月3日
损失金额:140万美元
背景介绍Treasure 通过一种开放和可组合的方法,为日益增长的元宇宙架起了桥梁,使NFTs、DeFi和游戏融合在一起。北京时间2022年3月3日,TreasureDAO遭受黑客攻击,过百枚NFT被盗走,价值约140万美元。
攻击地址及交易信息攻击者钱包:0x9b1acd4336ebf7656f49224d14a892566fd48e68
攻击者交:0xb169e20b45c6a5b7e5726c812af73c0b48996a4db04b076d6ef484ca5a300d36
出现漏洞的合约地址:
TreasureMarketplaceBuyer:****0x812cda2181ed7c45a35a691e0c85e231d218e273
TreasureMarketplace :****0x2e3b85f85628301a0bce300dee3a6b04195a15ee
攻击过程TreasureMarketplaceBuyer:0x812cdA2181ed7c45a ...
NumenCyber CTF
0x01SimpleCallSource Code1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677787980818283848586878889909192pragma solidity ^0.7.0; contract ExistingStock { address public owner; address private reserve; string public name = "Existing Stock"; string public symbol = "ES"; uint256 public decimals = 18; uint256 public totalSupply = 200000000000; uint8 public f ...