electron/shell
trop[bot] ff69f9e490
fix: validate header name and value in webRequest.onBeforeSendHeaders (#51364)
* fix: validate header name and value in webRequest.onBeforeSendHeaders

Chromium's net::HttpRequestHeaders::SetHeader() uses CHECK() to enforce
valid header names and values, which causes a fatal crash if the caller
passes invalid strings. When users modify requestHeaders in the
onBeforeSendHeaders callback with invalid header names (e.g. containing
spaces) or invalid header values (e.g. containing CRLF), the
gin::Converter<net::HttpRequestHeaders>::FromV8() calls SetHeader()
directly, triggering the CHECK and crashing the process.

This change adds pre-validation using net::HttpUtil::IsValidHeaderName()
and net::HttpUtil::IsValidHeaderValue() before calling SetHeader(),
silently skipping invalid headers instead of crashing.

Co-authored-by: loufulton <loufulton.cz@gmail.com>

* Update shell/common/gin_converters/net_converter.cc

Co-authored-by: Charles Kerr <charles@charleskerr.com>

Co-authored-by: loufultoncz-coder <loufulton.cz@gmail.com>

* Update spec/api-web-request-spec.ts

Co-authored-by: Charles Kerr <charles@charleskerr.com>

Co-authored-by: loufultoncz-coder <loufulton.cz@gmail.com>

* fix: lint

Co-authored-by: loufulton <loufulton.cz@gmail.com>

---------

Co-authored-by: trop[bot] <37223003+trop[bot]@users.noreply.github.com>
Co-authored-by: loufulton <loufulton.cz@gmail.com>
2026-04-28 12:02:12 -05:00
..
app fix: use audit token instead of PID for parent code-signature check (#50935) 2026-04-11 17:11:58 -04:00
browser fix: crash in AutofillPopup teardown (#51334) 2026-04-27 09:24:17 -05:00
common fix: validate header name and value in webRequest.onBeforeSendHeaders (#51364) 2026-04-28 12:02:12 -05:00
renderer fix: add MicrotasksScope for worker exit emit in ContextWillDestroy (#51349) 2026-04-27 21:07:43 -05:00
services/node fix: revert enabling WASM trap handlers in all Node.js processes (#48976) 2025-11-14 18:57:05 -08:00
utility fix: broken OOP window.print() on macOS/Linux (#45214) 2025-01-20 10:23:44 +01:00