diff --git a/apps/sim/lib/core/security/csp.ts b/apps/sim/lib/core/security/csp.ts index c5dde9ef41d..3eafb959499 100644 --- a/apps/sim/lib/core/security/csp.ts +++ b/apps/sim/lib/core/security/csp.ts @@ -40,6 +40,7 @@ export const buildTimeCSPDirectives: CSPDirectives = { 'https://*.google.com', 'https://apis.google.com', 'https://assets.onedollarstats.com', + 'https://challenges.cloudflare.com', ...(isReactGrabEnabled ? ['https://unpkg.com'] : []), ], @@ -102,6 +103,7 @@ export const buildTimeCSPDirectives: CSPDirectives = { 'https://*.supabase.co', 'https://api.github.com', 'https://github.com/*', + 'https://challenges.cloudflare.com', 'https://collector.onedollarstats.com', ...getHostnameFromUrl(env.NEXT_PUBLIC_BRAND_LOGO_URL), ...getHostnameFromUrl(env.NEXT_PUBLIC_PRIVACY_URL), @@ -110,6 +112,7 @@ export const buildTimeCSPDirectives: CSPDirectives = { 'frame-src': [ "'self'", + 'https://challenges.cloudflare.com', 'https://drive.google.com', 'https://docs.google.com', 'https://*.google.com', @@ -171,13 +174,13 @@ export function generateRuntimeCSP(): string { return ` default-src 'self'; - script-src 'self' 'unsafe-inline' 'unsafe-eval' https://*.google.com https://apis.google.com https://assets.onedollarstats.com ${reactGrabScript}; + script-src 'self' 'unsafe-inline' 'unsafe-eval' https://*.google.com https://apis.google.com https://assets.onedollarstats.com https://challenges.cloudflare.com ${reactGrabScript}; style-src 'self' 'unsafe-inline' https://fonts.googleapis.com; img-src 'self' data: blob: https://*.googleusercontent.com https://*.google.com https://*.atlassian.com https://cdn.discordapp.com https://*.githubusercontent.com https://*.s3.amazonaws.com https://s3.amazonaws.com https://*.amazonaws.com https://*.blob.core.windows.net https://github.com/* https://collector.onedollarstats.com ${brandLogoDomain} ${brandFaviconDomain}; media-src 'self' blob:; font-src 'self' https://fonts.gstatic.com; - connect-src 'self' ${appUrl} ${ollamaUrl} ${socketUrl} ${socketWsUrl} https://api.browser-use.com https://api.exa.ai https://api.firecrawl.dev https://*.googleapis.com https://*.amazonaws.com https://*.s3.amazonaws.com https://*.blob.core.windows.net https://api.github.com https://github.com/* https://*.atlassian.com https://*.supabase.co https://collector.onedollarstats.com ${dynamicDomainsStr}; - frame-src 'self' https://drive.google.com https://docs.google.com https://*.google.com; + connect-src 'self' ${appUrl} ${ollamaUrl} ${socketUrl} ${socketWsUrl} https://api.browser-use.com https://api.exa.ai https://api.firecrawl.dev https://*.googleapis.com https://*.amazonaws.com https://*.s3.amazonaws.com https://*.blob.core.windows.net https://api.github.com https://github.com/* https://*.atlassian.com https://*.supabase.co https://challenges.cloudflare.com https://collector.onedollarstats.com ${dynamicDomainsStr}; + frame-src 'self' https://challenges.cloudflare.com https://drive.google.com https://docs.google.com https://*.google.com; frame-ancestors 'self'; form-action 'self'; base-uri 'self';