The random() function of the smart contract implementation for CryptoSaga, an Ethereum game, generates a random value with publicly readable variables such as timestamp, the current block's blockhash, and a private variable (which can be read with a getStorageAt call). Therefore, attackers can precompute the random number and manipulate the game (e.g., get powerful characters or get critical damages).
Advisories
Source ID Title
EUVD EUVD EUVD-2018-4926 The random() function of the smart contract implementation for CryptoSaga, an Ethereum game, generates a random value with publicly readable variables such as timestamp, the current block's blockhash, and a private variable (which can be read with a getStorageAt call). Therefore, attackers can precompute the random number and manipulate the game (e.g., get powerful characters or get critical damages).
Fixes

Solution

No solution given by the vendor.


Workaround

No workaround given by the vendor.

History

No history.

cve-icon MITRE

Status: PUBLISHED

Assigner: mitre

Published:

Updated: 2024-08-05T08:52:49.356Z

Reserved: 2018-06-28T00:00:00

Link: CVE-2018-12975

cve-icon Vulnrichment

No data.

cve-icon NVD

Status : Modified

Published: 2018-09-24T22:29:00.427

Modified: 2024-11-21T03:46:10.437

Link: CVE-2018-12975

cve-icon Redhat

No data.

cve-icon OpenCVE Enrichment

No data.