선릉역 1번 출구

DRDoS 공격 유형 본문

Computer/Network

DRDoS 공격 유형

choideu 2023. 7. 13. 16:15

DRDoS란 취약한 서버를 경유하여 내가 공격하려는 서버의 대역폭을 고갈시키는 공격임

 

핵심

1. 취약한 서버는 적은 요청으로 다량의 응답을 만들어냄

2. 목적지 변조(공격하려는 대상의 IP로 변조함)

*보통 DRDoS는 UDP 프로토콜을 사용함

 

DRDoS 유형

1. DNS 서버(53/UDP)

- 다량의 응답을 만들어내는 ANY record 질의

해결책

- 53/UDP이면서 목적지 주소가 DNS server가 아닌 것 차단

 

2. NTP 서버(123/UDP)

- 다량의 응답을 만들어내는 monlist 요청

*monlist: 최근 접속한 최대 600개의 접속 호스트에 대한 정보를 응답 받을 수 있는 명령어(최근 버전에서는 삭제됨)

해결책

- 패킷에 monlist 값 포함 시 차단

- 지정된 NTP 서버만 허용하도록 설정

- 출발 포트가 123/UDP인 것 차단

- 해당 기능 비활성화(/etc/ntpd.conf -> disable monitor -> 재시작)

*취약 버전 확인(ntpdc -n -c [ip주소], 결과가 timed out이면 안전)

 

3. CLDAP 서버(389/UDP)

- CLDAP 서버가 가진 모든 entry와 attribute 값을 요청하여 다량의 응답 생성

*CLDAP: 네트워크상에서 디렉토리를 연결/검색/수정하기 위해 사용되는 프로토콜

해결책

- 외부에 노출된 CLDAP를 악용하기 때문에 LDAP 외부노출되지 않도록 함

(ldapsearch -x -h [서버IP] -s base를 통해 출력되면 외부 노출된 상태임)

 

4. SSDP 서버(1900/UDP)

- ssdp:all or ssdp:rootdevice 값이 포함된 search 명령을 IoT에게 요청함

*SSDP: UPnP 장치를 탐색할 때 주로 사용되는 프로토콜, IoT

해결책

- 해당 프로토콜은 원래 내부에서만 사용하도록 설정됨 -> 외부에서 들어오는 SSDP 패킷 차단

- 외부에 노출된 IoT 기기들을 악용하므로, 외부에 노출되지 않도록 해야함

 

5. memcached 서버(11211/UDP)

- memcached 서버로부터 캐싱 데이터를 요청하는 request 명령을 통해 다량의 응답 생성

- (key값 및 Data를 미리 확보해야함) 사전에 확보한 Key 값에 대한 data를 요청하는 것임

*emecached: DB 부하감소 및 응답속도 증가를 위해 분산된 메모리에 데이터를 캐싱하는 서비스, 내부에서만 접근하도록 설계됨(key, value형식)

해결책

- 외부에서 오는 memcached 요청 차단

 

6. WS-Discovery Reflection Attack(3702/UDP)

- 윈도우 기반 기기들에게 고의적으로 XML 오류 응답 메시지를 반복적으로 유발시키는 명령을 요청함

*ws-discovery: 윈도우 기반 기계들이 네트워크 프린터 등을 자동으로 찾아 연결 설정을 완료하는데 사용되는 서비스로 내부 네트워크에서만 이용

해결책

- 내부에서만 사용되는 프로토콜이기 때문에 외부에서 들어오는 패킷 차단(3702)

 

7. ARMS 프로토콜(3283/TCP&UDP)

- 외부에 노출된 Apple 기기들의 목록을 확보하여 기기들에게 대량의 request 패킷 요청

*ARMS: apple 기기들의 원격 제어 기능 활성화 시 사용하는 프로토콜

해결책

- 인가된 사용자만들 대상으로 허용해야하며, 외부에서 들어오는 3283 패킷 차단

 

8. CoAP(5683/UDP)

- 사전에 외부에 노출된 CoAP 프로토콜 사용기기의 목록을 확보하여 GET Request 전달함(HTTP 형식과 유사한 모양을 보임)

*CoAP: costrained application protocol은 IoT 기기들을 위해 사용되는 프로토콜의 일종으로 저전력 컴퓨터들을 위해 만들어진 간단한 UDP 프로토콜

해결책

- 내부망에서만 사용되는 프로토콜이기 때문에 5683번 포트로 인입되는 UDP 프로토콜 패킷 차단

- CoAP 기기 외부 노출 확인

 

9. Jenkins 툴(33848/UDP)

취약 버전에서 Jenkins 검색을 위해 사용되는 프로토콜의 요청을 검증없이 응답함, 검색 요청 packet을 받으면 요청 값에 관계없이 Jenkins 메타데이터의 XML 결과값 응답함

해결책

- Jenkins 자동 검색 서비스는 외부에 노출되지 않도록 설정해야하기에 인입되는 UDP 프로토콜중 33848 패킷은 차단

- 취약한 Jenkins 서버 조치 필요

 

10. 기타 reflection attack

(19) - chargen

(161) - snmp

(111) - SunRPC: 원격으로 함수를 호출하여 사용할 수 있게하며, RPC mapper를 이용해 mapper response 패킷을 피해 시스템에게 보냄

'Computer > Network' 카테고리의 다른 글

iptables  (0) 2023.07.17
snort  (0) 2023.07.17
DNS 보안  (0) 2023.06.27
무선랜  (0) 2023.06.27
망분리에 대한 고찰(2)  (0) 2023.05.29
Comments