이 섹션에는 현재 WAF 규칙 세트에 사용할 수 있는 모든 설정이 글로벌 , 규칙 , 팜의 세 탭으로 정리되어 표시됩니다. 변경 사항을 저장하려면 적용 버튼을 클릭하는 것을 잊지 마세요 .
전역 설정 WAF 규칙 세트 #
이 구성은 세트에 포함된 모든 규칙의 동작을 관리합니다.
이름규칙을 쉽게 식별하는 레이블입니다. 규칙 세트에 선택한 이름은 수정할 수 없습니다.
요청 본문 확인HTTP 요청 본문을 분석할지 여부를 결정하는 플래그입니다. 비활성화하면 본문은 건너뛰어지고, 요청 본문 매개변수와 일치하는 규칙은 처리되지 않습니다.
요청 본문 한도검사를 위해 저장되는 요청 본문의 최대 바이트 수입니다. 0으로 설정하면 WAF가 콘텐츠 길이 크기를 완전히 저장합니다. 제한을 설정하는 것이 좋습니다.
응답 본문 확인HTTP 응답 본문을 분석할지 여부를 결정하는 플래그입니다. 비활성화하면 본문은 건너뛰어지고 응답 본문 매개변수와 일치하는 규칙은 처리되지 않습니다. 다음보다 큰 응답은 524288 바이트(512KB)은 무시됩니다.
기본 작업규칙에 해상도가 지정되지 않은 경우의 기본 해상도입니다. 가능한 작업은 다음과 같습니다.
- 허용WAF는 HTTP 트랜잭션이 완료될 때까지 처리를 계속합니다.
- 패스WAF는 HTTP 트랜잭션을 중단하지 않고 다음 규칙을 평가합니다.
- 거부현재 HTTP 트랜잭션이 종료됩니다. 더 이상 규칙이 평가되지 않습니다. 1단계 또는 2단계(요청 분석)에서 규칙이 일치하면 요청은 백엔드에 도달하지 않습니다. 3단계 또는 4단계(응답 분석)에서 규칙이 일치하면 응답은 클라이언트에 도달하지 않습니다.
- 리디렉션HTTP 트랜잭션이 중단되고 HTTP 리디렉션이 클라이언트로 전송됩니다.
리디렉션 URL규칙이 일치하고 리디렉션 해결이 설정되면 클라이언트에 전송되는 URL입니다.
기본 단계규칙에 단계가 지정되지 않은 경우의 기본 단계입니다. 단계는 WAF 규칙을 후킹할 수 있는 HTTP 단계입니다. 정의된 단계는 다음과 같습니다.
- 요청 헤더가 수신되었습니다.클라이언트의 모든 요청 헤더가 로드 밸런서에 의해 읽혀지면 실행됩니다.
- 요청 본문이 수신되었습니다.클라이언트의 전체 요청 본문이 로드 밸런서에 버퍼링되면 실행됩니다.
- 응답 리더가 수신되었습니다.로드 밸런서가 서버의 모든 응답 헤더를 읽은 후 실행됩니다.
- 응답 본문이 수신되었습니다.로드 밸런서가 서버의 전체 응답 본문을 읽을 때 실행됩니다.
- 로깅 이전WAF 프로세스가 로깅 작업을 완료하면 실행됩니다.
기본 로그규칙 설정에 아무런 작업도 지정되지 않은 경우 사용되는 기본 로그 작업입니다.
로깅만이 모드를 활성화하면 해당 세트에 있는 규칙의 해결 매개변수가 실행되지 않습니다. 이 모드는 해당 세트가 실행 중일 때만 사용할 수 있습니다.
규칙 비활성화 #
이러한 표를 사용하면 규칙을 수정하지 않고도 세트 내의 규칙을 비활성화할 수 있습니다.
활성화된 규칙. 현재 세트에서 활성화된 규칙 목록은 해당 규칙으로 식별됩니다. 규칙 ID 설명.
비활성화된 규칙. 현재 세트에서 비활성화된 규칙 목록입니다.
WAF 규칙 목록 #
규칙 섹션 에서는 HTTP 공격을 탐지하고 방어하는 WAF 규칙을 생성하고 수정할 수 있습니다.
이 규칙들은 화면에 표시된 순서대로 순차적으로 평가됩니다. 규칙을 정렬하려면 정렬 버튼을 활성화하고 원하는 위치로 드래그 앤 드롭하세요.
규칙 매개변수 #
규칙에 대한 가능한 매개변수는 다음과 같습니다.
ID규칙 집합 내에서 규칙을 식별합니다. 이 식별자는 집합 내 규칙의 위치에 해당합니다.
규칙 ID규칙의 고유 식별자입니다. 팜은 중복된 규칙 ID가 포함된 WAF 세트에 연결할 수 없습니다.
기술설명규칙을 식별하는 설명 메시지로, 매치가 성공적으로 이루어졌을 때 기록됩니다.
상규칙이 실행되는 HTTP 요청 단계입니다. 가능한 단계는 다음과 같습니다.
- 요청 헤더가 수신되었습니다.클라이언트의 모든 요청 헤더가 로드 밸런서에 의해 읽혀지면 실행됩니다.
- 요청 본문이 수신되었습니다.클라이언트의 전체 요청 본문이 로드 밸런서에 버퍼링되면 실행됩니다.
- 응답 리더가 수신되었습니다.로드 밸런서가 서버의 모든 응답 헤더를 읽은 후 실행됩니다.
- 응답 본문이 수신되었습니다.로드 밸런서가 서버의 전체 응답 본문을 읽을 때 실행됩니다.
- 로깅 이전WAF 프로세스가 로깅 작업을 완료하면 실행됩니다.
해결 방법 . 모든 일치 조건이 충족될 경우 실행될 동작입니다. 옵션은 다음과 같습니다.
- 허용. 일치가 발생하면 현재 HTTP 트랜잭션에 대한 추가 규칙 평가를 중지합니다.
- 패스HTTP 트랜잭션을 중단하지 않고 다음 규칙을 계속 평가합니다.
- 거부현재 HTTP 트랜잭션을 종료하여 추가 규칙 평가를 방지합니다. 1단계 또는 2단계(요청 분석)에서 일치하는 경우 요청은 백엔드에 도달하지 않습니다. 3단계 또는 4단계(응답 분석)에서 일치하는 경우 응답은 클라이언트에 도달하지 않습니다.
- 리디렉션HTTP 트랜잭션을 중단하고 클라이언트에게 HTTP 리디렉션을 보냅니다.
- 기본 작업. 아무것도 적용되지 않을 때 설정된 해상도는 일반적으로 다음과 같이 설정됩니다. 허용.
리디렉션 URL리디렉션 확인이 포함된 규칙이 실행되는 경우 클라이언트가 리디렉션되는 URL입니다.
건너뛰기모든 일치 조건이 충족되면 규칙은 이 필드에 지정된 개수의 규칙을 건너뜁니다.
이후 건너뛰기모든 일치 조건이 충족되면 규칙은 다른 방화벽 위치로 이동합니다. 규칙은 '표시' 또는 다른 규칙 ID로 이동할 수 있으며, 이동 후 실행되는 규칙 ID는 현재 규칙과 동일한 단계에 있습니다.
실행하다첫 번째 일치가 달성되면 실행될 LUA 스크립트의 경로입니다. 스크립트는 사전에 로드 밸런서에 업로드되어야 합니다.
로그이 기능을 활성화하면 첫 번째 일치 항목이 달성될 때 규칙이 기록됩니다.
원시에서 WAF 규칙 편집 #
만약 입력 양식이 특정 WAF 규칙을 충분히 설명하지 못하거나 관리자가 SecLang 구문에 익숙하지 않은 경우, 편집 옵션을 통해 규칙 또는 여러 규칙을 일괄적으로 생성할 수 있습니다. 이 필드에는 모든 지침을 입력할 수 있습니다. 지침과 매개변수가 SecLang 구문에서 지원되는 경우, 양식에 입력된 매개변수는 표시되지 않습니다. 하지만 편집 양식에는 표시되며 런타임 시 처리됩니다.
다음은 폼 모드와 원시 모드의 예입니다.
양식 모드 #
이 모드는 WAF 규칙을 편집하는 데 더욱 사용자 친화적입니다.
원시 모드 #
이 모드는 고급 사용자를 위한 것입니다.
WAF 규칙 생성 #
새 규칙을 추가하면 세트의 다른 규칙에 추가됩니다. 새 규칙을 만드는 방법은 세 가지가 있습니다.
- 동작. 양식을 사용하여 기본 규칙을 만듭니다. 양식의 매개변수는 다음에서 설명합니다. WAF 규칙 목록 부분. 규칙 실행이 조건부인 경우 조건 추가 버튼을 눌러 실행 조건을 설정합니다.

- 표시. 일치 조건이 충족되면 사용되는 방화벽 표시를 설정합니다. 예상 매개변수는 표시를 식별하는 이름입니다.

- 관습. SecLang 구문의 규칙(또는 규칙 배치)을 허용합니다. 자세한 내용은 SecLang 구문을 방문하세요. libmodsecurity 프로젝트 문서.

조건 목록 #
아래 이미지의 표는 규칙이 적용되기 위해 HTTP 파싱 패킷이 반드시 충족해야 하는 조건 목록을 보여줍니다. 모든 일치는 규칙에 정의된 단계에서 실행됩니다. 일치 항목은 순차적으로 검사되며, 모든 일치 항목이 충족되면 규칙이 적용됩니다.
WAF는 일치 여부를 평가하기 위해 변수 목록에 대해 연산( Operator 및 Operating 매개변수)을 실행합니다. 목록에 있는 변수 중 일부가 해당 연산을 만족하면 성공적인 것으로 간주됩니다. 예를 들어, 다음 이미지에서는 클라이언트가 보낸 요청 헤더 목록에서 "IMAGES" 헤더 를 찾습니다. 먼저 각 헤더를 64진수로 디코딩한 다음 소문자로 변환합니다. 변수 변환이 완료되면 정규 표현식을 적용하여 변환된 변수 목록에서 " images" 문자열을 찾습니다. 다중 일치 옵션은 각 변환 작업(64진수 디코딩 후 및 소문자 변환 후)에 대해 일치 여부를 시도합니다.
조건 생성 #
일치 조건은 WAF 규칙을 실행하기 위해 충족되어야 하는 조건을 생성합니다. 일치 여부를 평가하기 위해 WAF는 변수 목록에 대해 작업( Operator 및 Operating 매개변수)을 실행합니다. 작업과 목록의 변수 간에 일치가 있으면 일치가 성공한 것으로 간주됩니다. 예를 들어, 요청 헤더 목록의 가상 호스트 HTTP 필드에서 localhost( 127.0.0.1 ) 를 찾으려면 다음 구성을 사용할 수 있습니다.
조건 설정을 위한 구성 매개변수는 다음과 같습니다.
변하기 쉬운. 이는 규칙이 HTTP 트랜잭션의 어느 부분을 일치시키려고 할지를 나타냅니다. 나열된 변수 중에서 선택할 수 있으며, 일부 변수가 일치하면 일치 항목이 유효합니다. 변수 필드를 클릭하면 드롭다운 메뉴가 나타납니다. 변수 구성에 대한 정보는 변수 만들기 안내
변환. 변수에 적용된 수정 사항 목록입니다. 변환은 필드에 표시된 순서대로 순차적으로 적용됩니다. 다중 일치 옵션을 사용하여 적용된 각 변환에 대해 일치를 시도할 수 있습니다. 변환은 HTTP 트랜잭션의 정보를 수정하지 않으며, 임시 컨텍스트에 저장되었다가 작업이 완료되면 제거됩니다. 변환 목록은 다음에서 확인할 수 있습니다. 여기에서 확인하세요이 매개변수는 회피 방지 기술을 제거하거나 체계화 데이터를 제거하는 데 사용됩니다.
운영자. 이는 규칙이 일치를 시도하는 방식을 정의합니다. 이 매개변수는 일반적으로 다음과 결합됩니다. 운영. 운영자 목록을 찾을 수 있습니다. 여기에서 확인하세요.
운영. 이는 규칙이 일치시키려는 내용을 정의합니다. 이 매개변수는 일반적으로 연산자와 결합됩니다. 예상 값의 유형은 연산자와 일치해야 합니다.
멀티 매치. 이 매개변수는 둘 이상의 변환이 구성된 경우에 사용됩니다. 규칙은 변수를 일치시키려고 시도합니다. 운영자및 운영 각 변환 값에 대해, 가능한 값은 true(다중 일치 활성화) 또는 false(다중 일치 기능 비활성화)입니다.
일치하지 않음. 이 체크박스가 활성화되면 매치 결과가 부정되어 다음으로 변환됩니다. 참된 결과가 언제 그릇된 그 반대.
변수 만들기 #
변수는 일치 조건에서 필수 매개변수입니다. 변수는 HTTP 요청 / 응답 에서 정보를 검색할 부분을 지정합니다.
변수 . 이 매개변수는 HTTP 요청/응답의 어떤 필드를 검사할지 지정합니다(예: 시간, 서버).
변수의 인수입니다 . 변수를 선택할 경우, 변수 내의 특정 요소를 지정해야 할 수도 있습니다. 예를 들어, 아래 이미지는 요청 헤더의 호스트를 확인하는 방법을 보여줍니다.
변수의 요소 개수를 세어봅니다 . 이 확인란을 선택하면 변수에 포함된 요소의 개수가 계산됩니다. 이 기능은 변수가 리스트일 때 유용합니다.
일치 항목에서 이 변수를 무시합니다 . 이 확인란을 선택하면 일치 항목 검사에서 해당 변수가 제외됩니다. 이 기능은 변수에 값 목록이 포함되어 있지만 그중 하나를 검사에서 제외해야 할 때 유용합니다.
변수 테이블 #
| 변하기 쉬운 | 기술설명 |
|---|---|
| ARGS | 요청의 인수 값 모음. |
| ARGS_JSON | JSON 요청의 인수 값 모음입니다. WAF가 JSON 인수를 파싱할 때 사용 가능하며, REQUEST-901-INITIALIZATION 규칙 세트를 활성화해야 합니다. |
| ARGS_COMBINED_SIZE | 파일을 제외한 요청 매개변수의 총 크기입니다. |
| ARGS_NAMES | 요청의 인수 이름 모음입니다. |
| 파일 | 사용자 파일 시스템의 파일 이름입니다. 다음에만 적용됩니다. 멀티 파트 / 양식 데이터 요청. |
| FILES_COMBINED_SIZE | 요청에 포함된 파일의 총 크기입니다. multipart/form-data 요청에만 적용됩니다. |
| FILES_NAMES | 파일 업로드에 사용되는 파일 이름 목록입니다. multipart/form-data 요청에만 적용됩니다. |
| FILES_SIZES | 개별 파일 크기 목록입니다. multipart/form-data 요청에만 적용됩니다. |
| REQBODY_ERROR | 요청 본문 형식이 JSON 또는 XML에 대해 올바르지 않은 경우를 나타냅니다(참이면 1, 거짓이면 0). |
| REQUEST_BODY | 원시 요청 본문. 요청에 다음이 없는 경우 응용 프로그램 / x-www-form-urlencoded 헤더를 사용하려면 다음이 필요합니다. ctl:forceRequestBody변수 REQUEST_HEADER 단계에서. |
| REQUEST_BODY_LENGTH | 요청 본문의 바이트 수. |
| REQUEST_COOKIES | 모든 요청 쿠키 값 목록입니다. |
| REQUEST_COOKIES_NAMES | 모든 요청 쿠키 값 목록입니다. |
| REQUEST_HEADERS | 모든 요청 헤더. |
| REQUEST_HEADERS_NAMES | 요청 헤더 이름 목록입니다. |
| 요청하기 | 요청 방법(예: GET, POST). |
| REQUEST_PROTOCOL | 요청의 HTTP 버전 프로토콜입니다. |
| REQUEST_URI | 가상 호스트를 제외한 URI 요청 경로입니다. |
| PATH_INFO | URI 경로 앞의 정보. |
| FULL_REQUEST | 전체 요청 내용. |
| FULL_REQUEST_LENGTH | 전체 요청의 바이트 수. |
| RESPONSE_BODY | 원시 응답 본문. |
| RESPONSE_CONTENT_LENGTH | 응답 본문의 바이트 수. |
| RESPONSE_HEADERS | 모든 응답 헤더. |
| RESPONSE_HEADERS_NAMES | 응답 헤더 이름 목록입니다. |
| RESPONSE_PROTOCOL | 응답의 HTTP 버전 프로토콜입니다. |
| 응답_상태 | HTTP 응답 상태 코드. |
| REMOTE_ADDR | 클라이언트의 IP 주소. |
| REMOTE_PORT | 클라이언트가 연결을 시작한 포트입니다. |
| REMOTE_USER | 인증된 사용자 이름. |
| TIME | 서버 시간 시:분:초 형식입니다. |
| 지속 | 시작 시간부터 현재 거래의 지속 시간(밀리초)입니다. |
| MULTIPART_FILENAME | 멀티파트 요청의 파일 이름 필드. |
| MULTIPART_NAME | 멀티파트 요청의 필드 이름. |
| MATCHED_VAR | 마지막 일치 작업에서 일치된 값입니다. 캡처 옵션 없이 각 일치 작업에서 대체됩니다. |
| MATCHED_VARS | 일치하는 모든 값의 목록입니다. |
| SERVER_ADDR | 서버의 IP 주소. |
| SERVER_NAME | 요청 URI에서 얻은 가상 호스트입니다. |
| ENV | WAF의 환경 변수. |
| TX | 현재 트랜잭션에 대한 변수 모음입니다. 트랜잭션이 종료되면 제거됩니다. 변수 TX:0-TX:9 캡처된 값을 저장합니다. strRegex 또는 구문 연산자. |
연산자 표 #
연산자는 다양한 컨텍스트로 분류될 수 있으며, 각 컨텍스트는 정수형의 경우 int , IP 연산의 경우 IP , 문자열의 경우 str , 데이터 유효성 검사의 경우 validate 와 같은 접두사로 표시됩니다.
| 변하기 쉬운 | 기술설명 |
|---|---|
| strBegins | 변수가 지정된 작동 값으로 시작하는 경우 일치합니다. |
| strContains | 지정된 작동 값이 변수에 포함되어 있는 경우 일치합니다. |
| strContainsWord | 변수에 지정된 단어나 연산 값이 포함되어 있는 경우 일치합니다. |
| strEnd | 변수가 지정된 작동 값으로 끝나는 경우 일치합니다. |
| strWithin | 변수가 지정된 작동 값으로 시작하는 경우 일치합니다. |
| strMatch | 변수가 운영 목록의 문자열 중 하나와 일치하는 경우 일치합니다(문자로 분할됨) |). |
| strEq | 지정된 작동 값과 동일한 변수가 있으면 일치합니다. |
| strRegex | 운영 체제에 지정된 정규 표현식과 변수가 일치하면 일치합니다. |
| strPhrases | 운영에 지정된 목록에 있는 값 중 하나라도 변수와 일치하는 경우 일치합니다. |
| strPhrasesFromFile | strPhrases와 비슷하지만, 구문 목록은 운영 체제에 지정된 파일에 정의됩니다. |
| intEQ | 연산에서 지정된 숫자와 변수가 같은 경우 일치합니다. |
| intGE | 연산에서 지정된 숫자보다 크거나 같은 변수가 있는 경우 일치합니다. |
| intGT | 연산에서 지정된 숫자보다 큰 변수가 있는 경우 일치합니다. |
| 내부 | 연산에서 지정된 숫자보다 작거나 같은 변수가 있는 경우 일치합니다. |
| intLT | 연산에서 지정된 숫자보다 작은 변수가 있는 경우 일치합니다. |
| 감지SQLi | 변수 목록에서 SQL 주입을 감지합니다. |
| 감지XSS | 변수 목록에서 XSS(교차 사이트 스크립팅) 주입을 감지합니다. |
| IPMatch | 운영 체제에 지정된 IP 주소 또는 네트워크 세그먼트를 변수 목록과 일치시키려고 시도합니다. 여러 IP 또는 세그먼트를 입력할 경우 쉼표를 구분자로 사용하세요. |
| ipMatchFrom파일 | 유사하게 IPMatch, 하지만 운영 체제에 지정된 파일에서 IP와 네트워크 세그먼트를 읽습니다. |
| 유효성 검사바이트 범위 | 변수의 바이트 수가 연산에서 지정한 범위(예: "10, 13, 32-126") 내에 있는지 확인합니다. |
| verifyUrlEncoding | 인코딩된 데이터의 유효성을 검사합니다. 일반적으로 인코딩되지 않거나 여러 번 인코딩된 데이터에만 사용하세요. |
| verifyUtf8Encoding | UTF-8로 인코딩된 변수를 검증합니다. |
| 신용카드 확인 | 운영 체제에 지정된 정규 표현식을 사용하여 변수가 유효한 신용 카드 번호인지 확인합니다. |
| SSN 확인 | 운영 체제에 지정된 정규 표현식을 사용하여 변수가 유효한 미국 사회 보장 번호인지 확인합니다. |
| 매치올웨이즈 | 다른 조건에 관계없이 항상 일치를 강제로 반환합니다. |
| 일치하지 않음 | 다른 조건에 관계없이 항상 false를 반환하여 일치하지 않음을 강제합니다. |
변환표 #
변환을 설명하는 표는 다음과 같습니다.
| 변환 | 기술설명 |
|---|---|
| base64디코드 | Base64로 인코딩된 문자열을 디코딩합니다. |
| base64DecodeExt | 잘못된 문자를 무시하고 Base64로 인코딩된 문자열을 디코딩합니다. |
| sqlHexDecode | SQL 16진수 데이터를 디코딩합니다. |
| base64인코드 | Base64 인코딩을 사용하여 인코딩합니다. |
| cmdLine | 이스케이프된 명령줄과 관련된 문제를 방지합니다. |
| 압축공백 | 공백 문자(0x20, \f, \t, \n, \r, \v, 0xa0)를 공백(ASCII 0x20)으로 변환하고, 연속된 여러 공백을 하나로 압축합니다. |
| CSS디코드 | CSS 2.x 이스케이프 규칙을 사용하여 인코딩된 문자를 디코딩합니다. 이 함수는 디코딩 프로세스에서 최대 XNUMX바이트만 사용합니다. 즉, CSS 인코딩을 사용하여 인코딩된 ASCII 문자(일반적으로 인코딩되지 않음)를 발견하거나 백슬래시와 비문자의 조합인 회피에 대응하는 데 사용됩니다. -XNUMX진수 문자(예: ja\vascript는 javascript와 동일합니다). |
| escapeSeqDecode | ANSI C 이스케이프 시퀀스 디코딩: \a, \b, \f, \n, \r, \t, \v, \\, \?, \', \”, \xHH(0진수), \XNUMXOOO(XNUMX진수) . 출력에 잘못된 인코딩이 남아 있습니다. |
| 16진수디코드 | hexEncode에 사용된 것과 동일한 알고리즘을 사용하여 인코딩된 문자열을 디코딩합니다(다음 항목 참조). |
| 16진수 인코딩 | 각 입력 바이트를 두 개의 78797진수 문자로 바꿔서 문자열(이진 문자 포함 가능)을 인코딩합니다(예: xyz는 XNUMXa로 인코딩됨). |
| htmlEntityDecode | HTML 엔터티로 인코딩된 문자를 디코딩합니다. |
| jsDecode | JavaScript 이스케이프 시퀀스를 디코딩합니다. |
| 길이 | 입력 문자열의 길이를 바이트 단위로 검색합니다. |
| 소문자 | 현재 C 로케일을 사용하여 모든 문자를 소문자로 변환합니다. |
| md5 | 입력 데이터에서 MD5 해시를 계산합니다. 계산된 해시는 원시 이진 형식이며, 인쇄(또는 로깅)할 텍스트로 인코딩해야 할 수 있습니다. 해시 함수는 일반적으로 다음과 함께 사용됩니다. 16진수 인코딩. |
| 없음 | 현재 규칙과 관련된 이전 변환 함수를 제거합니다. |
| 정규화경로 | 입력 문자열에서 여러 개의 슬래시, 디렉토리 자체 참조 및 디렉토리 역참조를 제거합니다(입력 문자열의 시작 부분을 제외하고). |
| 정규화경로 승리 | 유사하게 정규화경로하지만 백슬래시 문자를 먼저 슬래시로 변환합니다. |
| 패리티Even7bit | 7비트 데이터의 짝수 패리티를 계산하여 각 대상 바이트의 8번째 비트를 계산된 패리티 비트로 바꿉니다. |
| 패리티Odd7bit | 7비트 데이터의 홀수 패리티를 계산하여 각 대상 바이트의 8번째 비트를 계산된 패리티 비트로 바꿉니다. |
| 패리티제로7비트 | 7비트 데이터의 제로 패리티를 계산하여 각 대상 바이트의 8번째 비트를 제로 패리티 비트로 대체합니다. 이를 통해 짝수/홀수 패리티 7비트 데이터를 ASCII7 데이터로 검사할 수 있습니다. |
| 제거Nulls | 입력에서 모든 NUL 바이트를 제거합니다. |
| 제거공백 | 입력에서 모든 공백 문자를 제거합니다. |
| 교체댓글 | C 스타일 주석(/* … */)을 공백 하나로 바꿉니다(연속해서 여러 번 나타나는 공백은 압축되지 않습니다). 끝나지 않은 주석도 공백(ASCII 0x20)으로 바꿉니다. 단, 주석의 단독 종료(*/)는 적용되지 않습니다. |
| 제거설명문자 | 입력에서 일반적인 주석 문자(/*, */, –, #)를 제거합니다. |
| Null 교체 | 입력의 NUL 바이트를 공백 문자(ASCII 0x20)로 바꿉니다. |
| URL디코드 | URL로 인코딩된 입력 문자열을 디코딩합니다. 잘못된 인코딩(즉, 16진수가 아닌 문자를 사용하는 인코딩 또는 문자열 끝에 있고 1~2바이트가 누락된 인코딩)은 변환되지 않지만 오류는 발생하지 않습니다. |
| 대문자 | 현재 C 로케일을 사용하여 모든 문자를 대문자로 변환합니다. |
| urlDecodeUni | Microsoft 특정 인코딩(예: URL 인코딩된 입력을 디코딩합니다. URL디코드(하지만 Microsoft 전용 %, u 인코딩을 지원합니다). |
| URL인코드 | URL 인코딩을 사용하여 입력 문자열을 인코딩합니다. |
| utf8to유니코드 | UTF-8 문자 시퀀스를 유니코드로 변환합니다. 이는 특히 영어가 아닌 언어의 입력 정규화에 도움이 되며, 거짓 양성 및 거짓 음성을 최소화합니다. |
| sha1 | 입력 데이터에서 SHA1 해시를 계산합니다. 계산된 해시는 원시 이진 형식이며, 인쇄(또는 로깅)할 텍스트로 인코딩해야 할 수 있습니다. 해시 함수는 일반적으로 다음과 함께 사용됩니다. 16진수 인코딩. |
| 트림왼쪽 | 입력 문자열의 왼쪽에서 공백을 제거합니다. |
| 트림오른쪽 | 입력 문자열의 오른쪽에서 공백을 제거합니다. |
| 손질 | 입력 문자열 양쪽의 공백을 제거합니다. |
농장 WAF 설정 #
이 섹션에서는 현재 WAF 규칙 세트를 HTTP(s) 팜에 할당할 수 있습니다.
여기에서 하나 이상의 농장을 선택할 수 있습니다( Shift 키를 누른 상태로 여러 농장을 선택). WAF 규칙 세트를 할당하거나 제거할 수 있습니다. 양방향 화살표 버튼을 사용하여 사용 가능한 모든 농장에 규칙 세트를 할당하거나 제거할 수 있습니다.











