{"id":"CVE-2018-12018","aliases":["EUVD-2022-4685","GHSA-p5gc-957x-gfw9","GO-2021-0075"],"status":"published","title":"Go Ethereum LES protocol implementation vulnerable to Denial of Service","description":"The GetBlockHeadersMsg handler in the LES protocol implementation in Go Ethereum (aka geth) before 1.8.11 may lead to an access violation because of an integer signedness error for the array index, which allows attackers to launch a Denial of Service attack by sending a packet with a -1 query.Skip value. The vulnerable remote node would be crashed by such an attack immediately, aka the EPoD (Ethereum Packet of Death) issue.","severity":{"version":"3.0","score":7.5,"vector":"CVSS:3.0/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:N/A:H","level":"high","assessor":"primary","from":"nvd"},"epss":{"day":"2026-11-08","score":0.04255,"percentile":0.91119,"model":"v2026.06.15"},"facts":{"in_kev":false,"known_exploited":false,"public_exploit":true,"fix_available":true},"cwes":["CWE-129"],"published":"2018-07-05T02:00:00Z","modified":"2026-10-20T10:49:43Z","exploits":[{"source":"pocgithub","id":"k3v142/CVE-2018-12018","title":"k3v142/CVE-2018-12018","date":"2018-10-19","url":"https://github.com/k3v142/CVE-2018-12018"}],"fixes":[{"ecosystem":"Go","package":"github.com/ethereum/go-ethereum","fixed_in":["1.8.11"],"sources":["ghsa","osv"]}],"affected":[{"source":"ghsa","ecosystem":"Go","package":"github.com/ethereum/go-ethereum","ranges":[{"type":"ECOSYSTEM","events":[{"introduced":"0"},{"fixed":"1.8.11"}]}]},{"source":"osv","ecosystem":"Go","package":"github.com/ethereum/go-ethereum","ranges":[{"type":"SEMVER","events":[{"introduced":"0"},{"fixed":"1.8.11"}]}]},{"source":"osv","ecosystem":"Go","package":"github.com/ethereum/go-ethereum","ranges":[{"type":"SEMVER","events":[{"introduced":"0"},{"fixed":"1.8.11"}]}]}],"products":[{"vendor":"ethereum","product":"go_ethereum"}],"references":[{"url":"https://github.com/ethereum/go-ethereum/releases/tag/v1.8.11","tags":["x_refsource_MISC","x_transferred","Third Party Advisory","advisory","web"]},{"url":"https://github.com/ethereum/go-ethereum/commit/a5237a27eaf81946a3edb4fafe13ed6359d119e4","tags":["x_refsource_MISC","x_transferred","Patch","Third Party Advisory","fix","web"]},{"url":"https://github.com/ethereum/go-ethereum/pull/16891","tags":["x_refsource_MISC","x_transferred","Issue Tracking","Patch","Third Party Advisory","fix","web"]},{"url":"https://peckshield.com/2018/06/27/EPoD/","tags":["x_refsource_MISC","x_transferred","Exploit","Third Party Advisory","evidence"]},{"url":"https://nvd.nist.gov/vuln/detail/CVE-2018-12018","tags":["advisory"]},{"url":"https://pkg.go.dev/vuln/GO-2021-0075","tags":["web"]},{"url":"https://peckshield.com/2018/06/27/EPoD","tags":["web"]},{"url":"https://web.archive.org/web/20180628022133/https://peckshield.com/2018/06/27/EPoD","tags":["web"]},{"url":"https://github.com/advisories/GHSA-p5gc-957x-gfw9"},{"url":"https://github.com/ethereum/go-ethereum","tags":["package"]}],"sources":{"cve":[{"id":"CVE-2018-12018","description":"The GetBlockHeadersMsg handler in the LES protocol implementation in Go Ethereum (aka geth) before 1.8.11 may lead to an access violation because of an integer signedness error for the array index, which allows attackers to launch a Denial of Service attack by sending a packet with a -1 query.Skip value. The vulnerable remote node would be crashed by such an attack immediately, aka the EPoD (Ethereum Packet of Death) issue.","status":"published","published":"2018-07-05T02:00:00Z","modified":"2024-08-05T08:24:03.624Z","updated_at":"2026-11-02T14:35:06.679212Z"}],"euvd":[{"id":"EUVD-2022-4685","description":"The GetBlockHeadersMsg handler in the LES protocol implementation in Go Ethereum (aka geth) before 1.8.11 may lead to an access violation because of an integer signedness error for the array index, which allows attackers to launch a Denial of Service attack by sending a packet with a -1 query.Skip value. The vulnerable remote node would be crashed by such an attack immediately, aka the EPoD (Ethereum Packet of Death) issue.","status":"published","published":"2018-07-05T02:00:00Z","modified":"2024-08-05T08:24:03Z","updated_at":"2026-11-03T02:39:53.575925Z"}],"ghsa":[{"id":"GHSA-p5gc-957x-gfw9","title":"Go Ethereum LES protocol implementation vulnerable to Denial of Service","description":"The GetBlockHeadersMsg handler in the LES protocol implementation in Go Ethereum (aka geth) before 1.8.11 may lead to an access violation because of an integer signedness error for the array index, which allows attackers to launch a Denial of Service attack by sending a packet with a -1 query.Skip value. The vulnerable remote node would be crashed by such an attack immediately, aka the EPoD (Ethereum Packet of Death) issue.\n\n### Specific Go Packages Affected\ngithub.com/ethereum/go-ethereum/les","status":"published","published":"2022-05-14T03:01:31Z","modified":"2024-05-20T19:55:52Z","cvss":[{"version":"3.0","score":7.5,"vector":"CVSS:3.0/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:N/A:H","level":"high"}],"cwes":["CWE-129"],"updated_at":"2026-11-02T14:37:50.750599Z"}],"nvd":[{"id":"CVE-2018-12018","description":"The GetBlockHeadersMsg handler in the LES protocol implementation in Go Ethereum (aka geth) before 1.8.11 may lead to an access violation because of an integer signedness error for the array index, which allows attackers to launch a Denial of Service attack by sending a packet with a -1 query.Skip value. The vulnerable remote node would be crashed by such an attack immediately, aka the EPoD (Ethereum Packet of Death) issue.","status":"published","published":"2018-07-05T02:29:00.247Z","modified":"2026-06-17T01:37:00.223Z","cvss":[{"version":"3.0","score":7.5,"vector":"CVSS:3.0/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:N/A:H","level":"high","assessor":"primary"},{"version":"2.0","score":5,"vector":"AV:N/AC:L/Au:N/C:N/I:N/A:P","level":"medium","assessor":"primary"}],"cwes":["CWE-129"],"updated_at":"2026-11-02T14:04:30.900603Z"}],"osv":[{"id":"CVE-2018-12018","description":"The GetBlockHeadersMsg handler in the LES protocol implementation in Go Ethereum (aka geth) before 1.8.11 may lead to an access violation because of an integer signedness error for the array index, which allows attackers to launch a Denial of Service attack by sending a packet with a -1 query.Skip value. The vulnerable remote node would be crashed by such an attack immediately, aka the EPoD (Ethereum Packet of Death) issue.","status":"published","published":"2018-07-05T02:29:00.247Z","modified":"2026-10-20T10:49:43.356314461Z","cvss":[{"version":"3.0","score":7.5,"vector":"CVSS:3.0/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:N/A:H","level":"high"}],"updated_at":"2026-11-02T15:44:07.934182Z"},{"id":"GHSA-p5gc-957x-gfw9","title":"Go Ethereum LES protocol implementation vulnerable to Denial of Service","description":"The GetBlockHeadersMsg handler in the LES protocol implementation in Go Ethereum (aka geth) before 1.8.11 may lead to an access violation because of an integer signedness error for the array index, which allows attackers to launch a Denial of Service attack by sending a packet with a -1 query.Skip value. The vulnerable remote node would be crashed by such an attack immediately, aka the EPoD (Ethereum Packet of Death) issue.\n\n### Specific Go Packages Affected\ngithub.com/ethereum/go-ethereum/les","status":"published","published":"2022-05-14T03:01:31Z","modified":"2024-05-20T19:55:50Z","cvss":[{"version":"3.0","score":7.5,"vector":"CVSS:3.0/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:N/A:H","level":"high"}],"cwes":["CWE-129"],"updated_at":"2026-11-02T15:46:52.534897Z"},{"id":"GO-2021-0075","title":"Panic due to improper validation of RPC messages in github.com/ethereum/go-ethereum","description":"Due to improper argument validation in RPC messages, a maliciously crafted message can cause a panic, leading to denial of service.","status":"published","published":"2021-04-14T20:04:52Z","modified":"2024-06-03T20:51:31Z","updated_at":"2026-11-02T15:47:00.604718Z"}]}}
