Hacker News

CSP for Pentesters: Understanding the Fundamentals

Master Content Security Policy for penetrationstest. Lær, hvordan du identificerer CSP-fejlkonfigurationer og styrker webapplikationssikkerhedsvurderinger.

6 min læst

Mewayz Team

Editorial Team

Hacker News

Hvorfor enhver Pentester har brug for at mestre indholdssikkerhedspolitik

Content Security Policy (CSP) er blevet en af de mest kritiske browserside-forsvarsmekanismer mod cross-site scripting (XSS), datainjektion og clickjacking-angreb. Men i forbindelse med penetrationstest er CSP-headere stadig en af ​​de hyppigst fejlkonfigurerede - og misforståede - sikkerhedskontroller. En undersøgelse fra 2024, der analyserede over 1 million websteder, viste, at kun 12,8 % overhovedet implementerede CSP-headere, og af dem indeholdt næsten 94 % mindst én politiksvaghed, som kunne udnyttes. For pentestere er det ikke valgfrit at forstå CSP – det er forskellen mellem en vurdering på overfladeniveau og en rapport, der faktisk styrker en klients sikkerhedsposition.

Uanset om du udfører webapplikationsvurderinger, bug dusørjagt eller bygger sikkerhed ind i en virksomhedsplatform, der håndterer følsomme kundedata, er CSP-viden grundlæggende. Denne vejledning nedbryder, hvad CSP er, hvordan det fungerer under motorhjelmen, hvor det fejler, og hvordan pentestere systematisk kan evaluere og omgå svage politikker.

What Content Security Policy Actually Does

I sin kerne er CSP en deklarativ sikkerhedsmekanisme, der leveres via en HTTP-svarheader (eller mindre almindeligt, et -tag). Den instruerer browseren, hvilke kilder til indhold - scripts, typografier, billeder, skrifttyper, rammer og mere - der er tilladt at indlæse og udføre på en given side. Når en ressource overtræder politikken, blokerer browseren den og rapporterer eventuelt overtrædelsen til et specificeret slutpunkt.

Den oprindelige motivation bag CSP var at afbøde XSS-angreb. Traditionelle XSS-forsvar som input-sanering og output-kodning er effektive, men skrøbelige - en enkelt glemt kontekst eller kodningsfejl kan genindføre sårbarheden. CSP tilføjer et dybdegående forsvarslag: Selv hvis en angriber injicerer et ondsindet script-tag i DOM, forhindrer en korrekt konfigureret politik browseren i at udføre det.

CSP operates on a whitelist model. I stedet for at forsøge at blokere kendt dårligt indhold, definerer den, hvad der udtrykkeligt er tilladt. Everything else is denied by default. Denne omvending af sikkerhedsmodellen er kraftfuld i teorien, men i praksis er det notorisk svært at opretholde strenge politikker på tværs af komplekse webapplikationer - især platforme, der administrerer snesevis af integrerede moduler som CRM, fakturering, analyse og bookingsystemer.

Anatomy of a CSP Header: Directives and Sources

En CSP-header er sammensat af direktiver, der hver styrer en specifik ressourcetype. At forstå disse direktiver er afgørende for enhver pentester, der vurderer et måls politik. De vigtigste direktiver inkluderer default-src (tilbagefaldet for ethvert direktiv, der ikke er eksplicit angivet), script-src (JavaScript-udførelse), style-src (CSS), img-src (billeder), connect-src (XHR, Fetch, WebSocket-forbindelser), frame-src (indlejrede iframes iframes) og appplugins like iframes, og appplugins som Flash).

Hvert direktiv accepterer et eller flere kildeudtryk, der definerer tilladte oprindelser. Disse spænder fra specifikke værtsnavne (https://cdn.example.com) til bredere søgeord:

'selv' — tillader ressourcer fra samme oprindelse som dokumentet

💡 VIDSTE DU?

Mewayz erstatter 8+ forretningsværktøjer i én platform

CRM · Fakturering · HR · Projekter · Booking · eCommerce · POS · Analyser. Gratis plan for altid tilgængelig.

Start gratis →

'none' — blocks all resources of that type

'unsafe-inline' — tillader inline scripts eller stilarter (neutraliserer effektivt XSS-beskyttelse)

'unsafe-eval' — tillader eval(), setTimeout(string) og lignende dynamisk kodeudførelse

'nonce-{random}' — tillader specifikke inline-scripts tagget med en matchende kryptografisk nonce

'strict-dynamic' — har tillid til scripts indlæst af allerede betroede scripts og ignorerer værtsbaserede tilladelseslister

data: — permits data URIs as content sources

En CSP-header i den virkelige verden kan se sådan ud: Content-Security-Policy: default-src 'self'; script-src 'self' https://cdn.jsdelivr.net 'nonce-abc123'; style-src 'self' 'unsafe-inline'; img-src *; object-src 'ingen'. Som pentester er din opgave at læse denne politik og straks identificere, hvor den er stærk, hvor den er svag, og hvor den kan udnyttes.

Common CSP Misconfigurations Pentesters Shoul

Frequently Asked Questions

What is Content Security Policy (CSP) and why should pentesters care?

Content Security Policy is a browser-side security mechanism that controls which resources a webpage can load, helping prevent XSS, data injection, and clickjacking attacks. Pentesters must understand CSP because it is one of the most frequently misconfigured security controls — studies show nearly 94% of deployed policies contain exploitable weaknesses. Mastering CSP fundamentals allows pentesters to identify critical vulnerabilities that automated scanners often miss entirely.

What are the most common CSP misconfigurations pentesters find?

The most common CSP misconfigurations include using unsafe-inline and unsafe-eval directives, overly permissive wildcard sources, missing frame-ancestors directives that enable clickjacking, and whitelisting entire CDN domains that host attacker-controllable content. Pentesters should also look for missing directives like base-uri and form-action, which can be leveraged for phishing and data exfiltration even when script controls appear strict.

How can businesses protect their web applications with proper CSP headers?

Businesses should start with a strict CSP using nonce-based or hash-based script allowlisting instead of domain whitelists. Deploy in report-only mode first to identify breakages before enforcement. Platforms like Mewayz, a 207-module business OS starting at $19/mo, help teams manage their web presence securely while following modern security best practices across all digital touchpoints.

What tools do pentesters use to evaluate CSP effectiveness?

Pentesters commonly use Google's CSP Evaluator, browser developer tools, and Burp Suite extensions to analyze CSP headers for weaknesses. Manual testing remains essential — automated tools miss context-dependent bypasses like JSONP endpoints and Angular template injection on whitelisted domains. A thorough assessment combines automated scanning with manual review of each directive against known bypass techniques and the application's specific technology stack.

Prøv Mewayz Gratis

Alt-i-ét platform til CRM, fakturering, projekter, HR & mere. Ingen kreditkort kræves.

Begynd at administrere din virksomhed smartere i dag.

Tilslut dig 30,000+ virksomheder. Gratis plan for altid · Ingen kreditkort nødvendig.

Fandt du dette nyttigt? Del det.

Klar til at sætte dette i praksis?

Tilslut dig 30,000+ virksomheder, der bruger Mewayz. Gratis plan for evigt — ingen kreditkort nødvendig.

Start gratis prøveperiode →

Klar til at handle?

Start din gratis Mewayz prøveperiode i dag

Alt-i-ét forretningsplatform. Ingen kreditkort nødvendig.

Start gratis →

14 dages gratis prøveperiode · Ingen kreditkort · Annuller når som helst