HTTP 요청의 매개변수 크기가 최대 한도를 초과시키는 공격이다.
# 마찬가지로 WAF에서 확인 결과 가비지 데이터가 잔뜩 있다.
아래는 imperva 사이트에 있는 기법에 대한 설명이다.
매개변수는 "이름=값" 문자열 형식으로 HTTP 요청의 일부로 웹 애플리케이션에 전달됩니다. 이름 부분이나 값 부분이 지정된 임계값을 초과하는 경우 SecureSphere는 경고를 생성합니다. 기본적으로 최대값은 4096바이트입니다. 이는 HTTP 프로토콜 유효성 검사 정책에서 사용자 정의할 수 있습니다.
가능한 공격
공격자는 다음 두 가지 목적으로 매우 긴 매개 변수 이름이나 값을 사용합니다.
애플리케이션 모듈이나 웹 서버의 구문 분석 메커니즘에 대한 버퍼 오버플로 공격 입니다 .
일부 보안 메커니즘에 의한 탐지를 회피합니다. 많은 탐지 메커니즘은 전체 요청을 분석하기 전에 저장하고 저장하는 메시지 크기에 제한을 설정합니다. 결과적으로, 공격 벡터가 긴 요청의 끝에 배치되면 그 중 일부는 다양한 공격을 탐지하지 못할 수 있습니다.
공격 탐지
이 경고가 동일한 이벤트의 다른 구조 이상과 결합되면 이는 실제 공격을 나타내는 좋은 신호입니다. 또한 매개변수(이름 또는 값)의 위반 부분에 인쇄할 수 없거나 특이한 문자가 포함된 경우 공격의 일부일 가능성이 높습니다.
일반적으로 요청의 위반 부분이 (값이 아니라) 매개변수의 이름이라면 이는 확실히 공격이라고 말하는 것이 안전합니다.
거짓 긍정 탐지
긴 XML 문서나 HTML 코드를 저장하기 위해 HTTP 매개변수를 사용하는 애플리케이션은 이 경고에 대해 오탐지가 발생하기 쉽습니다.
설명에 맞게 오탐이 너무 많이 뜬다...
특정 고객사는 한 ip당 이 공격 탐지로 주에 1000건이 넘게 뜬다. (어질어질)
피해
서버 오버로드 : 공격자는 HTTP 요청의 매개변수를 과도하게 길게 만들어 서버 리소스를 과도하게 사용하게 하여 서버의 응답 시간을 늦추거나 서비스 거부 공격을 유발한다.
입력 유효성 검사 우회 : 공격자는 긴 매개변수 값을 사용하여 서버의 입력 유효성 검사 우회를 시도한다.
서버는 입력이 예상한 것보다 길면 일반적으로 잘라내거나 거부해야 하지만, 이를 우회하려는 시도가 있을 수 있다.
버퍼 오버플로우 : 매개변수 값이 서버 또는 애플리케이션의 버퍼를 오버플로우시키려고 하는 공격자도 있다.
공격자는 원하지 않는 동작을 유도하거나 시스템의 안정성을 침해할 수 있다.
보안 취약점 이용 : 매개변수의 길이를 조작하여 서버에서 예외를 발생시키거나 오류 메시지를 생성하도록 유도함으로써, 공격자는 시스템에서 정보를 노출시키거나 다른 보안 취약점을 이용할 수 있다.
글만 읽어보면 웹 요청을 이용한 공격이기 때문에 이전에 작성한 header length 공격과 비슷해보이지만 아래의 차이점이 있다.
차이점
타겟 및 공격 벡터
Extremely Long Parameter Attack : HTTP 요청의 매개변수(파라미터)를 과도하게 길게 만들어 공격을 시도합니다. 공격자는 특정 매개변수(쿼리 문자열, 폼 데이터 등)를 길게 만들어서 서버 또는 애플리케이션의 동작을 방해하거나 오류를 유도한다.
Header Length Attack : HTTP 요청 헤더의 길이를 조작하여 웹 서버 또는 웹 애플리케이션에 영향을 미치는 것을 목표로 한다. 공격자는 HTTP 요청 헤더의 길이를 조작하여 서버를 과부하로 몰아넣거나 서버의 동작을 변조하는 것을 시도한다.
공격 목표
Extremely Long Parameter Attack : 주로 서버 또는 애플리케이션의 동작을 변조하거나 오류를 유도하는 것을 목표로 한다. 입력 유효성 검사가 부족한 경우, 공격자는 긴 매개변수를 사용하여 애플리케이션의 보안을 침해하거나 원하지 않는 동작을 유도할 수 있다.
Header Length Attack : 주로 서버의 리소스를 소모하거나 서비스 거부 공격(DoS)을 유발하는 것이 목표
헤더 길이를 조작함으로써 공격자는 서버의 리소스를 과도하게 사용하도록 유도하거나 웹 서버의 동작을 방해한다.
공격 방법
Extremely Long Parameter Attack : 특정 HTTP 요청 매개변수의 값을 과도하게 길게 만들어 서버 또는 애플리케이션에 보내어, 매개변수 처리 부분을 오버플로우시키거나 오류를 유도한다.
Header Length Attack : 공격자는 HTTP 요청 헤더의 길이를 조작하여 서버에 부하를 가하는 방식으로 공격을 수행한다.
'업무' 카테고리의 다른 글
로그 파싱 쿼리 설명 (0) | 2023.11.04 |
---|---|
Abnormally Long Request (0) | 2023.10.31 |
Header Length Attack (HTTP Overflow) (0) | 2023.10.31 |
FORCEFUL_BROWSING (강제 브라우징) (0) | 2023.10.31 |
알아두면 좋은 아스키 코드 표 (1) | 2023.10.29 |