{"id":"CVE-2026-114348","kind":"vulnerability","aliases":["CVE-2026-114348"],"related":[],"title":"webpack-dev-server: Host header check leaks stack traces and file paths","description":"webpack-dev-server is a development server that provides live reloading for webpack projects. In versions from 5.1.0 before 5.2.7 and in version 6.0.0, the unauthenticated open-editor endpoint validates the Host header with a regular expression meant for browser Origin schemes, so a Host value beginning with file: or with an extension scheme short-circuits the hostname and allowedHosts checks. A network peer that can reach the dev server can send a request with a malformed Host that passes validation and then causes the endpoint's URL construction to throw, and in the default non-production mode the server returns an HTTP 500 body containing the full exception stack trace, which discloses absolute filesystem paths, installed module locations, and internal source line numbers. The server keeps running, so there is no denial of service. The issue is fixed in webpack-dev-server 5.2.7 and 6.1.0, and users should upgrade to one of those versions or later.","summary":"webpack-dev-server's open-editor endpoint validates the Host header with a flawed regex, so a malformed Host value gets past the allowed-hosts check and triggers an exception. In non-production mode the 500 response includes the full stack trace, exposing absolute filesystem paths, module locations and source line numbers.","severity":"medium","cvss":5.3,"epss":0.00305,"exploited":false,"exploited_at":null,"products":[],"ecosystems":[],"tags":["frontend","javascript","node","package","webpack","webpack-dev-server"],"not_affected_if":["localhost-only-dev","production-build","version-outside-range"],"how_to_check":"- Run `npm ls webpack-dev-server` to find the installed version; affected versions are 5.1.0 through 5.2.6 and 6.0.0.\n- Check whether the dev server is reachable from untrusted networks, for example bound to `0.0.0.0` or exposed through a tunnel.","fix":"- Upgrade webpack-dev-server to `5.2.7` (5.x line) or `6.1.0` (6.x line) or later.\n- Keep the dev server bound to localhost or behind a trusted network until upgraded.","status":"open","published_at":"2026-10-22T10:17:08+00:00","first_seen_at":"2026-10-23T21:57:30+00:00","triaged_at":"2026-10-25T04:20:23+00:00","updated_at":"2026-10-25T04:20:23+00:00","category":"package","confidence":0.8,"triage":{"at":"2026-10-25T04:20:23Z","model":"claude-haiku-5-5","output":{"fix":"- Upgrade webpack-dev-server to `5.2.7` (5.x line) or `6.1.0` (6.x line) or later.\n- Keep the dev server bound to localhost or behind a trusted network until upgraded.","reach":"network","title":"webpack-dev-server: Host header check leaks stack traces and file paths","impact":"low","summary":"webpack-dev-server's open-editor endpoint validates the Host header with a flawed regex, so a malformed Host value gets past the allowed-hosts check and triggers an exception. In non-production mode the 500 response includes the full stack trace, exposing absolute filesystem paths, module locations and source line numbers.","category":"package","nicknames":[],"who_cares":["webpack","webpack-dev-server","node","javascript","frontend"],"confidence":0.8,"needs_auth":"no","worst_case":"Attacker reads absolute file paths and internal module structure from error output","analyst_note":"","how_to_check":"- Run `npm ls webpack-dev-server` to find the installed version; affected versions are 5.1.0 through 5.2.6 and 6.0.0.\n- Check whether the dev server is reachable from untrusted networks, for example bound to `0.0.0.0` or exposed through a tunnel.","needs_analyst":false,"not_affected_if":["localhost-only-dev","production-build","version-outside-range"],"who_is_affected":"Teams that run webpack-dev-server in development on a machine or network that other people can reach, since the open-editor endpoint is unauthenticated. The server does not run in production builds with a non-development mode, and the stack trace is returned only in non-production mode, so production deployments and localhost-only dev setups are much less exposed.","user_interaction":"no","needs_special_setup":"yes","severity_if_unknown":"unknown"},"cost_usd":0.000666,"input_tokens":3548,"output_tokens":623,"severity_before":"medium"},"analyst_status":null,"analyst_note":null,"search":"'-114348':16A,19A '-2026':15A,18A '5.1.0':103C '5.2.7':105C,233C '500':68B,192C '6.0.0':109C '6.1.0':235C 'absolut':76B,202C 'allow':55B 'allowed-host':54B 'allowedhost':147C 'begin':133C 'bodi':193C 'browser':126C 'caus':171C 'check':7A,57B,148C 'circuit':143C 'construct':176C 'contain':194C 'cve':14A,17A 'default':182C 'denial':221C 'dev':3A,27B,31B,87C,156C,231C 'develop':91C 'disclos':201C 'editor':36B,114C 'endpoint':37B,115C,173C 'except':61B,197C 'expos':75B 'express':123C 'extens':139C 'file':12A,135C 'filesystem':77B,203C 'fix':227C 'flaw':44B 'frontend':20B 'full':72B,196C 'get':51B 'header':6A,41B,119C 'host':5A,40B,49B,56B,118C,131C,165C 'hostnam':145C 'http':191C 'includ':70B 'instal':205C 'intern':209C 'issu':225C 'javascript':21B 'keep':215C 'later':246C 'leak':8A 'line':83B,211C 'live':95C 'locat':80B,207C 'malform':48B,164C 'meant':124C 'mode':66B,186C 'modul':79B,206C 'network':150C 'node':22B 'non':64B,184C 'non-product':63B,183C 'number':84B,212C 'one':241C 'open':35B,113C 'open-editor':34B,112C 'origin':127C 'packag':23B 'pass':167C 'past':52B 'path':13A,78B,204C 'peer':151C 'product':65B,185C 'project':99C 'provid':94C 'reach':154C 'regex':45B 'regular':122C 'reload':96C 'request':161C 'respons':69B 'return':189C 'run':216C 'scheme':128C,140C 'send':159C 'server':4A,28B,32B,88C,92C,157C,188C,214C,232C 'servic':223C 'short':142C 'short-circuit':141C 'sourc':82B,210C 'stack':9A,73B,198C 'throw':178C 'trace':10A,74B,199C 'trigger':59B 'unauthent':111C 'upgrad':239C 'url':175C 'user':237C 'valid':38B,116C,168C 'valu':50B,132C 'version':101C,108C,244C 'webpack':2A,24B,26B,30B,86C,98C,230C 'webpack-dev-serv':1A,25B,29B,85C,229C","nicknames":[],"mitigations":[],"who_affected":"Teams that run webpack-dev-server in development on a machine or network that other people can reach, since the open-editor endpoint is unauthenticated. The server does not run in production builds with a non-development mode, and the stack trace is returned only in non-production mode, so production deployments and localhost-only dev setups are much less exposed.","tier":"C","verified":{},"analyst_revisit_at":null,"first_public_at":"2026-10-22T10:17:08+00:00","kev":null,"cvss_vector":"CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:L/I:N/A:N","cvss_by":"ce714d77-add3-4f53-aff5-83d477b104bb","poc_count":0,"sources":[{"source":"nvd","external_id":"CVE-2026-114348","url":"https://nvd.nist.gov/vuln/detail/CVE-2026-114348","severity":null,"published_at":"2026-10-22T10:17:08+00:00","modified_at":"2026-10-22T15:25:10+00:00","first_seen_at":"2026-10-23T21:57:30+00:00","fetched_at":"2026-10-23T22:29:02+00:00","note":null},{"source":"epss","external_id":"CVE-2026-114348","url":"https://api.first.org/data/v1/epss?cve=CVE-2026-114348","severity":null,"published_at":null,"modified_at":null,"first_seen_at":"2026-10-24T07:15:51+00:00","fetched_at":"2026-10-24T07:15:51+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"}