7.5high
CVE-2018-17877
A lottery smart contract implementation for Greedy 599, an Ethereum gambling game, generates a random value that is predictable via an exte…
Published 8 y ago · modified 4 mo ago · JSON
CVSS
7.5
v3.0 · NVD
CISA KEV
No
not known exploited
EPSS
1.6%
percentile 76%
Public exploits
0
none known
Summary
A lottery smart contract implementation for Greedy 599, an Ethereum gambling game, generates a random value that is predictable via an external contract call. The developer used the extcodesize() function to prevent a malicious contract from being called, but the attacker can bypass it by writing the core code in the constructor of their exploit code. Therefore, it allows attackers to always win and get rewards.
Exploit prediction (EPSS)
1.64% probability of exploitation in the next 30 days, higher than 76% of all scored CVEs.
CVSS scores
| Assigned by | Version | Score | Vector |
|---|---|---|---|
| NVD | 3.0 | 7.5 | CVSS:3.0/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:N/A:N |
| NVD | 2.0 | 5.0 | AV:N/AC:L/Au:N/C:P/I:N/A:N |
Classification
- Weakness
- CWE-338 Use of Cryptographically Weak Pseudo-Random Number Generator (PRNG)
References
- github.com /TEAM-C4B/CVE-LIST/tree/master/CVE-2018-17877 · x_refsource_MISC, x_transferred
Sources
- CVE List: CVE-2018-17877
- NVD: CVE-2018-17877
vulnwire keeps one entry per vulnerability: the CVE id wins, then GHSA; records that alias each other are merged. Machine-readable: JSON.