A gambling smart contract implementation for RuletkaIo, an Ethereum gambling game, generates a random value that is predictable by an…
mitre·CWE-338·Published 2018-10-23
A gambling smart contract implementation for RuletkaIo, an Ethereum gambling game, generates a random value that is predictable by an external contract call. The developer wrote a random() function that uses a block timestamp and block hash from the Ethereum blockchain. This can be predicted by writing the same random function code in an exploit contract to determine the deadSeat value.
A gambling smart contract implementation for RuletkaIo, an Ethereum gambling game, generates a random value that is predictable by an external contract call. The developer wrote a random() function that uses a block timestamp and block hash from the Ethereum blockchain. This can be predicted by writing the same random function code in an exploit contract to determine the deadSeat value.
Una implementación de contrato inteligente de apuestas para RuletkaIo, un token de apuestas de Ethereum, genera un valor aleatorio predecible mediante una llamada externa de contrato. El desarrollador escribió una función random() que emplea una marca de tiempo de bloque y un hash de bloque del blockchain de Ethereum. Esto se puede predecir escribiendo el mismo código de función aleatoria en un contrato de exploit para determinar el valor deadSeat.
| Version | Type | Source | Base | Exp | Impact | Vector |
|---|---|---|---|---|---|---|
| 2.0 | Primary | NVD | 5.0 | 10.0 | 2.9 | AV:N/AC:L/Au:N/C:P/I:N/A:N |
| 3.0 | Primary | NVD | 7.5 | 3.9 | 3.6 | CVSS:3.0/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:N/A:N |