본문 바로가기
Security/보안 일반 || 관리

DoS / DDoS / DRDoS

by jino22 2022. 5. 18.

틀린 부분이 있다면 언제든지 댓글 남겨주세요! 

네트워크 기반 공격 중 DoS / DDoS / DRDoS


DoS(Denial of Service)

: 정상적인 서비스 사용을 못하게 만들어 가용성을 떨어트리는 공격, 단일 PC를 이용해 공격

 

공격 방식

- Ping of Death: 아주 큰 ping (ICMP echo request) 패킷을 만들어 전송하여 MTU에 의해 다수의 IP 단편화 발생 유도

* ICMP 패킷은 20byte의 IP 헤더 부분을 제외하면 1480byte가 최대 크기 

  > 대응책: 보통 ICMP 패킷은 분할되지 않으므로 다수의 분할된 패킷이 반복적으로 발생하면 공격 의심

- Land Attack: source IP와 destination IP가 같은 패킷을 만들어 자기 자신에게 응답을 보내는 무한 루프 상태에 빠지게 해 자원 소모

  > 대응책: 방화벽이나 라우터에서 출발지와 목적지 IP가 같은 패킷이면 모두 차단하도록 설정

- Smurf Attack: source IP를 희생자 IP로 하는 ICMP echo request를 Broadcast시켜 단시간에 다수의 ICMP echo reply가 희생자에게 전달되어 자원 소모

  > 대응책: 외부로부터 들어오는 패킷 중 Directed Broadcast 패킷 허용 안하도록 라우터 설정 (no ip directed-broadcast)

- Teardrop Attack: IP 패킷 재조합 과정에서 조작된 offset(중첩된 값)으로 인한 오류 발생 (+Bonk, Boink)

  > 대응책: OS 보안패치

 


DDoS(Distributed Denial of Service)

: 분산된 다수의 좀비 PC를 이용해 공격. 공격자, C&C서버, 좀비 PC 및 디바이스, 공격 대상으로 구성

 * 이를 이용해 봇넷 PC를 C&C서버 대신 싱크홀 서버로 우회시켜 조종받지 않도록 하는 DNS 싱크홀 방식이 있음

 

공격 방식

- 네트워크 대역폭 소진 공격 (L3-4) > 회선 대역폭 고갈, 네트워크 장애

  1. UDP / ICMP Flooding
  2. DNS Query Flooding
  3. TCP SYN Flooding
    TCP 연결 과정 중 3 way handshaking 과정에서 Half-open 연결 시도가 가능하다점을 이용해 client가 syn만 보내고 아무런 동작을 하지 않으면 해당 연결 요청은 TCP connection time out 시간동안 계속 SYN backlog queue에 남아 결구 가득차게 되고 더 이상 연결 요청을 받지 못하게 됨
    > 대응책: TCP connection time out 시간을 짧게 설정, SYN backlog 크기를 늘림, 방화벽에 의심 패킷 차단 정책 추가, IDS/IPS/패치 이용

- 서비스 및 서버 자원 마비 공격 (L7) > HTTP 서버 부하 장애, 공격 대상 시스템만 피해

  1. HTTP GET Flooding
    : 공격자가 동일한 URL을 반복해서 요청해 웹서버가 URL에 해당하는 데이터를 client에게 회신하기 위해 다량의 서버 자원을 사용하도록 하는 ㄱㅇ격
  2. Slow HTTP Post DoS (rudy)
    : HTTP POST 메소드를 이용해 서버로 전달되는 데이터를 작게 분할하여 장시간동안 전송하는 공격
  3. Slow HTTP Header DoS (Slowloris)
    : HTTP 헤더의 마지막에 CR LF가 두번 들어가는데 이 부분을 조작하여 웹서버가 헤더를 구분할 수 없도록 하면 아직 HTTP 헤더 정보가 모두 전달되지 않은 것으로 판단하여 연결을 계속 유지하도록 하는 공격
  4. Slow HTTP Read DoS (web-TCP 연결시)
    : 공격자가 웹서버와 TCP 연결 시 TCP window size와 데이터 처리율을 감소시킨 후 HTTP 데이터를 보내 웹서버가 정상적인 응답을 하지 못하도록 하는 공격
  5. Hash DoS
  6. Hulk DoS

대응책

대응 순서: 모니터링 - 침입 탐지 - 초기 대응 - 상세 분석 - 차단 수행

- 연결 타임아웃 설정

- 기본적으로 허용 가능한 최대 대역폭 설정

- 라우터의 ingress/egress필터링 활성화

- Rate-Limit를 이용해 특정 서비스 및 패턴을 가진 패킷이 단위시간 동안 일정량을 초과하는 경우 필터링

- uRPF 도입 (라우터가 패킷을 확인해 출발지IP로 갈 수 있는 역 경로가 존재하는지 확인해 출발지IP가 조작되었는지 체크)

- direct boradcast와 redirect 차단

 


DRDoS(Distributed Reflection DoS)

: 출발지 IP를 공격 대상 IP로 위조하여 대량의 syn을 reflector 서버로 전송, 공격 대상은 다량의 응답을 받아 자원 소모

일반 DoS와 달리 공격 근원지를 파악하기 힘들고 TCP/IP의 취약점 또는 정상적인 UDP 서비스의 특성 등을 이용하여 공격을 유도하기 때문에 좀비PC 없이 공격 가능

* reflector로 사용되는 것: NTP, DNS, Memcached, SNMP, SSDP, Chargen 등의 프로토콜을 사용하는 서버

 

공격 방식

- TCP 3 way handshake

- ICMP echo request/response

- UDP 프로토콜 이용 > DNS 서버 증폭, NTP 서버 증폭, SNMP agent 증폭, CHARGEN 서버 증폭

 

 

 

728x90
반응형

'Security > 보안 일반 || 관리' 카테고리의 다른 글

개인정보처리  (0) 2023.04.18
정보보안관리 법규 / CPPG  (0) 2022.08.09
API 보안  (0) 2022.05.16
System Exploitation Fundamental #1  (0) 2021.04.19
침투 테스터를 위한 파이썬 오픈소스 도구  (0) 2020.09.27

댓글