{"id":"CVE-2026-86064","kind":"vulnerability","aliases":["CVE-2026-86064","GHSA-9v8p-frvj-2pcm","GO-2026-6583"],"related":[],"title":"Klever-Go: /log controls global node logging in github.com/klever-io/klever-go","description":"Klever-Go is the Go implementation of the Klever blockchain protocol. Prior to 1.7.20, the default-open GET /log WebSocket route configured in config/node/api.yaml and registered by network/api/api.go does not require authentication. The first client message is parsed as a logger Profile in network/api/logs/logSender.go and applied process-wide through Profile.Apply, allowing a remote client to change global log levels and formatting options until the connection closes. The same connection is registered as a log observer and can receive live process logs. An attacker can suppress normal logs, increase verbosity, distort operator visibility, and access operational information without credentials. This issue is fixed in version 1.7.20.","summary":"Klever-Go, the Go implementation of the Klever blockchain node, exposes an unauthenticated GET /log WebSocket route by default. A remote client can change the node's global log levels and formatting and read live process logs without credentials.","severity":"high","cvss":8.6,"epss":0.00397,"exploited":false,"exploited_at":null,"products":[{"name":"github.com/klever-io/klever-go","fixed":["1.7.20"],"affected":"< 1.7.20","ecosystem":"go"}],"ecosystems":["go"],"tags":["blockchain","go","klever","package","self-hosted"],"not_affected_if":["api-port-not-exposed","version-1.7.20-or-later"],"how_to_check":"Check config/node/api.yaml for the /log route being enabled, and confirm the node's API port is reachable from untrusted networks.","fix":"Upgrade github.com/klever-io/klever-go to 1.7.20 or later.\nUntil upgraded, block or disable the /log route at the network or reverse proxy layer.","status":"open","published_at":"2026-09-23T20:17:19+00:00","first_seen_at":"2026-10-23T19:13:08+00:00","triaged_at":"2026-10-23T19:51:46+00:00","updated_at":"2026-10-23T19:51:46+00:00","category":"package","confidence":0.8,"triage":{"at":"2026-10-23T19:51:46Z","model":"claude-haiku-5-5","output":{"fix":"Upgrade github.com/klever-io/klever-go to 1.7.20 or later.\nUntil upgraded, block or disable the /log route at the network or reverse proxy layer.","summary":"Klever-Go, the Go implementation of the Klever blockchain node, exposes an unauthenticated GET /log WebSocket route by default. A remote client can change the node's global log levels and formatting and read live process logs without credentials.","category":"package","who_cares":["go","blockchain","klever","self-hosted"],"confidence":0.8,"analyst_note":"","how_to_check":"Check config/node/api.yaml for the /log route being enabled, and confirm the node's API port is reachable from untrusted networks.\nunknown","needs_analyst":false,"not_affected_if":["version-1.7.20-or-later","api-port-not-exposed"],"severity_if_unknown":"high"},"cost_usd":0.000378,"input_tokens":2263,"output_tokens":304,"severity_before":"high"},"analyst_status":null,"analyst_note":null,"search":"'-2026':14A,22A,25A '-6583':23A '-86064':15A,26A '/klever-io/klever-go':12A,29A '/log':4A,52B,97C '1.7.20':91C,184C '2pcm':20A '9v8p':18A 'access':173C 'allow':130C 'appli':124C 'attack':162C 'authent':110C 'blockchain':30B,46B,87C 'chang':61B,135C 'client':59B,113C,133C 'close':145C 'config/node/api.yaml':102C 'configur':100C 'connect':144C,148C 'control':5A 'credenti':76B,177C 'cve':13A,24A 'default':56B,94C 'default-open':93C 'distort':169C 'expos':48B 'first':112C 'fix':181C 'format':69B,140C 'frvj':19A 'get':51B,96C 'ghsa':17A 'ghsa-9v8p-frvj-2pcm':16A 'github.com':11A,28A 'github.com/klever-io/klever-go':10A,27A 'global':6A,65B,136C 'go':3A,21A,31B,39B,41B,79C,82C 'host':36B 'implement':42B,83C 'increas':167C 'inform':175C 'issu':179C 'klever':2A,32B,38B,45B,78C,86C 'klever-go':1A,37B,77C 'level':67B,138C 'live':72B,158C 'log':8A,66B,74B,137C,153C,160C,166C 'logger':119C 'messag':114C 'network/api/api.go':106C 'network/api/logs/logsender.go':122C 'node':7A,47B,63B 'normal':165C 'observ':154C 'open':95C 'oper':170C,174C 'option':141C 'packag':33B 'pars':116C 'prior':89C 'process':73B,126C,159C 'process-wid':125C 'profil':120C 'profile.apply':129C 'protocol':88C 'read':71B 'receiv':157C 'regist':104C,150C 'remot':58B,132C 'requir':109C 'rout':54B,99C 'self':35B 'self-host':34B 'suppress':164C 'unauthent':50B 'verbos':168C 'version':183C 'visibl':171C 'websocket':53B,98C 'wide':127C 'without':75B,176C","nicknames":[],"mitigations":[],"who_affected":null,"tier":null,"verified":{},"analyst_revisit_at":null,"first_public_at":"2026-09-23T20:17:19+00:00","kev":null,"cvss_vector":"CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:L/A:L","cvss_by":"security-advisories@github.com","poc_count":0,"sources":[{"source":"govuln","external_id":"GO-2026-6583","url":"https://pkg.go.dev/vuln/GO-2026-6583","severity":null,"published_at":"2026-10-01T20:23:38+00:00","modified_at":"2026-10-01T20:23:38+00:00","first_seen_at":"2026-10-23T19:13:08+00:00","fetched_at":"2026-10-23T19:13:08+00:00","note":null},{"source":"epss","external_id":"CVE-2026-86064","url":"https://api.first.org/data/v1/epss?cve=CVE-2026-86064","severity":null,"published_at":null,"modified_at":null,"first_seen_at":"2026-10-23T19:13:43+00:00","fetched_at":"2026-10-23T19:13:43+00:00","note":null},{"source":"nvd","external_id":"CVE-2026-86064","url":"https://nvd.nist.gov/vuln/detail/CVE-2026-86064","severity":null,"published_at":"2026-09-23T20:17:19+00:00","modified_at":"2026-09-23T20:17:20+00:00","first_seen_at":"2026-10-23T19:35:23+00:00","fetched_at":"2026-10-23T19:35:23+00:00","note":null}],"documents":[],"notice":"Free to read at a human pace. An API with keys and an MCP server are in preparation; early access: hello@infrastack.ai"}