본문 바로가기

정보보안기사

Section 38 37강. Section 26. 네트워크 기반 공격의 이해

- TCP SYN Flooding 공격

 > 공격 과정

 1) 공격자가 공격대상한테 SYN을 보낼 때 패킷에 Soure IP를 존재하지 않는 IP로 위조하여 전송함

 2) 공격대상은 존재하지 않는 IP로 SYN+ACK를 보내지만 존재하지 않는 호스트로부터 ACK를 수신 받지 못함

 3) 1번 과 2번이 지속적으로 발생되어 공격대상 서버의 TCP테이블은 가득차고 이후에 연결 요청은 거부 됨

 

 > 대응 방법

 1) BackLog Queue 사이즈를 늘림

 2) BackLog Queue 내 자동 삭제 옵션 추가

 3) SYN-Cookie 사용 : Server와 Client 사이에 L4 S/W를 이용해 L4 S/W가 사전 검열 후 Server와 Client 세션을 맺게함

 4) 방화벽 또는 DDoS 대응 장비를 이용해 Client의 연결 요청에 대해 임계치를 설정(또는 iptables 이용)

 5) First SYN Drop을 이용하여 출발지IP 위조 유무를 판단


-  Smurf 공격

 > 공격 과정

 1) 공격자가 Source IP를 위조하여 ICMP를 직접 브로드캐스트 주소(Directed Broadcast Address)로 다수의 시스템에 전송

 2) 다수의 시스템은 ICMP Echo 패킷을 공격대상에게 전송함

* 직접브로드캐스트 : 특정 네트워크 대역 전체를 일컬어 전체 대상

* 제한된 브로드캐스트 : 자신과 연결 된 네트워크에 대상

* ICMP + BroadCast => Smurf공격, UDP + BroadCast => Fraggle 공격

 

> 대응 방법

 1) 호스트는 ICMP 패킷에 대해 응답하지 않도록 설정

 2) 라우터(중간매개체)에서 자신의 네트워크로 직접 브로드캐스트 패킷을 막도록 설정

 3) ICMP Echo Reply 패킷이 다량으로 발생하다면 침입차단시스템을 이용해 모두 Drop


- Land 공격

 > 공격 과정

 1) 공격자가 공격대상한테 SYN을 보낼 때 패킷에 Soure IP를 공격대상IP로 변경함

 

> 대응 방법

 1) 소스IP/Port와 목적지IP/Port가 동일할 경우 차단하도록함

 2) 외부 접속IP가 내부IP로 변경되어 접속할 경우 차단하도록함


- Ping of Death

 > 공격 과정

 1) ICMP 패킷을 정상 크기보다 크게 만들어 공격 대상에게 전달

 2) 패킷 이동 중 라우터를 통해 이동하면서 작은 조각(fragment)으로 쪼개져서 이동하게 됨

 3) 공격 대상 서버는 수신 된 패킷을 다시 조립하게 되어 처리 지연이 발생됨

 

> 대응 방법

 1) 분할이 일어난 패킷을 공격으로 의심 및 탐지하는 방식


- Teardrop 공격

 > 공격 과정

 1) 공격자가 패킷 전송 시 패킷이 조각화된 후 수신자는 재조립을 통해 데이터를 조립하게 되는 원리를 이용

 2) 재조립 시 오프셋(Offset)이란 값을 더하게 되는데  오프셋값을 단편화 간에 중복 또는 값을 크게 더하여 시스템 기능 마비 유도

 

> 대응 방법

 1) 방화벽 우회 또는 보인크(Boink) 등을 이용하며 다양한 변종을 갖고 있어 차단에 어려움 갖고 있음


- Inconsistent Fragmentaion 공격

 > Bonk : 처음 패킷 전송을 1번으로 보낸 후 다음 패킷을 보낼 때 시퀀스 번호를 모두 1번으로 조작하여 전송하는 DoS 공격

 ● 시퀀스 넘버가 동일

 

 > Boink : 패킷 시퀀스 번호를 랜덤으로 보내는 공격 기술

 ● 시퀀스 넘버가 랜덤


- DDoS 공격

> 구성 요소

구성 요소 설명
공격자/봇 마스터 공격을 주도하는 자로 공격자 또는 해커의 컴퓨터 등이 해당
마스터, C&C(Command & Control)서버 공격자로부터 명령을 받은 시스템
핸들러(Handler) 프로그램 마스터시스템의 역할을 수행하는 프로그램
에이전트(Agent) 공격 대상에 직접적인 공격을 가하는 시스템으로 
슬레이브(Slave), 좀비(Zombie)라고도 불림
데몬(Daemon) 프로그램 에이전트 시스템 역할을 수행하는 프로그램
표적 공격 대상

 

> 과거 DDoS공격

 1) 트리누(Trinoo) 공격 : UDP flood 서비스거부 공격을 유발하는데 사용되는 도구

 2) TFN(Tribed Flood Network) 공격 : 트리누의 발전 된 형태로 UDP flood 공격 및 TCP SYN Flood, ICMP echo 요청, smurf 공격등을 할 수 있음

 3) Stacheldraht 공격 : 트리누 및 TFN을 참고하여 제작된 도구로 암호화 기능 추가

 4) TFN2K 공격 : TFN발전 된 형태로 특정 포트 사용하지 않으며 암호화되어있고, 포트도 임의로 결정됨

 * 위 4가지는 DDoS 공격으로 분리되며 순서대로 암기 필요

 

> 최신 DDoS 공격유형별 분류

구분 대역폭 공격 자원 소진 공격 웹/DB 부하 공격
공격 특성 높은 bps(bit per second) 높은 pps(packet per second)
높은 Connection
높은 pps
높은 Connection
공격 유형 - UDP Flooding 및 UDP 기반 반사 공격
- ICMP Flooding
TCP SYN, ACK Flooding Get Flooding
Post Flooding
피해 대상 동일 회선 네트워크 대역 서버 및 네트워크 장비 대상 웹/DB
프로토콜 UDP,CIMP, TCP TCP HTTP, HTTPS
IP 위/변조 여부 위/변조 가능 위/변조 가능 위/변조 불가능
비고 회선 대역 폭이 작으면 방어 어려움 적은 트래픽으로도 부하 유발 가능성 있음 정상적으로 세션맺은 후 진행