1. 사전 지식
* UDP Flooding 이란?
서비스 거부 공격(DOS) 의 한 종류로, UDP 패킷을 다량으로 발생시켜 상대방이 정상적인
서비스를 이용하지 못하도록 대역폭을 소모시키는 공격이다
2. 공격 환경
* Sender : 192.168.0.22 (OS: Windows 7)
* Reciever : 192.168.0.109(OS: Kali Linux)
* Tool : LOIC, Wireshark, Iptables
3. 모의 시나리오
UDP Flooding을 발생시키는 모의 공격 툴인 LOIC을 이용하여 같은 네트워크 환경에 모의 공격을 실시한다.
그리고 iptables에 정책을 추가시켜 UDP Flooding의 방어가 가능한지 직접 테스트 해본다.
4. 테스트 과정 및 결과
4-1. LOIC을 이용하여 모의공격 환경 구축
LOIC(Low Orbit Ion Cannon) 툴을 이용하여 UDP Flooding을 테스트 해본다.
wireshark를 이용하여 패킷을 캡쳐해 보면 정상적으로 공격이 실행 되었음을 알 수 있다.
4-2. iptables 정책 추가 및 결과 분석
UDP Flooding을 막기 위한 iptables 방화벽 정책을 나타낸 것이다.
- $IPTABLES -N UDP : 이름이 UDP인 새로운 체인을 생성한다.
- $IPTABLES -A INPUT -p udp -j UDP : UDP 프로토콜 패킷을 UDP 체인으로 보낸다.
- $IPTABLES -A UDP -p udp --dport 80 -m recent --update --seconds 1 --hitcount 10 -j DROP
: UDP 체인에서 1초에 10개 이상 같은 ip로 udp 패킷이 들어오면 drop시킨다.
- $IPTABLES -A UDP -j LOG --log-prefix "UDP FLOOD": UDP체인을 로그에 "UDP FLOOD"라고 기록한다.
/var/log/messages에 기록된 로그 기록을 캡쳐한 화면이다.
로그 헤더에 보면 아까 정책 추가할 때 적용시켰던 "UDP FLOOD" 문구가 보임으로
정상적인 패킷필터링이 수행되었다고 할 수있다고 볼 수 있다.
'IT 그리고 정보보안 > Knowledge base' 카테고리의 다른 글
iptables 에서의 TCP 응답 (0) | 2021.04.19 |
---|---|
iptables 을 이용한 SSH Brute force 방어 (0) | 2021.04.19 |
iptables 방화벽 개념 (0) | 2021.04.19 |
방화벽(Firewall) 이란 무엇인가 (0) | 2021.04.19 |
IPSec의 개념 그리고 IPSec VPN (0) | 2021.04.19 |