Chapter06 - 02 XSS공격(D-DoS)
1. DDoS 공격의 분류
l Distributed Denial of Service
l 웹 상에서의 DDoS공격은 해당 웹 페이지가 서비스를 할 수 없도록 만드는 것
l 보통 공격은 HTTP(TCP)를 이용해서 이루어 진다.
l 정상적인 세션을 맺지 않은 경우의 DDoS (Network 공격)
ü TCP SYN Flooding Attack: 연결을 하기 위해 SYN 패킷 만을 계속 보내는 것 (세션을 맺지 않음)
l 정상적인 세션을 맺은 경우의 DDoS (Web 공격)
ü 정상적인 세션을 맺기 때문에 보안 제품의 기능 및 정상 세션 검증 절차를 쉽게 회피할 수 있음
ü TCP Connection Flooding
ü HTTP Get Flooding
ü HTTP CC Attack
ü Dynamic HTTP Request Flooding
ü HTTP 취약점 기반 DDoS Attack
2. DoS 공격 (Web 공격)
l 7계층 DoS 공격
ü 최근의 DoS 공격은 웹 어플리케이션 등을 대상으로 공격 방향을 전환
ü 3, 4계층 DoS공격 : TCP, UDP, ICMP등의 3, 4계층 프로토콜 사용
ü 7계층 DoS 공격 : HTTP, SMTP, FTP, VoIP등의 7계층 프로토콜 사용
l 7계층 공격의 특징
ü 정상적인 TCP/UDP 연결을 맺은 뒤의 공격
ü 정상적인 IP로 연결 된 상태이기 때문에 정상 사용자와 공격자의 구분이 어려움
ü 소량의 트래픽을 가지고 천천히 공격하기 때문에 정상적인 행동을 하는 것처럼 보여서 공격의 구분이 어려움
ü 특정 서비스의 취약점을 이용하여 공격하기 때문에 웹 서비스를 이용한 공격이 주를 이루고 있음
l HTTP GET Flooding 공격 (HTTP GET 요청을 다량으로 발생시키는 공격
ü 공격 대상 시스템에 TCP three way hand shaking 과정을 통해 정상적으로 접속을 한다.
ü HTTP의 GET Method를 통해 특정 페이지를 무한대로 실행하는 방식
ü 때문에 서버 입장에서는 계속해서 해당 페이지를 보내줘야 하기 때문에 다른 서비스를 할 수 없음
l HTTP CC 공격
ü HTTP GET Flooding with Cache Control Attack (CC Attack)
ü DoS 공격 기법에 Cache를 저장하지 않게 만드는 것
ü 본인이 인증을 하고 들어갔다 한들 흔적(Cache)이 남지 않는다.
ü Cache를 사용하지 않고 응답을 하기 때문에 웹 서비스의 부하가 증가됨
l Slow HTTP Header DoS (Slowloris) 공격
ü HTTP해더를 이용하여 공격을 하는데 아주 천천히 공격을 한다.
ü HTTP헤더를 비 정상적으로 조작하여 웹 서버가 헤더 정보를 완전히 수신 할 때까지 연결을 유지하도록 하여 시스템 자원을 소비시켜 다른 클라이언트의 정상적인 서비스를 방해하는 공격
ü HTTP헤더를 비 정상적인 헤더를 전송하여 서버가 헤더를 기다리도록 하는 공격
ü 위의 과정을 천천히 반복하면 다른 클라이언트가 접근 했을 때 서비스를 하지 못 한다.
ü 불완전한 메시지를 수신한 웹 서버는 클라이언트의 요청이 끝나지 않은 것으로 인식하여 웹 로그를 기록하지 않음
ü 취약성에 대한 대안이 없음
l Slow HTTP POST Attack (RUDY)
ü Slowloris와 RUDY의 차이점
1. GET / POST 메소드의 차이점
2. POST는 DB에 접근하여 수정 및 추가 하는 접근을 하기 때문에 본인의 패킷 량을 서버에 알려서 해당 패킷 량만큼의 서버 메모리를 사용하겠다는 것을 알린다.
ü 웹 서버와 Connection을 최대한 장시간 동안 유지하여 웹 서버가 정상적인 이용자의 접속을 받아들일 수 없게 하는 방식
ü HTTP의 특성 중 하나인 상태정보를 유지하지 않는 것을 이용
ü content-length값을 이용하여 데이터 공간을 확보 후 HTTP Request를 하는 것
ü 이때 수신을 할 때 수용하는 데이터를 1byte단위로 처리하도록 함
ü 그렇게 되면 서버는 해당 Request를 계속 처리해서 결국 다른 클라이언트의 요청을 수행할 수 없음
ü WAF에서의 대응 방법
1. Session timeout값을 이용하여 세션 종료
2. Max Content Length 값을 제한
'3학년 > 인터넷 보안(웹 해킹)' 카테고리의 다른 글
웹 보안_Chapter07 - 웹 해킹 침해사고 및 대응 (0) | 2018.12.28 |
---|---|
웹 보안_Chapter06 - XSS공격 (1) | 2018.12.26 |
웹 보안_Chapter05 - 웹 해킹 (0) | 2018.12.24 |
WebGoat 실습 하기 (3) | 2018.11.12 |
웹 보안_Chapter04 - SQL인젝션 공격 (0) | 2018.10.03 |