Inline-skript för innehållsskydd i AEM Sites
En strikt CSP (Content Security Policy) minskar säkerhetsriskerna, till exempel XSS (cross-site scripting). Om du använder script-src 'unsafe-inline' och 'unsafe-eval' i Adobe Experience Manager (AEM) Sites aktiveras infogade skript, men sårbarheter introduceras. I den här guiden förklaras om AEM Sites har stöd för CSP-noder eller säkra alternativ för inläsning av textbundna skript utan osäkra direktiv.
För att åtgärda detta måste du omfaktorisera infogade skript och implementera anpassad nonce-hantering.
Beskrivning description
Miljö
Produkt: AEM as a Cloud Service - Sites
Problem/symtom
- Textbundna skript läses inte in när CSP exkluderar
'unsafe-inline'och'unsafe-eval'. - Borttagning av dessa flaggor flaggas som en säkerhetsrisk men stör funktionaliteten.
- En säker metod som CSP-åtkomstpunkter behövs för att tillåta intern skriptkörning utan att säkerheten äventyras.
Upplösning resolution
Viktiga överväganden:
- AEM Sites har inget körklart stöd för CSP-anslutningar.
- AEM dekorerar inte automatiskt sina textbundna skript med brus.
-
Så här tillämpar du striktare CSP-principer utan osäkra direktiv (dvs. exklusive
unsafe-inline/unsafe-eval:- Spärra textbundna skript i externa JavaScript-filer. Mer information finns i Konfigurera en CSP i Experience Platform-dokumentationen.
- Bygg en anpassad lösning för att generera och injicera kramper vid behov.
-
Testa alla ändringar för att säkerställa att sidfunktionerna inte störs.
Anteckningar:
- Frånvaron av CSP utgör inte någon sårbarhet i AEM; den fungerar som ett ytterligare försvarsskikt. Se Översikt över skyddsprofiler för innehåll i Commerce-dokumentationen.
- Anpassad implementering är nödvändig för striktare tillämpning av CSP än vad som för närvarande stöds.