◼ 비정상적인 응답 헤더 탐지
: 아웃바운드 응답 헤더를 검사할 때 중요하게 봐야할 부분은 HTTP 상태 코드. HTTP 응답 분할 공격,, 악성코드 리다이렉션 공격 세 가지이다. 먼저 HTTP 상태 코드는 클라이언트에게 트랜잭션에 대한 일반적인 상태 정보를 제공한다. 보안 관점에서, 보호되는 웹 애플리케이션에서 400번대 또는 500번대의 상태 코드가 생성된다면, 이는 문제가 있거나 실패한 작업이 있다는 의미이므로 경고가 발생하기를 원한다.
아래는 HTTP 상태 코드 목록이다.
ko.wikipedia.org/wiki/HTTP_%EC%83%81%ED%83%9C_%EC%BD%94%EB%93%9C
HTTP 상태 코드
위키백과, 우리 모두의 백과사전. 둘러보기로 가기 검색하러 가기 아래는 HTTP(하이퍼텍스트 전송 프로토콜) 응답 상태 코드의 목록이다. IANA가 현재 공식 HTTP 상태 코드 레지스트리를 관리하고
ko.wikipedia.org
◼ 응답 바디 접근
: ModSecurity는 응답 바디 내용에 대해 접근, 처리 분석을 할 수 없다. 웹 애플리케이션에서 어떤 유형의 데이터가 나가는지 볼 수 없기 때문에 이는 심각한 미탐 문제를 일으킬 수 있다. 응답 바디에 대한 통찰력을 얻기 위해서는 지시자를 구성해야한다.
- SecResponseBodyAccess가 ON으로 설정돼 있으면 ModSecurity가 응답 바디 내용을 버퍼에 담고 RESPONSE_BODY 변수의 내용을 채운다.
- SecResponseBodyMimeTYPE은 접근하고 검사하고자 하는 응답바디의 Content-Types를 지정한다.
◼ 기술적인 데이터 유출 탐지
: 이전 레시피에서의 시나리오와 유사하게 애플리케이션이 기술적인 애플리케이션 오류 데이터를 클라이언트에게 전달하는 것은 의도적인 상황과 의도적이지 않은 상황으로 구분된다. 대부분 내부 품질 보증 테스트 기간 동안에는 의도적으로 상세 기술 데이터를 클라이언트에게 보여주도록 애플리케이션을 설정한다.
- 응용프로그램이 홀따옴표 ' 같은 예기치 못한 콘텐츠를 수신하면 특정 데이터가 생성된다. 처음 보면 이 정보가 불긴해 보이지는 않지만 공격자가 어플리케이션 디렉터리의 구조, 포맷, 사용을 이해하는데 도움이 된다.
◼ 민감한 사용자 데이터 유출
: 신용카드와 같은 민감한 사용자 정보가 유출되는 것은 심각한 일이다. 이런 유출은 대부분 기존 거래에서 고객 데이터를 추출하는 것을 목표로 하는 SQL 인젝션 공격으로 발생한다. 웹 트래픽에 대해 수동적으로 모니터링해 이 데이터를 캡처했다. SQL 페이로드의 굵게 표시된 부분은 공격자가 신용카드의 이름, 유형, 번호 등등 고객 구매 데이터를 추출하려는 것을 보여준다.
출처: ModSecurity를 활용한 웹 애플리케이션 방어 레시피_라이언 바넷 지음
'Network' 카테고리의 다른 글
[2] 네트워크 계층 기반의 주요 공격 유형 (0) | 2021.03.27 |
---|---|
[1] 네트워크 계층의 헤더 기능 (0) | 2021.03.27 |
ModSecurity 5장_요청 데이터 분석 (0) | 2021.03.06 |
ModSecurity 4장_평판 및 서드파티 연관성 (0) | 2021.02.27 |
ModSecurity 3장_독을 품은 폰(해커 트랩) (0) | 2021.02.27 |