AZ
Size: a a a
AZ
SM
AZ
N
𓄋
𓄋
𓄋
𓄋
N
MD
AZ
AZ
AZ
pragma solidity 0.4.25;
contract Victim {
function isContract() public view returns(bool){
uint32 size;
address a = msg.sender;
assembly {
size := extcodesize(a)
}
return (size > 0);
}
}
contract Attacker {
bool public iTrickedIt;
Victim v;
constructor(address _v) public {
v = Victim(_v);
// addrss(this) doesn't have code, yet
iTrickedIt = !v.isContract();
}
}𓄋
N
RP
MD
𓄋
MD