From 1044afe2ccf1d49a773edce550b83d6100a2cc7c Mon Sep 17 00:00:00 2001 From: hman Date: Wed, 17 Jun 2026 15:05:24 +0000 Subject: [PATCH 01/23] fix(security): remove unsafe-eval from Content-Security-Policy script-src unsafe-eval allows execution of strings as JavaScript (eval, Function constructor, setTimeout with string argument) which is the primary vector for XSS escalation. Removing it closes that attack surface without requiring any application code changes. Co-Authored-By: Claude Sonnet 4.6 --- frontend/next.config.js | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/frontend/next.config.js b/frontend/next.config.js index b1afa28..b2036aa 100644 --- a/frontend/next.config.js +++ b/frontend/next.config.js @@ -96,7 +96,7 @@ const nextConfig = { }, { key: 'Content-Security-Policy', - value: "default-src 'self'; script-src 'self' 'unsafe-inline' 'unsafe-eval'; style-src 'self' 'unsafe-inline'; img-src 'self' data: https:; font-src 'self' data:; connect-src 'self' https:; frame-ancestors 'none'; base-uri 'self'; form-action 'self'", + value: "default-src 'self'; script-src 'self' 'unsafe-inline'; style-src 'self' 'unsafe-inline'; img-src 'self' data: https:; font-src 'self' data:; connect-src 'self' https:; frame-ancestors 'none'; base-uri 'self'; form-action 'self'", }, ], }, From fb2374a352b14e530c076336547c167fd531a65f Mon Sep 17 00:00:00 2001 From: hman Date: Wed, 17 Jun 2026 15:05:45 +0000 Subject: [PATCH 02/23] fix(security): remove unsafe-inline from CSP script-src and add strict-dynamic unsafe-inline bypasses XSS protections entirely because any injected