The fallback function of a simple lottery smart contract implementation for Lucky9io, an Ethereum gambling game, generates a random value with the publicly readable variable entry_number. This variable is private, yet it is readable by eth.getStorageAt function. Also, attackers can purchase a ticket at a low price by directly calling the fallback function with small msg.value, because the developer set the currency unit incorrectly. Therefore, it allows attackers to always win and get rewards.
References
| Link | Resource |
|---|---|
| https://github.com/TEAM-C4B/CVE-LIST/tree/master/CVE-2018-17071 | Exploit Third Party Advisory |
| https://github.com/TEAM-C4B/CVE-LIST/tree/master/CVE-2018-17071 | Exploit Third Party Advisory |
Configurations
History
21 Nov 2024, 03:53
| Type | Values Removed | Values Added |
|---|---|---|
| References | () https://github.com/TEAM-C4B/CVE-LIST/tree/master/CVE-2018-17071 - Exploit, Third Party Advisory |
Information
Published : 2018-09-18 21:29
Updated : 2024-11-21 03:53
NVD link : CVE-2018-17071
Mitre link : CVE-2018-17071
CVE.ORG link : CVE-2018-17071
JSON object : View
Products Affected
lucky9
- lucky9io
CWE
CWE-338
Use of Cryptographically Weak Pseudo-Random Number Generator (PRNG)
