IOS 버전 12.4 이상에서만 제공되는 명령어이다.
2. 상황
ip tcp intercept mode watch
5. 명령어
intercept mode셋팅후 telnet 접속 패킷 - R1_FW에서 양쪽 포트 잡은것임
intercept mode셋팅후 hping을 이용한 syn flooding공격을 했을때
1. 토폴로지
희생자(서버)----------fa0/0_R1_FW(firewall)_fa0/1----------공격자(클라이언트)
192.168.200.100 192.168.216.222
2. 상황
: 공격자가 서버로 Syn flooding공격을 수행
공격자가 소스 IP주소를 다르게 하여 많은 양의 Syn 패킷을 전송,
서버는 Syn Ack를 응답하고 ACK가 응답이 없게 되면 수많은 대기상태로 인해
공격자가 소스 IP주소를 다르게 하여 많은 양의 Syn 패킷을 전송,
서버는 Syn Ack를 응답하고 ACK가 응답이 없게 되면 수많은 대기상태로 인해
3. 대응책
라우터 방화벽동작으로 intercept mode를 동작시킨다.
라우터 방화벽동작으로 intercept mode를 동작시킨다.
4 . 원리
1. intercept모드 ( 디폴트모드)
ip tcp intercept mode intercept
처음 클라이언트가 서버로 세션을 맺기위해 3way hand shaking을 시작하면 중간에 라우터가 마치 서버인양 클라이언트와 세션을 맺는다.
정상적으로 수행되면 이번엔 라우터가 클라이언트인양 진짜 서버와 3way hand shaking을 통해 세션을 맺는다.
정상적으로 수행되었을 시, 클라이언트가 서버로 Push, Ack 플래그를 셋팅시켜 보내고 서버로부터 Ack를 받은 수 이후 과정을 수행한다.
1. intercept모드 ( 디폴트모드)
ip tcp intercept mode intercept
처음 클라이언트가 서버로 세션을 맺기위해 3way hand shaking을 시작하면 중간에 라우터가 마치 서버인양 클라이언트와 세션을 맺는다.
정상적으로 수행되면 이번엔 라우터가 클라이언트인양 진짜 서버와 3way hand shaking을 통해 세션을 맺는다.
정상적으로 수행되었을 시, 클라이언트가 서버로 Push, Ack 플래그를 셋팅시켜 보내고 서버로부터 Ack를 받은 수 이후 과정을 수행한다.
희생자(서버)-----------R1_FW(firewall)-------------------------공격자(클라이언트)
------->syn ---------->
<-------ack,syn <------
------> ack ---------->
<------ syn <---------------
------> ack syn---------->
<------ ack <---------------
<---------------------------------------------------------------PUSH ACK
ack---------------------------------------------------------------------->
사용이유
Syn flooding 공격은 공격자가 유효하지 않은 소스 IP주소를 가지고 세션을 맺으려 달려들기 때문에 라우터와 클라이언트가 먼저 세션이 맺어져야 실제 서버로 세션수립을 요청하게 되는 이러한 구조에서는 공격이 통하지 않는다.
의문점 1. 공격이 오면 공격자에게 RST를 보내서 세션을 끊는다고 알고있었는데,..... 찾을 수가 없었다.
Syn flooding 공격은 공격자가 유효하지 않은 소스 IP주소를 가지고 세션을 맺으려 달려들기 때문에 라우터와 클라이언트가 먼저 세션이 맺어져야 실제 서버로 세션수립을 요청하게 되는 이러한 구조에서는 공격이 통하지 않는다.
의문점 1. 공격이 오면 공격자에게 RST를 보내서 세션을 끊는다고 알고있었는데,..... 찾을 수가 없었다.
2. 서버와 R1_FW 의 세션이 잘 맺어졌다는 사실을 공격자가 알아야 하는데 어떠한 방법으로???
2.WATCH 모드
ip tcp intercept mode watch
희생자(서버)----------R1_FW(firewall)-------------공격자(클라이언트)
<--------------------- ----------------------------------------------syn
syn ack-------------------- ---------------------------------------------->
syn ack-------------------- ---------------------------------------------->
<-------------------------------------------------------------------- ack
이렇게 일반적인 세션수립과정을 그냥 보기만 하는데, 마지막에 ack가 클라이언트로부터 발생하지 않으면 R1이 RST을 서버에게 보내서 세션을 끊는다.
이유 : syn Flooding을 방어
이유 : syn Flooding을 방어
5. 명령어
!R1_FW
conf t
ip access-list extended myserver
permit tcp any host [서버IP]
exit
ip tcp intercept list myserver
ip tcp intercept mode watch 또는 이 줄 생략(디폴트가 mode intercept)
ip tcp intercept mode watch 또는 이 줄 생략(디폴트가 mode intercept)
6. 셋팅 전과 패킷 비교
intercept mode셋팅후 telnet 접속 패킷 - R1_FW에서 양쪽 포트 잡은것임
intercept mode셋팅후 hping을 이용한 syn flooding공격을 했을때
intercept mode셋팅안하고 syn flooding에 당하는거.
'보안 > Network' 카테고리의 다른 글
라우터 디폴트 셋팅 (0) | 2011.07.06 |
---|---|
[Router] 라우터의 보안 관련 요소들 (0) | 2011.07.06 |
우분투 ssh 기본 설정 및 보안 설정 (0) | 2011.07.05 |
오픈소스 IDS(침입탐지시스템) Snort_windows용 설치하기 (1) | 2011.07.05 |
[Switch] STP 설명 및 공격방법 설명 (0) | 2011.07.04 |