View a markdown version of this page

에서 사전 구문 분석 텍스트 변환 사용 AWS WAF - AWS WAF, AWS Firewall Manager AWS Shield Advanced및 AWS Shield 네트워크 보안 디렉터

에 대한 새로운 콘솔 환경 소개 AWS WAF

이제 업데이트된 환경을 사용하여 콘솔의 모든 위치에서 AWS WAF 기능에 액세스할 수 있습니다. 자세한 내용은 콘솔 작업을 참조하세요.

기계 번역으로 제공되는 번역입니다. 제공된 번역과 원본 영어의 내용이 상충하는 경우에는 영어 버전이 우선합니다.

에서 사전 구문 분석 텍스트 변환 사용 AWS WAF

사전 구문 분석 텍스트 변환은 개별 쿼리 인수로 구문 분석하기 전에 AWS WAF 원시 쿼리 문자열을 정규화합니다. 이러한 변환은 파서 차등 공격과 공격자가 쿼리 문자열 구분 기호를 인코딩하거나 조작하여 검사 규칙을 우회하는 HTTP Parameter Pollution(HPP)을 해결합니다.

요청 구성 요소가 SingleQueryArgument 또는 인 경우에만 사전 구문 분석 텍스트 변환을 사용할 수 있습니다AllQueryArguments. AWS WAF 는 표준 텍스트 변환 전에 사전 구문 분석 텍스트 변환을 적용합니다. 규칙 문당 최대 10개의 사전 구문 분석 텍스트 변환을 지정할 수 있습니다. 각 사전 구문 분석 텍스트 변환은 규칙 문 비용에 10WCUs를 추가합니다.

API에서는 규칙 설명의 선택적 PreParseTextTransformations 설정을 사용하여 사전 구문 분석 텍스트 변환을 구성합니다.

참고

구문 분석 전 정규화가 필요하지 않은 경우 구문 분석 전 텍스트 변환을 지정하지 마십시오. 기본 동작은 원시 쿼리 문자열을 수정하지 않고 구문 분석기에 NONE전달하는 입니다.

다음과 같은 사전 구문 분석 텍스트 변환을 사용할 수 있습니다.

None – NONE

AWS WAF 는 사전 구문 분석 텍스트 변환 없이 수신된 웹 요청을 검사합니다.

URL decode – URL_DECODE

AWS WAF URL - 구문 분석 전에 원시 쿼리 문자열을 디코딩합니다. %HH 시퀀스를 디코딩합니다(예: %26은 &, %3D는 =). 이렇게 하면 이전에 인코딩된 새 쿼리 파라미터 경계가 노출될 수 있습니다.

URL decode Unicode – URL_DECODE_UNI

와 비슷하지만 URL_DECODE는 유니코드 인코딩 시퀀스(%uHHHH)도 디코딩합니다. 코드가 FF01-FF5E의 전폭 ASCII 코드 범위에 있으면 상위 바이트를 사용하여 하위 바이트를 감지하고 조정합니다. 그렇지 않으면 하위 바이트만 사용되며 상위 바이트는 0이 됩니다.

Combine duplicate query arguments by comma – COMBINE_DUPLICATE_QUERY_ARGS_BY_COMMA

AWS WAF 는 첫 번째 발생 위치에서 중복 쿼리 파라미터 키의 모든 값을 쉼표로 구분된 단일(0x2C) 문자열로 병합한 다음 이후 중복을 제거합니다. 예를 들어, a=1&b=2&a=3a=1,3&b=2가 됩니다. 백엔드가 중복 쿼리 파라미터를 배열로 결합할 때이 변환을 사용합니다. 이는 .NET, API Gateway 및 Express.js에서 일반적입니다. AWS WAF 는 결합된 값을 단일 단위로 검사합니다.

Replace semicolons with ampersands – REPLACE_SEMICOLONS_WITH_AMPERSANDS

AWS WAF 는 구문 분석 전에 원시 쿼리 문자열의 모든 세미콜론(0x3B)을 앰퍼샌드(0x26)로 바꿉니다. AWS API Gateway REST APIs를 포함한 일부 웹 프레임워크 및 서비스는 세미콜론을 앰퍼샌드와 동등한 쿼리 파라미터 구분 기호로 취급합니다. 이 변환은 쿼리 문자열을 정규화 AWS WAF 한 다음 백엔드와 동일한 방식으로 세미콜론으로 분할하여 일관된 파라미터 구문 분석을 보장합니다.