DoS(Denial Of Service) : 서비스 거부 공격
서비스가 정상적으로 제공되지 못하도록 방해하는 공격기법으로 가용성(Availability)을 떨어트리는 공격의 목적임.
주로 대규모 가짜 요청을 만들어 공격 대상자의 시스템에 과부하를 일으킴.
종류
대역폭 소진 공격 | 서버 마비 공격 | |
공격 형태 | TCP SYN flooding ICMP/UDP flooding IP flooding : LAND, Teardrop |
HTTP GET flooding |
공격 대상 | 네트워크 인프라 | 웹 서버, 정보보호 장비 등 |
증상 | 네트워크 대역폭 고갈 | 공격 대상 시스템만 피해 |
DDoS(Distributed DoS) : 분산 서비스 거부 공격
공격자가 여러 곳에서 동시에 서비스 거부 공격을 하는 방법.
DoS와 동일한 공격 기법을 사용하지만 물리적으로 떨어져 분산된 여러 대의 단말을 이용한다는 점이 다름.
여러 대의 공격자를 만들기 위해 악성 코드 좀비 PC를 만드는 등의 추가적인 방법이 필요함.
TCP SYN 플러딩
SYN Flooding 이라고도 부름.
SYN 패킷을 넘치게 하는 공격으로 SYN 패킷을 대량으로 보내어 웹 서버의 네트워크 대역폭을 낭비해서 일반 사용자들이 아예 웹 서버로 접속을 못하게 만든는 공격 방법.
TCP의 3-way Handshaking의 특징을 악용하는 방법
- 송신자가 세 번째 단계인 ACK 패킷을 보내지 않으면 수신자는 송신자가 ACK 패킷을 보낼 때까지 계속 기다리는 특성을 악용한것임.
여러명의 공격자들이 SYN 패킷을 보내고 ACK 패킷을 보내지 않으면 웹 서버의 대기 큐에 공격자들이 차게되는데 공격자 수가 웹 서버의 대기큐 크기를 넘어가면 웹 서버는 새로운 사용자들에게 서비스를 하지 못하므로 정상적인 사용자가 서비스를 이용하지 못하게됨.
공격자의 공격으로 웹 서버의 네트워크 가용 자원이 모두 소진된 경우임.
웹 서버는 일정 시간 응답이 없는 연결을 강제적으로 끊어버리기는 하지만 SYN 패킷을 보내는 속도가 지워지는 속도보다 빠르도록함.
SYN Flooding을 방지
- 대기 큐를 늘리는 방법
- 최대 접속 대기 시간을 줄이는 방법
- 침입 방지 시스템(IPS : Intrusion Prevention System)과 같은 보안 솔루션을 사용
ICMP 플러딩 : 스머프(Smurf) 공격
대량의 ICMP echo 응답을 만들어 공격하는 기법으로 공격자가 변조된 ICMP 메시지에 따라 수백, 수천 혹은 수만 개의 ICMP echo 응답이 일시에 희생자를 공격하는 방법임.
기본적으로 브로드캐스팅 방식으로도 동작할 수 있는 ICMP 프로토콜의 특성을 악용한 방법으로 ICMP echo 요청 시 출발 주소가 현재 나의 IP 주소가 아니라 다른 단말의 IP 주소로 바꾸어 보냄.
여기서 공격 수단으로 사용되는 단말을 에이전트(Agent), 슬레이브(Slave), 봇(Bot), 좀비(Zombie)라고 부름.
이렇게 공격자가 1개의 에이전트를 통해 다른 단말에 ICMP echo 응답 메시지를 보내게하는 것은 위협이 되지 않으나 여러개의 에이전트가 동시에 보낸다면 큰 위협이 됨.
공격자는 출발 주소를 특정 단말의 IP로 지정하지 않고 특정 네트워크 전체를 지정하여 보냄 -> 브로드캐스트 주소
- 이렇게 하면 특정 네트워크의 에이전트들이 동시에 ICMP echo 응답을 공격 대상자에게 보냄으로서 공격이 성사됨.
이러한 브로드캐스팅 기반의 DoS 공격의 대한 대응책은 외부 네트워크와 연결된 게이트웨이에서 브로드캐스트 방식으로 전달되는 메시지를 내부로 전달하지 않도록 차단하면 됨.
IP 플러딩 : LAND, Teardrop
서비스 거부 공격을 하기 위해 공격자가 IP 관련 내용을 변조하는 공격방식.
LAND(Local Area Network Denial) : 패킷을 보낼 때 출발지 IP 주소와 도착지 주소를 같게 하여 보내는 서비스 거부 공격.
- 출발 IP 변조를 통해 공격 대상자의 IP주소로 변조하여 공격 대상자에게 패킷을 보내면 공격 대상자는 응답 메시지를 계속 자신에게 보내고 주고 받는 무한 루프에 빠져 CPU 부하 및 네트워크 부하가 증가하여 서비스 장애가 발생.
Teardrop : IP 패킷의 헤더를 서로 중첩되게 조작하여 조작된 패킷을 전달 받은 시스템이 IP 패킷을 재조합 과정에서 오류를 발생시키도록 하는 공격
- 이 공격을 받은 시스템은 네트워크 연결이 끊어지거나 블루스크린 등의 오류 화면을 표시하면서 시스템 자체가 중단되기도 함.
HTTP GET 플러딩
특정 웹 페이지를 동시에 여러 에이전트가 요청하여 웹 서버가 이를 감당하지 못하게 만들어 서비스 거부를 일으키는 공격 기법.
- 공격 트래픽을 수신한 서버는 정상적인 TCP 요청과 함께 정상적으로 보이는 HTTP GET 요청을 지속적으로 요청 받음.
- 대규모 서비스를 동시에 수행해야 하기 때문에 서버에 과부하가 걸림.
- 이 공격은 3-way Handshaking이 정상적으로 체결된 다음에 요청되는 정상적인 HTTP 요청이므로 단순히 요청을 거부해서는 안된다는 점에서 대처가 어려움.
이러한 공격을 방어하기 위해 "임계치 기반의 방어 기법"을 제공.
- 특정 IP에서 임계치 값을 넘어서 대량의 HTTP GET 요청이 계속된다면 해당 IP에서 전달되는 HTTP GET 요청을 무시함.
- 이 경우 정상적인 HTTP GET 요청일 수 있기 때문에 임계치 설정이 중요한 요소임.
HTTP GET 플러딩과 유사한 변종 공격
- HTTP CC 공격 : HTTP 헤더에 CC(Cache-Control) 옵션을 변경하여 더 많은 부하를 유발.
- 동적 HTTP 요청 공격 : 지속적으로 요청하는 웹 페이지 주소를 변경하여 차단 우회 시도.
'AI > 정보보안' 카테고리의 다른 글
[정보보안] 고전암호 (0) | 2023.06.13 |
---|---|
[정보보안] 웹 보안 (0) | 2023.04.26 |
[정보보안] 네트워크 보안(2) (0) | 2023.04.25 |
[정보보안] 네트워크 보안(1) (0) | 2023.04.25 |
[정보보안] 시스템 보안 (0) | 2023.04.25 |