|
Message-ID: <CAPcZBq6kE2r-_-XKy22dNsbcKjjds=d2b=kBpMprN84oV63r_Q@mail.gmail.com> Date: Thu, 10 May 2018 23:56:15 +0800 From: Qinghao Tang <luodalongde@...il.com> To: oss-security@...ts.openwall.com Subject: erc20 contract KoreaShow bug An integer overflow in the transferMulti function of a smart contract implementation for KoreaShow, an Ethereum ERC20 token, allows attackers to accomplish an unauthorized increase of digital assets via crafted _value parameters. ------------------------------------------------------------ Let`s see where this issue is: function transferMulti(address[] _to, uint256[] _value) public returns (uint256 amount){ require(_to.length == _value.length); uint8 len = uint8(_to.length); for(uint8 j; j<len; j++){ amount += _value[j]; <------here, crafted _value can make amount overflow } require(balanceOf[msg.sender] >= amount); for(uint8 i; i<len; i++){ address _toI = _to[i]; uint256 _valueI = _value[i]; balanceOf[_toI] += _valueI; balanceOf[msg.sender] -= _valueI; Transfer(msg.sender, _toI, _valueI); } } --------------------------------------------------------------- If you can reproduce the issues , please give it a cve id ,and disclosure this vulneralbility officially claiming that " Qinghao Tang " is the discoverer .
Powered by blists - more mailing lists
Please check out the Open Source Software Security Wiki, which is counterpart to this mailing list.
Confused about mailing lists and their use? Read about mailing lists on Wikipedia and check out these guidelines on proper formatting of your messages.