본문 바로가기

Network Hacking

22일차] wireshark (arp spoof, arp security)

와이어샤크(Wireshark)는 자유 및 오픈 소스 패킷 분석 프로그램이다. 네트워크의 문제, 분석, 소프트웨어 및 통신 프로토콜개발, 교육에 쓰인다. 원래 이름은 Ethereal이었으나 2006년 5월에 상표 문제로 말미암아 와이어샤크로 이름을 바꾸었다.[위키백과]

 

[실습] telnet과정 살펴보기.

1). NETWORK-V(10.10.10.20) 서버역할을 한다. 먼저 텔넷 서버를 다운받는다.

 

2). #> vi /etc/xinetd.d/telnet 다음 그림의 12번행을 yes -> no로 변경 해준다.

 

3). 원활한 실습을 위해 방화벽을 꺼준다.

 

4). #> vi /etc/securetty에 다음 그림의 빨간 박스 부분을 추가해준다. /etc/securetty는 Telnet 접속 시 root 접근 제한 설정 파일이다. 접근을위해 추가해주는 것. (기본적으로 보안을 위해 관리자계정으로 접속을 허용시키지 않는다.)

 

5). #> vi /etc/pam.d/remote 우리가 볼것은 2행이다. 2행을 주석해준다. 2행의 pam_securitty.so에서 허용된 값만 사용자 인증에 성공값으로 처리한다. 따라서 2행을 주석하는 것.pam_securetty.so는 위에서 본 것처럼 root계정이 접근 할 수 있는 터미널이 지정되어 있는 모듈이다.

 

6). #>service xinetd start ( 인터넷 기반 연결을 관리하는 xinetd 데몬을 실행시켜 준다.)

 

7). 이제 NETWORK-W을 통해 Telnet을 하는 과정을 wireshark로 관찰해 보자.

# 3handshake를 한 것을 확인 할 수 있다.

# 파란색은 Server의 데이터고 빨간색이 Client의 데이터이다.

# login한 id와 password까지 모두 확인 할 수 있다.

 


1. 이용되는 툴

1). Dsniff : 스니핑을 위한 자동화 도구이다. 많이 알려진 툴이며, 단순한 스니핑 도구가 아니라 스니핑을 위한 다양한 툴이 패키지처럼 만들어져 있다.

2). fragrouter : 맥주소가 조작된 패킷을 라우팅하는 도구이다.

 

 

2. 하는방법

#>arpspoof -i eth0 -t 10.10.10.30 10.10.10.2

#>fragrouter -B1

- 끝 -

 

http://kimhyun2017.tistory.com/182  << 여기서 raw_packet을 통해 arp spoofing을 했던 것을 툴을 이용하면 단 2줄로 끝을 낼 수 있다.

 

 


 

arp의 보안적 문제성 & 보안 방법

인증 메커니즘이 없기 때문에 MAC 진위여부를 확인할 수 없다. GATEWAY 등 중요한 MAC같은 경우는 고정을 시켜준다면 Spoofing을 막을 수 있다.

1.) 리눅스 보안

#> arp -s [gateway Ip] [gateway MAC]

# 위와 같이 Ip와 MAC을 고정해주면 PERM(Permanent(영구적인))의 옵션이 생긴다. 이렇게하면 아무리 mac주소를 spoofing하려고해도 고정되어있기 때문에 바뀌지않는다. 하지만 리눅스를 재부팅하면 해당 설정은 없어진다. 따라서 이를 재부팅할때 마다 설정해줘야하는 문제점이 생긴다.

 

문제점해결!

디렉토리 /etc/rc.d : 각 실행 단계에서 실행되는 실제 스크립트가 저장된다. 해당 디렉터리에 들어가면 다음과같이 S(System)오른쪽에 숫자는 우선순위에 해당된다. 컴퓨터를 부팅하면 우선순위 순으로 시행이되는데 S99local에 mac주소를 고정해주는 명령어를 삽입해주면 문제는 해결된다.

 

# 원본 파일은 상위의 /rc.local파일에 있다.

 

# 이렇게 하면 부팅을해도 해당 명령이 자동 실행된다.

 

2) 윈도우 보안

기존에는 arp -s [Gateway ip] [gateway mac] 추가가 가능했으나 현재는 안됨..

 

문제점 해결!

netsh interface ip add neighbors "[dev_name]" [gatewayip] [mac] 명령어를 통해서 고정을 해 줄 수 있다.

# 유형이 정적으로 변경된것을 확인 할 수 있다.