Planera och implementera en brandvägg för webbaserade program (WAF)
Webbapplikationsbrandvägg (WAF) ger ett centraliserat skydd för dina webbprogram mot vanliga exploateringar och sårbarheter. Webbprogram utsätts i allt högre grad för avancerade skadliga attacker som utnyttjar vanliga sårbarheter. SQL-inmatning och skript mellan webbplatser är fortfarande bland de vanligaste attackerna, tillsammans med nya hot som API-missbruk och robotbaserade attacker.
Det är svårt att förhindra sådana attacker i programkod. Det kan kräva rigoröst underhåll, korrigeringar och övervakning i flera lager av programtopologin. En centraliserad brandvägg för webbprogram gör säkerhetshanteringen enklare. En WAF ger också programadministratörer bättre skydd mot hot och intrång.
En WAF-lösning kan reagera snabbare på ett säkerhetshot genom att centralt korrigera en känd säkerhetsrisk, i stället för att skydda varje enskild webbapp.
Tjänst som stöds
WAF kan distribueras med Tjänsten Azure Application Gateway, Azure Front Door och Azure Content Delivery Network (CDN) från Microsoft. WAF har funktioner som är anpassade för varje specifik tjänst. Mer information om WAF-funktioner för varje tjänst finns i översikten för varje tjänst.
Azure Web Application Firewall (WAF) på Azure Application Gateway skyddar aktivt dina webbprogram mot vanliga sårbarheter. I takt med att webbprogram blir vanligare för skadliga attacker utnyttjar dessa attacker ofta välkända sårbarheter som SQL-inmatning och skript för flera platser.
WAF på Application Gateway baseras på core rule set (CRS) från Open Web Application Security Project (OWASP).
Alla följande WAF-funktioner finns i en WAF-policy. Du kan skapa flera principer och de kan associeras med en Application Gateway, enskilda lyssnare eller till sökvägsbaserade routningsregler på en Application Gateway. På så sätt kan du ha separata principer för varje plats bakom din Application Gateway om det behövs.
Application Gateway fungerar som en programleveranskontrollant (ADC). Det erbjuder TLS (Transport Layer Security), tidigare känt som Secure Sockets Layer (SSL), avslutning, cookiebaserad sessionstillhörighet, resursallokeringsdistribution, innehållsbaserad routning, möjlighet att vara värd för flera webbplatser och säkerhetsförbättringar.
Application Gateway förbättrar säkerheten via TLS-principhantering och TLS-stöd från slutpunkt till slutpunkt. Genom att integrera WAF i Application Gateway stärker det programsäkerheten. Den här kombinationen skyddar aktivt dina webbprogram mot vanliga säkerhetsrisker och erbjuder en centralt hanterbar och lättkonfigurerad plats.
Skydd
- Skydda dina webbprogram mot webbsårbarheter och attacker utan att ändra serverdelskoden.
- Skydda flera webbprogram samtidigt. En instans av Application Gateway kan vara värd för upp till 40 webbplatser som skyddas av en brandvägg för webbprogram.
- Skapa anpassade WAF-principer för olika webbplatser bakom samma WAF.
- Skydda dina webbprogram från skadliga robotar med regeluppsättningen IP Reputation.
- Skydda ditt program mot DDoS-attacker med integrerade skyddsfunktioner.
Övervakning
Övervaka attacker mot dina webbprogram med hjälp av en WAF-logg i realtid. Loggen är integrerad med Azure Monitor för att spåra WAF-aviseringar och enkelt övervaka trender.
Application Gateway WAF är integrerad med Microsoft Defender för molnet. Defender for Cloud ger en central vy över säkerhetstillståndet för alla dina Azure-, hybrid- och multimolnsresurser.
Kundanpassning
- Anpassa WAF-regler och regelgrupper så att de passar dina programkrav och eliminera falska positiva identifieringar.
- Knyt en WAF-policy till varje webbplats bakom er WAF för att möjliggöra platsspecifik konfiguration.
- Skapa anpassade regler som passar programmets behov.
Funktioner
- SQL-inmatningsskydd.
- Skriptskydd mellan webbplatser.
- Skydd mot andra vanliga webbattacker, till exempel kommandoinmatning, HTTP-begärandesmuggling, DELNING av HTTP-svar och fjärrfilinkludering.
- Skydd mot HTTP-protokollöverträdelser.
- Skydd mot HTTP-protokollavvikelser, såsom saknade host-, user-agent- och Accept-rubriker.
- Skydd mot crawlare och skannrar.
- Identifiering av vanliga programfelkonfigurationer (till exempel Apache och Internet Information Services).
- Konfigurerbara storleksgränser för begäranden med lägre och övre gränser.
- Med undantagslistor kan du utelämna vissa begärandeattribut från en WAF-utvärdering. Ett vanligt exempel är Microsoft Entra ID-infogade token som används för autentiserings- eller lösenordsfält.
- Skapa anpassade regler som passar de specifika behoven i dina program.
- Geo-filtrera trafik för att tillåta eller blockera vissa länder/regioner från att få åtkomst till dina program.
- Skydda dina program från robotar med regeluppsättningen för robotreducering.
- Granska JavaScript Object Notation (JSON) och Xml (Extensible Markup Language) i begärandetexten
WAF-princip och -regler
Om du vill aktivera en brandvägg för webbprogram på Application Gateway måste du skapa en WAF-princip. Den här principen är den plats där alla hanterade regler, anpassade regler, undantag och andra anpassningar, till exempel filuppladdningsgräns, finns.
Du kan konfigurera en WAF-princip och associera den principen med en eller flera programgatewayer för skydd. En WAF-princip består av två typer av säkerhetsregler:
- Anpassade regler som du skapar
- Hanterade regeluppsättningar som är en samling Azure-hanterade förkonfigurerade regeluppsättningar
När båda förekommer behandlas anpassade regler innan reglerna i en hanterad regeluppsättning behandlas. En regel består av ett matchningsvillkor, en prioritet och en åtgärd. Åtgärdstyper som stöds är: ALLOW, BLOCK och LOG. Du kan skapa en helt anpassad princip som uppfyller dina specifika programskyddskrav genom att kombinera hanterade och anpassade regler.
Regler inom en policy hanteras i prioritetsordning. Prioritet är ett unikt heltal som definierar ordningen på de regler som ska bearbetas. Mindre heltalsvärde anger en högre prioritet och dessa regler utvärderas före regler med ett högre heltalsvärde. När en regel har matchats tillämpas motsvarande åtgärd som definierades i regeln på begäran. När en sådan matchning har bearbetats bearbetas inte regler med lägre prioritet ytterligare.
Ett webbprogram som levereras av Application Gateway kan ha en WAF-princip kopplad till den på global nivå, på en nivå per plats eller på en URI-nivå.
Grundläggande regeluppsättningar
Application Gateway stöder flera regeluppsättningar, inklusive CRS 3.2 (rekommenderas), CRS 3.1 och CRS 3.0. Dessa regler skyddar dina webbprogram från skadlig aktivitet. CRS 3.2 ger bättre noggrannhet, bättre prestanda och förbättrat skydd mot moderna hot.
Anpassade regler
Application Gateway har också stöd för anpassade regler. Med anpassade regler kan du skapa egna regler som utvärderas för varje begäran som skickas via WAF. Dessa regler har högre prioritet än resten av reglerna i de hanterade regeluppsättningarna. Om en uppsättning villkor uppfylls vidtas en åtgärd för att tillåta eller blockera. Anpassade regler är användbara för att hantera programspecifika säkerhetskrav eller minimera falska positiva identifieringar från hanterade regler.
Regeluppsättning för robotskydd
Du kan aktivera en regel för hanterad robotskydd så att den vidtar anpassade åtgärder på begäranden från alla robotkategorier.
Tre robotkategorier stöds:
- Dålig – Dåliga robotar inkluderar robotar från skadliga IP-adresser och robotar som falsifierar sina identiteter. Skadliga botar med skadliga IP-adresser kommer från Microsoft Threat Intelligence-flödets IP-indikatorer med hög tillitsnivå för komprometteringar.
- Bra – Bra robotar innehåller verifierade sökmotorer som bingbot och andra betrodda användaragenter.
- Okänd – Okända robotar klassificeras via publicerade användaragenter utan fler valideringar. Till exempel marknadsanalysator, flödeshämtare och datainsamlingsagenter. Okända botar inkluderar också skadliga IP-adresser som kommer från IP-indikatorer med medelkonfidens för kompromiss, hämtade från Microsoft Threat Intelligence-databasen.
WAF-plattformen hanterar och uppdaterar aktivt robotsignaturer dynamiskt.
Du kan tilldela Microsoft_BotManagerRuleSet_1.0 med hjälp av alternativet Tilldela under Hanterade Regeluppsättningar:
När botskydd är aktiverat blockerar, tillåter eller loggar inkommande begäranden som matchar robotregler baserat på den konfigurerade åtgärden. Den blockerar skadliga robotar, tillåter verifierade sökrobotar, blockerar okända sökrobotar och loggar okända robotar som standard. Du har möjlighet att ange anpassade åtgärder för att blockera, tillåta eller logga olika typer av robotar.
Du kan komma åt WAF-loggar från ett lagringskonto, händelsehubb, log analytics eller skicka loggar till en partnerlösning.
WAF-lägen
Application Gateway WAF kan konfigureras att köras i följande två lägen:
- Identifieringsläge: Övervakar och loggar alla hotaviseringar utan att blockera trafik. Du aktiverar loggningsdiagnostik för Application Gateway i avsnittet Diagnostik. Du måste också se till att WAF-loggen är markerad och aktiverad. Webbapplikationsbrandväggen blockerar inte inkommande begäranden när den körs i detekteringsläge. Använd det här läget under den inledande distributionen och justeringen för att identifiera falska positiva resultat.
- Förebyggande läge: Blockerar intrång och attacker som reglerna identifierar. Angriparen får ett undantag om "403 förbjuden åtkomst" och anslutningen stängs. I förebyggande läge registreras sådana attacker i WAF-loggarna. Detta är det rekommenderade läget för produktionsmiljöer efter korrekt justering.
WAF-motorer
Waf-motorn (Azure Web Application Firewall) är den komponent som inspekterar trafiken och avgör om en begäran innehåller en signatur som representerar ett potentiellt angrepp. När du använder CRS 3.2 eller senare kör din WAF den nya WAF-motorn, vilket ger högre prestanda och en förbättrad uppsättning funktioner. När du använder tidigare versioner av CRS körs din WAF på en äldre motor. Nya funktioner är endast tillgängliga på den nya Azure WAF-motorn, vilket gör CRS 3.2 till den rekommenderade versionen för optimalt skydd.
WAF-åtgärder
Du kan välja vilken åtgärd som ska köras när en begäran matchar ett regelvillkor. Följande åtgärder stöds:
- Tillåt: Begäran skickas via WAF och vidarebefordras till serverdelen. Inga ytterligare regler med lägre prioritet kan blockera den här begäran. Tillåt åtgärder gäller endast för Bot Manager-regeluppsättningen och gäller inte för kärnregeluppsättningen.
- Blockera: Begäran blockeras och WAF skickar ett svar till klienten utan att vidarebefordra begäran till serverdelen.
- Logg: Begäran loggas i WAF-loggarna och WAF fortsätter att utvärdera regler med lägre prioritet.
- Avvikelsepoäng: Standardåtgärden för CRS-regeluppsättningen där den totala avvikelsepoängen ökas när en regel med den här åtgärden matchas. Avvikelsebedömning är inte tillämplig för Bot Manager-regelsamlingen.
Läge för anomalipoängsättning
Open Web Application Security Project (OWASP) har två lägen för att avgöra om trafik ska blockeras: Traditionellt läge och avvikelsebedömningsläge.
I traditionellt läge betraktas trafik som matchar alla regler oberoende av andra regelmatchningar. Det här läget är lätt att förstå. Men bristen på information om hur många regler som matchar en specifik begäran är en begränsning. Därför introducerades avvikelsebedömningsläget (Anomaly Scoring mode). Det är standardvärdet för OWASP 3.x.
I läget Avvikelsebedömning blockeras inte trafik som matchar någon regel omedelbart när brandväggen är i förebyggande läge. Regler har en viss allvarlighetsgrad: Kritisk, Fel, Varning eller Meddelande. Allvarlighetsgraden påverkar ett numeriskt värde för begäran, kallat avvikelsepoäng. Till exempel bidrar en varningsregelmatchning med 3 till poängen. En kritisk regelmatch bidrar med 5.
| allvarlighetsgrad | Värde |
|---|---|
| Kritisk | 5 |
| Fel | 4 |
| Varning | 3 |
| Meddelande | 2 |
Det finns ett tröskelvärde på 5 för avvikelsepoängen för att blockera trafik. Därför räcker det med en enda kritisk regelmatchning för Application Gateway WAF för att blockera en begäran, även i förebyggande läge. Men en matchning med en varningsregel ökar bara avvikelsepoängen med 3, vilket inte är tillräckligt för att blockera trafiken.
Konfiguration
Du kan konfigurera och distribuera alla WAF-principer med hjälp av Azure-portalen, REST-API:er, Azure Resource Manager-mallar och Azure PowerShell.
WAF-övervakning
Det är viktigt att övervaka hälsotillståndet för din programgateway. Du kan stödja detta genom att integrera din WAF och de program som skyddas av den med Microsoft Defender för Cloud, Azure Monitor och Azure Monitor-loggar.
Azure Monitor
Application Gateway-loggar är integrerade med Azure Monitor. På så sätt kan du spåra diagnostikinformation, inklusive WAF-aviseringar och loggar. Du kan komma åt den här funktionen på fliken Diagnostik i Application Gateway-resursen i portalen eller direkt via Azure Monitor.