区块链重入攻击练习
QWB2019 babybank
反编译看一下
profit函数需要level==0地址后16位为0xb1b1,调用后level加1,结果为level=1,balance加1,结果为balance=1
guess函数需要level==1和secret==arg0,调用后level加1,结果为level=2,balance加1,结果为balance=2
func_045C函数可以修改secret,但是要msg.sender==owner,但没找到修改owner的地方,不能利用
transfer函数需要balance==2和arg0==2,把当前账号的balance转到指定地址
withdraw函数需要balance==2和arg0==2,有call.value函数可以利用callback重入攻击使balance下溢