Rozwiązywanie problemów z zaporą aplikacji internetowej dla usługi aplikacja systemu Azure Gateway

Istnieje kilka czynności, które można wykonać, jeśli żądania, które powinny przejść przez zaporę aplikacji internetowej (WAF) są blokowane.

Najpierw upewnij się, że zapoznasz się z omówieniem zapory aplikacji internetowej i dokumentami konfiguracji zapory aplikacji internetowej. Upewnij się również, że włączono monitorowanie zapory aplikacji internetowej w tych artykułach, wyjaśniono, jak działa zapora aplikacji internetowej, jak działają zestawy reguł zapory aplikacji internetowej oraz jak uzyskiwać dostęp do dzienników zapory aplikacji internetowej.

Zestawy reguł OWASP zostały zaprojektowane tak, aby zostały ściśle gotowe i dostosowane do konkretnych potrzeb aplikacji lub organizacji korzystających z zapory aplikacji internetowej. Jest to całkowicie normalne i oczekiwane w wielu przypadkach tworzenie wykluczeń, reguł niestandardowych, a nawet wyłączanie reguł, które mogą powodować problemy lub fałszywie dodatnie. Zasady poszczególnych witryn i identyfikatorów URI umożliwiają wprowadzanie tych zmian tylko w określonych witrynach/identyfikatorach URI. Dlatego wszelkie zmiany nie powinny mieć wpływu na inne witryny, które mogą nie występować w tych samych problemach.

Informacje o dziennikach zapory aplikacji internetowej

Celem dzienników zapory aplikacji internetowej jest wyświetlenie każdego żądania zgodnego z zaporą aplikacji internetowej lub bloków. Jest to rejestr wszystkich ocenianych żądań, które są zgodne lub blokowane. Jeśli zauważysz, że zapora aplikacji internetowej blokuje żądanie, którego nie powinno (wynik fałszywie dodatni), możesz wykonać kilka czynności. Najpierw zawęź i znajdź konkretne żądanie. Przejrzyj dzienniki, aby znaleźć określony identyfikator URI, znacznik czasu lub identyfikator transakcji żądania. Po znalezieniu skojarzonych wpisów dziennika można zacząć działać na fałszywie dodatnich.

Załóżmy na przykład, że masz legalny ruch zawierający ciąg 1=1 , który chcesz przekazać za pośrednictwem zapory aplikacji internetowej. W przypadku próby żądania zapora aplikacji internetowej blokuje ruch zawierający 1=1 ciąg w dowolnym parametrze lub polu. Jest to ciąg często skojarzony z atakiem polegającym na wstrzyknięciu kodu SQL. Możesz przejrzeć dzienniki i zobaczyć znacznik czasu żądania oraz reguły, które zostały zablokowane/dopasowane.

W poniższym przykładzie widać, że cztery reguły są wyzwalane podczas tego samego żądania (przy użyciu pola TransactionId). Pierwszy z nich mówi, że jest zgodny, ponieważ użytkownik użył numerycznego/adresu URL adresu IP dla żądania, co zwiększa wynik anomalii o trzy, ponieważ jest to ostrzeżenie. Następna zgodna reguła to 942130, czyli ta, której szukasz. Możesz zobaczyć element 1=1 w details.data polu . Dodatkowo zwiększa to wynik anomalii o trzy ponownie, ponieważ jest to również ostrzeżenie. Ogólnie rzecz biorąc, każda reguła, która ma akcję Dopasowana , zwiększa wynik anomalii, a w tym momencie wynik anomalii wyniesie sześć. Aby uzyskać więcej informacji, zobacz Tryb oceniania anomalii.

Ostatnie dwa wpisy dziennika pokazują, że żądanie zostało zablokowane, ponieważ wynik anomalii był wystarczająco wysoki. Te wpisy mają inną akcję niż pozostałe dwa. Pokazują, że rzeczywiście zablokowali żądanie. Te reguły są obowiązkowe i nie można ich wyłączyć. Nie należy ich traktować jako reguł, ale bardziej jako podstawowej infrastruktury wewnętrznej zapory aplikacji internetowej.

{ 
    "resourceId": "/SUBSCRIPTIONS/A6F44B25-259E-4AF5-888A-386FED92C11B/RESOURCEGROUPS/DEMOWAF_V2/PROVIDERS/MICROSOFT.NETWORK/APPLICATIONGATEWAYS/DEMOWAF-V2", 
    "operationName": "ApplicationGatewayFirewall", 
    "category": "ApplicationGatewayFirewallLog", 
    "properties": { 
        "instanceId": "appgw_3", 
        "clientIp": "167.220.2.139", 
        "clientPort": "", 
        "requestUri": "\/", 
        "ruleSetType": "OWASP_CRS", 
        "ruleSetVersion": "3.0.0", 
        "ruleId": "920350", 
        "message": "Host header is a numeric IP address", 
        "action": "Matched", 
        "site": "Global", 
        "details": { 
            "message": "Warning. Pattern match \\\"^[\\\\\\\\d.:]+$\\\" at REQUEST_HEADERS:Host. ", 
            "data": "40.90.218.160", 
            "file": "rules\/REQUEST-920-PROTOCOL-ENFORCEMENT.conf\\\"", 
            "line": "791" 
        }, 
        "hostname": "vm000003", 
        "transactionId": "AcAcAcAcAKH@AcAcAcAcAyAt" 
    } 
} 
{ 
    "resourceId": "/SUBSCRIPTIONS/A6F44B25-259E-4AF5-888A-386FED92C11B/RESOURCEGROUPS/DEMOWAF_V2/PROVIDERS/MICROSOFT.NETWORK/APPLICATIONGATEWAYS/DEMOWAF-V2", 
    "operationName": "ApplicationGatewayFirewall", 
    "category": "ApplicationGatewayFirewallLog", 
    "properties": { 
        "instanceId": "appgw_3", 
        "clientIp": "167.220.2.139", 
        "clientPort": "", 
        "requestUri": "\/", 
        "ruleSetType": "OWASP_CRS", 
        "ruleSetVersion": "3.0.0", 
        "ruleId": "942130", 
        "message": "SQL Injection Attack: SQL Tautology Detected.", 
        "action": "Matched", 
        "site": "Global", 
        "details": { 
            "message": "Warning. Pattern match \\\"(?i:([\\\\\\\\s'\\\\\\\"`\\\\\\\\(\\\\\\\\)]*?)([\\\\\\\\d\\\\\\\\w]++)([\\\\\\\\s'\\\\\\\"`\\\\\\\\(\\\\\\\\)]*?)(?:(?:=|\\u003c=\\u003e|r?like|sounds\\\\\\\\s+like|regexp)([\\\\\\\\s'\\\\\\\"`\\\\\\\\(\\\\\\\\)]*?)\\\\\\\\2|(?:!=|\\u003c=|\\u003e=|\\u003c\\u003e|\\u003c|\\u003e|\\\\\\\\^|is\\\\\\\\s+not|not\\\\\\\\s+like|not\\\\\\\\s+regexp)([\\\\\\\\s'\\\\\\\"`\\\\\\\\(\\\\\\\\)]*?)(?!\\\\\\\\2)([\\\\\\\\d\\\\\\\\w]+)))\\\" at ARGS:text1. ", 
            "data": "Matched Data: 1=1 found within ARGS:text1: 1=1", 
            "file": "rules\/REQUEST-942-APPLICATION-ATTACK-SQLI.conf\\\"", 
            "line": "554" 
        }, 
        "hostname": "vm000003", 
        "transactionId": "AcAcAcAcAKH@AcAcAcAcAyAt" 
    } 
} 
{ 
    "resourceId": "/SUBSCRIPTIONS/A6F44B25-259E-4AF5-888A-386FED92C11B/RESOURCEGROUPS/DEMOWAF_V2/PROVIDERS/MICROSOFT.NETWORK/APPLICATIONGATEWAYS/DEMOWAF-V2", 
    "operationName": "ApplicationGatewayFirewall", 
    "category": "ApplicationGatewayFirewallLog", 
    "properties": { 
        "instanceId": "appgw_3", 
        "clientIp": "167.220.2.139", 
        "clientPort": "", 
        "requestUri": "\/", 
        "ruleSetType": "", 
        "ruleSetVersion": "", 
        "ruleId": "0", 
        "message": "Mandatory rule. Cannot be disabled. Inbound Anomaly Score Exceeded (Total Score: 8)", 
        "action": "Blocked", 
        "site": "Global", 
        "details": { 
            "message": "Access denied with code 403 (phase 2). Operator GE matched 5 at TX:anomaly_score. ", 
            "data": "", 
            "file": "rules\/REQUEST-949-BLOCKING-EVALUATION.conf\\\"", 
            "line": "57" 
        }, 
        "hostname": "vm000003", 
        "transactionId": "AcAcAcAcAKH@AcAcAcAcAyAt" 
    } 
} 
{ 
    "resourceId": "/SUBSCRIPTIONS/A6F44B25-259E-4AF5-888A-386FED92C11B/RESOURCEGROUPS/DEMOWAF_V2/PROVIDERS/MICROSOFT.NETWORK/APPLICATIONGATEWAYS/DEMOWAF-V2", 
    "operationName": "ApplicationGatewayFirewall", 
    "category": "ApplicationGatewayFirewallLog", 
    "properties": { 
        "instanceId": "appgw_3", 
        "clientIp": "167.220.2.139", 
        "clientPort": "", 
        "requestUri": "\/", 
        "ruleSetType": "", 
        "ruleSetVersion": "", 
        "ruleId": "0", 
        "message": "Mandatory rule. Cannot be disabled. Inbound Anomaly Score Exceeded (Total Inbound Score: 8 - SQLI=5,XSS=0,RFI=0,LFI=0,RCE=0,PHPI=0,HTTP=0,SESS=0): SQL Injection Attack: SQL Tautology Detected.", 
        "action": "Blocked", 
        "site": "Global", 
        "details": { 
            "message": "Warning. Operator GE matched 5 at TX:inbound_anomaly_score. ", 
            "data": "", 
            "file": "rules\/RESPONSE-980-CORRELATION.conf\\\"", 
            "line": "73" 
        }, 
        "hostname": "vm000003", 
        "transactionId": "AcAcAcAcAKH@AcAcAcAcAyAt" 
    }
}

Naprawianie wyników fałszywie dodatnich

Dzięki tym informacjom i wiedzy, że reguła 942130 jest zgodna 1=1 z ciągiem, możesz wykonać kilka czynności, aby uniemożliwić blokowanie ruchu:

  • Korzystanie z listy wykluczeń

    Aby uzyskać więcej informacji na temat list wykluczeń, zobacz Konfiguracja zapory aplikacji internetowej.

  • Wyłącz regułę.

Korzystanie z listy wykluczeń

Aby podjąć świadomą decyzję o obsłudze wyników fałszywie dodatnich, ważne jest zapoznanie się z technologiami używanymi przez aplikację. Załóżmy na przykład, że nie ma serwera SQL w stosie technologii i otrzymujesz fałszywie dodatnie wyniki związane z tymi regułami. Wyłączenie tych reguł niekoniecznie osłabia bezpieczeństwo.

Jedną z zalet korzystania z listy wykluczeń jest wyłączenie tylko określonej części żądania. Oznacza to jednak, że określone wykluczenie ma zastosowanie do całego ruchu przechodzącego przez zaporę aplikacji internetowej, ponieważ jest to ustawienie globalne. Na przykład może to prowadzić do problemu, jeśli wartość 1=1 jest prawidłowym żądaniem w treści określonej aplikacji, ale nie dla innych. Kolejną korzyścią jest możliwość wyboru między treścią, nagłówkami i plikami cookie, które mają zostać wykluczone, jeśli zostanie spełniony określony warunek, w przeciwieństwie do wykluczenia całego żądania.

Czasami istnieją przypadki, w których określone parametry są przekazywane do zapory aplikacji internetowej w sposób, który może nie być intuicyjny. Na przykład istnieje token, który jest przekazywany podczas uwierzytelniania przy użyciu identyfikatora Entra firmy Microsoft. Ten token, __RequestVerificationToken, zwykle jest przekazywany jako plik cookie żądania. Jednak w niektórych przypadkach, gdy pliki cookie są wyłączone, ten token jest również przekazywany jako atrybut żądania lub arg. W takim przypadku należy się upewnić, że __RequestVerificationToken jest dodawana do listy wykluczeń jako nazwa atrybutu żądania.

Wykluczenia

W tym przykładzie chcesz wykluczyć nazwę atrybutu Request, która jest równa text1. Jest to oczywiste, ponieważ nazwa atrybutu jest widoczna w dziennikach zapory: dane: Dopasowane dane: 1=1 znalezione w ARGS:text1: 1=1. Atrybut to text1. Możesz również znaleźć tę nazwę atrybutu na kilka innych sposobów, zobacz Znajdowanie nazw atrybutów żądania.

Listy wykluczeń zapory aplikacji internetowej

Wykluczenia dla zapory aplikacji internetowej można tworzyć w usłudze Application Gateway na różnych poziomach zakresu. Aby uzyskać więcej informacji, zobacz Listy wykluczeń zapory aplikacji internetowej.

Wyłączanie reguł

Innym sposobem obejścia wyniku fałszywie dodatniego jest wyłączenie reguły dopasowanej do danych wejściowych, którą zapora aplikacji internetowej uważała za złośliwą. Ponieważ przeanalizowano dzienniki zapory aplikacji internetowej i zawęziono regułę do 942130, możesz ją wyłączyć w witrynie Azure Portal. Zobacz Dostosowywanie reguł zapory aplikacji internetowej za pośrednictwem witryny Azure Portal.

Jedną z zalet wyłączenia reguły jest to, że jeśli wiesz, że cały ruch, który zawiera określony warunek, który jest zwykle zablokowany, jest prawidłowy ruch, możesz wyłączyć regułę dla całej zapory aplikacji internetowej. Jeśli jednak jest to tylko prawidłowy ruch w określonym przypadku użycia, możesz otworzyć lukę w zabezpieczeniach, wyłączając tę regułę dla całej zapory aplikacji internetowej, ponieważ jest to ustawienie globalne.

Jeśli chcesz użyć programu Azure PowerShell, zobacz Dostosowywanie reguł zapory aplikacji internetowej za pomocą programu PowerShell. Jeśli chcesz użyć interfejsu wiersza polecenia platformy Azure, zobacz Dostosowywanie reguł zapory aplikacji internetowej za pomocą interfejsu wiersza polecenia platformy Azure.

Reguły zapory aplikacji internetowej

Znajdowanie nazw atrybutów żądania

Za pomocą programu Fiddler sprawdzasz poszczególne żądania i określasz, jakie konkretne pola strony internetowej są wywoływane. Może to pomóc wykluczyć niektóre pola z inspekcji przy użyciu list wykluczeń.

W tym przykładzie widać, że pole, w którym wprowadzono ciąg 1=1 , nosi nazwę text1.

Zrzut ekranu przedstawiający debuger sieci Web Programu Telerik Fiddler. Na karcie Raw (Nieprzetworzone) wartość 1 = 1 jest widoczna po tekście nazwy1.

Jest to pole, które można wykluczyć. Aby dowiedzieć się więcej na temat list wykluczeń, zobacz Listy wykluczeń zapory aplikacji internetowej. W tym przypadku można wykluczyć ocenę, konfigurując następujące wykluczenie:

Wykluczenie zapory aplikacji internetowej

Możesz również sprawdzić dzienniki zapory, aby uzyskać informacje, aby zobaczyć, co należy dodać do listy wykluczeń. Aby włączyć rejestrowanie, zobacz Kondycja zaplecza, dzienniki zasobów i metryki dla usługi Application Gateway.

Sprawdź dziennik zapory i wyświetl plik PT1H.json o godzinie, w której wystąpiło żądanie, które chcesz sprawdzić.

W tym przykładzie widać, że masz cztery reguły o tym samym identyfikatorze TransactionID i że wszystkie te reguły wystąpiły dokładnie w tym samym czasie:

-	{
-	    "resourceId": "/SUBSCRIPTIONS/A6F44B25-259E-4AF5-888A-386FED92C11B/RESOURCEGROUPS/DEMOWAF_V2/PROVIDERS/MICROSOFT.NETWORK/APPLICATIONGATEWAYS/DEMOWAF-V2",
-	    "operationName": "ApplicationGatewayFirewall",
-	    "category": "ApplicationGatewayFirewallLog",
-	    "properties": {
-	        "instanceId": "appgw_3",
-	        "clientIp": "167.220.2.139",
-	        "clientPort": "",
-	        "requestUri": "\/",
-	        "ruleSetType": "OWASP_CRS",
-	        "ruleSetVersion": "3.0.0",
-	        "ruleId": "920350",
-	        "message": "Host header is a numeric IP address",
-	        "action": "Matched",
-	        "site": "Global",
-	        "details": {
-	            "message": "Warning. Pattern match \\\"^[\\\\\\\\d.:]+$\\\" at REQUEST_HEADERS:Host. ",
-	            "data": "40.90.218.160",
-	            "file": "rules\/REQUEST-920-PROTOCOL-ENFORCEMENT.conf\\\"",
-	            "line": "791"
-	        },
-	        "hostname": "vm000003",
-	        "transactionId": "AcAcAcAcAKH@AcAcAcAcAyAt"
-	    }
-	}
-	{
-	    "resourceId": "/SUBSCRIPTIONS/A6F44B25-259E-4AF5-888A-386FED92C11B/RESOURCEGROUPS/DEMOWAF_V2/PROVIDERS/MICROSOFT.NETWORK/APPLICATIONGATEWAYS/DEMOWAF-V2",
-	    "operationName": "ApplicationGatewayFirewall",
-	    "category": "ApplicationGatewayFirewallLog",
-	    "properties": {
-	        "instanceId": "appgw_3",
-	        "clientIp": "167.220.2.139",
-	        "clientPort": "",
-	        "requestUri": "\/",
-	        "ruleSetType": "OWASP_CRS",
-	        "ruleSetVersion": "3.0.0",
-	        "ruleId": "942130",
-	        "message": "SQL Injection Attack: SQL Tautology Detected.",
-	        "action": "Matched",
-	        "site": "Global",
-	        "details": {
-	            "message": "Warning. Pattern match \\\"(?i:([\\\\\\\\s'\\\\\\\"`\\\\\\\\(\\\\\\\\)]*?)([\\\\\\\\d\\\\\\\\w]++)([\\\\\\\\s'\\\\\\\"`\\\\\\\\(\\\\\\\\)]*?)(?:(?:=|\\u003c=\\u003e|r?like|sounds\\\\\\\\s+like|regexp)([\\\\\\\\s'\\\\\\\"`\\\\\\\\(\\\\\\\\)]*?)\\\\\\\\2|(?:!=|\\u003c=|\\u003e=|\\u003c\\u003e|\\u003c|\\u003e|\\\\\\\\^|is\\\\\\\\s+not|not\\\\\\\\s+like|not\\\\\\\\s+regexp)([\\\\\\\\s'\\\\\\\"`\\\\\\\\(\\\\\\\\)]*?)(?!\\\\\\\\2)([\\\\\\\\d\\\\\\\\w]+)))\\\" at ARGS:text1. ",
-	            "data": "Matched Data: 1=1 found within ARGS:text1: 1=1",
-	            "file": "rules\/REQUEST-942-APPLICATION-ATTACK-SQLI.conf\\\"",
-	            "line": "554"
-	        },
-	        "hostname": "vm000003",
-	        "transactionId": "AcAcAcAcAKH@AcAcAcAcAyAt"
-	    }
-	}
-	{
-	    "resourceId": "/SUBSCRIPTIONS/A6F44B25-259E-4AF5-888A-386FED92C11B/RESOURCEGROUPS/DEMOWAF_V2/PROVIDERS/MICROSOFT.NETWORK/APPLICATIONGATEWAYS/DEMOWAF-V2",
-	    "operationName": "ApplicationGatewayFirewall",
-	    "category": "ApplicationGatewayFirewallLog",
-	    "properties": {
-	        "instanceId": "appgw_3",
-	        "clientIp": "167.220.2.139",
-	        "clientPort": "",
-	        "requestUri": "\/",
-	        "ruleSetType": "",
-	        "ruleSetVersion": "",
-	        "ruleId": "0",
-	        "message": "Mandatory rule. Cannot be disabled. Inbound Anomaly Score Exceeded (Total Score: 8)",
-	        "action": "Blocked",
-	        "site": "Global",
-	        "details": {
-	            "message": "Access denied with code 403 (phase 2). Operator GE matched 5 at TX:anomaly_score. ",
-	            "data": "",
-	            "file": "rules\/REQUEST-949-BLOCKING-EVALUATION.conf\\\"",
-	            "line": "57"
-	        },
-	        "hostname": "vm000003",
-	        "transactionId": "AcAcAcAcAKH@AcAcAcAcAyAt"
-	    }
-	}
-	{
-	    "resourceId": "/SUBSCRIPTIONS/A6F44B25-259E-4AF5-888A-386FED92C11B/RESOURCEGROUPS/DEMOWAF_V2/PROVIDERS/MICROSOFT.NETWORK/APPLICATIONGATEWAYS/DEMOWAF-V2",
-	    "operationName": "ApplicationGatewayFirewall",
-	    "category": "ApplicationGatewayFirewallLog",
-	    "properties": {
-	        "instanceId": "appgw_3",
-	        "clientIp": "167.220.2.139",
-	        "clientPort": "",
-	        "requestUri": "\/",
-	        "ruleSetType": "",
-	        "ruleSetVersion": "",
-	        "ruleId": "0",
-	        "message": "Mandatory rule. Cannot be disabled. Inbound Anomaly Score Exceeded (Total Inbound Score: 8 - SQLI=5,XSS=0,RFI=0,LFI=0,RCE=0,PHPI=0,HTTP=0,SESS=0): SQL Injection Attack: SQL Tautology Detected.",
-	        "action": "Blocked",
-	        "site": "Global",
-	        "details": {
-	            "message": "Warning. Operator GE matched 5 at TX:inbound_anomaly_score. ",
-	            "data": "",
-	            "file": "rules\/RESPONSE-980-CORRELATION.conf\\\"",
-	            "line": "73"
-	        },
-	        "hostname": "vm000003",
-	        "transactionId": "AcAcAcAcAKH@AcAcAcAcAyAt"
-	    }
-	}

Mając wiedzę na temat działania zestawów reguł CRS i że zestaw reguł CRS 3.0 działa z systemem oceniania anomalii (zobacz Web Application Firewall for aplikacja systemu Azure Gateway) wiesz, że dwie dolne reguły z akcją: Zablokowana właściwość blokuje na podstawie łącznego wyniku anomalii. Reguły, na których należy skupić się, to dwa pierwsze.

Pierwszy wpis jest rejestrowany, ponieważ użytkownik użył numerycznego adresu IP, aby przejść do usługi Application Gateway, co można zignorować w tym przypadku.

Drugi (reguła 942130) jest interesujący. Możesz zobaczyć w szczegółach, że pasuje do wzorca (1=1), a pole nosi nazwę text1. Wykonaj te same poprzednie kroki, aby wykluczyć nazwę atrybutu żądania, która jest 1=1równa .

Znajdowanie nazw nagłówków żądania

Narzędzie Fiddler jest po raz kolejny przydatne do znajdowania nazw nagłówków żądania. Na poniższym zrzucie ekranu można zobaczyć nagłówki dla tego żądania GET, które obejmują typ zawartości, agenta użytkownika itd.

Zrzut ekranu przedstawiający debuger sieci Web Programu Telerik Fiddler. Karta Nieprzetworzone wyświetla szczegóły nagłówka żądania, takie jak połączenie, typ zawartości i agent użytkownika.

Innym sposobem wyświetlania nagłówków żądań i odpowiedzi jest zapoznanie się z narzędziami deweloperów programu Chrome. Możesz nacisnąć klawisz F12 lub kliknąć prawym przyciskiem myszy pozycję ->Inspekcja ->Narzędzia deweloperskie, a następnie wybrać kartę Sieć. Załaduj stronę internetową i wybierz żądanie, które chcesz sprawdzić.

Chrome F12

Jeśli żądanie zawiera pliki cookie, można wybrać kartę Pliki cookie , aby wyświetlić je w programie Fiddler.

Ograniczanie parametrów globalnych w celu wyeliminowania wyników fałszywie dodatnich

  • Wyłączanie inspekcji treści żądania

    Ustawiając opcję Sprawdź treść żądania na wyłączone, treść żądania ruchu nie jest oceniana przez zaporę aplikacji internetowej. Może to być przydatne, jeśli wiesz, że treść żądania nie jest złośliwa dla aplikacji.

    Po wyłączeniu tej opcji tylko treść żądania pomija inspekcję. Nagłówki i pliki cookie są nadal sprawdzane, chyba że poszczególne z nich zostaną wykluczone przy użyciu funkcji listy wykluczeń.

  • Wyłączanie maksymalnego limitu treści żądania

    Wyłączając maksymalny limit treści żądania, duże treści żądań mogą być przetwarzane przez zaporę aplikacji internetowej bez odrzucenia za zbyt duże. Może to być przydatne, jeśli regularnie masz duże żądania.

    Po wyłączeniu tej opcji treść żądania będzie sprawdzana tylko do maksymalnego limitu inspekcji treści żądania. Jeśli w żądaniu istnieje złośliwa zawartość wykraczająca poza maksymalny limit kontroli treści żądania, zapora aplikacji internetowej nie wykryje jej.

  • Wyłączanie maksymalnych limitów rozmiaru pliku

    Wyłączenie limitów rozmiaru pliku dla zapory aplikacji internetowej umożliwia przekazywanie dużych plików bez odrzucania tych plików przez zaporę aplikacji internetowej. Zezwalając na przekazywanie dużych plików, zwiększa się ryzyko przeciążenia zaplecza. Jeśli wiesz, że maksymalny rozmiar przekazywania plików może być, możesz ustawić limit rozmiaru dla przekazywania plików nieco powyżej oczekiwanego maksymalnego rozmiaru. Ograniczenie rozmiaru pliku do normalnego przypadku użycia aplikacji jest innym sposobem zapobiegania atakom. Jeśli jednak przekazywanie plików jest regularnie poza maksymalnym limitem rozmiaru przekazywania plików, może być konieczne całkowite wyłączenie limitów rozmiaru przekazywania plików, aby uniknąć wyników fałszywie dodatnich.

    Uwaga

    Jeśli wiesz, że aplikacja nigdy nie będzie potrzebować przekazywania plików powyżej danego rozmiaru, możesz je ograniczyć, ustawiając limit.

Metryki zapory (tylko WAF_v1)

W przypadku zapór aplikacji internetowych w wersji 1 w portalu są teraz dostępne następujące metryki:

  1. Liczba zablokowanych żądań zapory aplikacji internetowej Liczba żądań, które zostały zablokowane
  2. Zapora aplikacji internetowej Zablokowana reguła zlicz wszystkie reguły, które zostały dopasowane , a żądanie zostało zablokowane
  3. Łączna dystrybucja reguł zapory aplikacji internetowej Wszystkie reguły, które zostały dopasowane podczas oceny

Aby włączyć metryki, wybierz kartę Metryki w portalu i wybierz jedną z trzech metryk.

Następne kroki

Zobacz Jak skonfigurować zaporę aplikacji internetowej w usłudze Application Gateway.