본문 바로가기

교육/Security

Day 71 (icmp redirect)

반응형

<목차>

1. 목적

2. 사용 툴 & 환경

3. 실습 과정

4. 결과 확인

 

1. 목적

  기본 라우터와 예비 라우터가 존재할 때 외부 네트워크 검색이용시, 기본 라우터를 이용하는 것 보다 예비 라우터를 이용하는 것이 더 빠른 경우 예비 라우터를 이용하라고 사용자에게 알려주기 위해 기본라우터가 보내는 패킷이다. 하지만 공격자가 특정 IP에 접속 할 경우 접속이 안되게 하거나 자신에게 패킷이 오게 하기 위해 사용하는 방법이다. 현재는 대부분의 운영체제에서 ICMP redirect패킷은 무시하도록 되어있다.

 

2. 사용 툴 & 환경

  1) Fragrouter : 패킷 릴레이를 하기 위해 사용한다. 사용하지 않게되면 패킷포워딩이 되지 않는다. background에서 실행되지 않기 때문에 사용중인 터미널을 닫으면 안된다.

 

  2) Icmpush : 공격자가 ICMP redirect 패킷을 송신하는 것으로 피해자의 라우팅 테이블에 특정 사이트에 접속하면 지정 IP를 게이트웨이로 사용하게 한다.

 

  3) 구성 환경

  IP주소 OS
공격자 192.168.111.26 Cent OS 6
피해자 192.168.111.29 Windows XP
지정 IP 192.168.112.152 Cent OS 7
일반 IP 192.168.112.155 Cent OS 7

  4) 실습 목표 : ICMP redirect 패킷 구성을 확인하고, 공격을 수행한다. 

 

3. 실습 과정

icmpush를 설치한다.
일반적인 상태의 route table이다.

icmpush -red -c host -gw <새로운 Gateway주소(공격자IP)> -sp <기본 Gateway주소> -dest <목적지 IP> <redirect패킷을 보낼 IP(피해자IP)>
//일반적인 형태

icmpush -vv -red -sp <기본 Gateway주소> -gw <새로운 Gateway주소(공격자IP)> -dest <목적지 IP> -c host <redirect패킷을 보낼 IP(피해자IP)>
//로도 사용이 가능하다.
-vv 자세히 보기
-red ICMP Redirect
-sp 원래 게이트웨이 주소
-gw 변경할 Gateway 주소
-dest 라우팅 테이블에 등록할 목적지
-c code(redirect 패킷인 경우 host, net등이 사용됨)

공격자가 피해자에게 ICMP redirect 패킷을 송신한다.

route Table에 공격정보가 입력되었다.

4. 결과 확인

 

목적지 IP와도 일반적인 IP와도 정상적으로 통신이 가능하다.
ICMP redirect 패킷의 구성은 사진과 같다.
피해자가 목적지 IP에 송신하는 패킷을 확인한다. redirect 패킷으로 전송하고 정상 응답을 받는다.

기대했던 결과는 지속적으로 패킷에 공격자의 IP가 노출되는 것이었다. 실제 패킷에서는 ICMP redirect패킷을 수신한 경우에만 공격자의 IP가 노출되었다. 피해자가 목적지 IP에 접속을 하게 되면 지속적으로 fragrouter가 패킷포워딩을 한다. 또한 목적지 IP에서 목적지IP로 redirect하는 내용의 패킷이 전송된다. 그리고 Ping 패킷은 공격자가 목적지 IP와 정상적인 통신이 가능하기 때문에 통신이 가능하다.

피해자가 다른 일반 IP에 송신하는 패킷을 확인한다.

하지만 기대했던 결과와는 달리 패킷상에서 공격자의 IP등을 직접 확인하는 것은 할수없었다. 하지만 공격자가 임의로 특정 IP에 접근을 방해하거나 특정 IP에 접근시 패킷 sniffing이 가능함을 확인했다.

반응형

'교육 > Security' 카테고리의 다른 글

Day 72 (DNS spoofing)  (0) 2020.03.10
Day 72 (ARP spoofing)  (0) 2020.03.10
Day 71 (ARP Spoofing)  (0) 2020.03.09
Day 70 (Scan)  (0) 2020.03.06
Day 69 (TCPdump)  (0) 2020.02.28