{"id":"CVE-2018-17987","aliases":["EUVD-2018-9726","GHSA-23fj-gx6v-3x6c"],"status":"published","title":"The determineWinner function of a smart contract implementation for HashHeroes Tiles, an Ethereum...","description":"The determineWinner function of a smart contract implementation for HashHeroes Tiles, an Ethereum game, uses a certain blockhash value in an attempt to generate a random number for the case where NUM_TILES equals the number of people who purchased a tile, which allows an attacker to control the awarding of the prize by being the last person to purchase a tile.","severity":{"version":"3.0","score":7.5,"vector":"CVSS:3.0/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:H/A:N","level":"high","assessor":"primary","from":"nvd"},"epss":{"day":"2026-11-08","score":0.00926,"percentile":0.60713,"model":"v2026.06.15"},"facts":{"in_kev":false,"known_exploited":false,"public_exploit":false,"fix_available":false},"cwes":["CWE-330"],"published":"2018-12-26T20:00:00Z","modified":"2026-06-17T01:46:39Z","products":[{"vendor":"hashheroes","product":"hashheroes"}],"references":[{"url":"https://github.com/TEAM-C4B/CVE-LIST/tree/master/CVE-2018-17987","tags":["x_refsource_MISC","x_transferred","Exploit","Third Party Advisory"]},{"url":"https://nvd.nist.gov/vuln/detail/CVE-2018-17987"},{"url":"https://github.com/advisories/GHSA-23fj-gx6v-3x6c"}],"sources":{"cve":[{"id":"CVE-2018-17987","description":"The determineWinner function of a smart contract implementation for HashHeroes Tiles, an Ethereum game, uses a certain blockhash value in an attempt to generate a random number for the case where NUM_TILES equals the number of people who purchased a tile, which allows an attacker to control the awarding of the prize by being the last person to purchase a tile.","status":"published","published":"2018-12-26T20:00:00Z","modified":"2024-08-05T11:01:14.926Z","updated_at":"2026-11-02T14:35:07.354449Z"}],"euvd":[{"id":"EUVD-2018-9726","description":"The determineWinner function of a smart contract implementation for HashHeroes Tiles, an Ethereum game, uses a certain blockhash value in an attempt to generate a random number for the case where NUM_TILES equals the number of people who purchased a tile, which allows an attacker to control the awarding of the prize by being the last person to purchase a tile.","status":"published","published":"2018-12-26T20:00:00Z","modified":"2024-08-05T11:01:14Z","updated_at":"2026-11-03T02:39:37.172177Z"}],"ghsa":[{"id":"GHSA-23fj-gx6v-3x6c","title":"The determineWinner function of a smart contract implementation for HashHeroes Tiles, an Ethereum...","description":"The determineWinner function of a smart contract implementation for HashHeroes Tiles, an Ethereum game, uses a certain blockhash value in an attempt to generate a random number for the case where NUM_TILES equals the number of people who purchased a tile, which allows an attacker to control the awarding of the prize by being the last person to purchase a tile.","status":"published","published":"2022-05-14T01:33:58Z","modified":"2023-02-02T05:04:17Z","cvss":[{"version":"3.0","score":7.5,"vector":"CVSS:3.0/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:H/A:N","level":"high"}],"cwes":["CWE-330"],"updated_at":"2026-11-02T14:51:50.069193Z"}],"nvd":[{"id":"CVE-2018-17987","description":"The determineWinner function of a smart contract implementation for HashHeroes Tiles, an Ethereum game, uses a certain blockhash value in an attempt to generate a random number for the case where NUM_TILES equals the number of people who purchased a tile, which allows an attacker to control the awarding of the prize by being the last person to purchase a tile.","status":"published","published":"2018-12-26T21:29:00.997Z","modified":"2026-06-17T01:46:39.21Z","cvss":[{"version":"3.0","score":7.5,"vector":"CVSS:3.0/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:H/A:N","level":"high","assessor":"primary"},{"version":"2.0","score":5,"vector":"AV:N/AC:L/Au:N/C:N/I:P/A:N","level":"medium","assessor":"primary"}],"cwes":["CWE-330"],"updated_at":"2026-11-02T14:04:52.056758Z"}]}}
