127.0.0.1 Loopback 트래픽을 캡쳐하려면 어떻게 해야 할까?
우선, 루프백이란 네트워크 테스트 용도로 전달된 신호를 다시 보낸곳으로 보내는 것을 의미한다. 인터페이스는 물리적 인터페이스와 가상 인터페이스로 나눌 수 있는데, 루프백은 가상 인터페이스에 속한다. 대게 vmware같은 가상 시스템을 사용할 때, 사용자 시스템에는 vmware에서 사용하는 가상 어댑터가 생성된다. 하지만 127.0.0.1 루프백 가상 인터페이스는 환경에 따라 구현되는 내용이 다르다.
와이어샤크에서 인터페이스를 확인해보자. 대부분 사용자들은 윈도우를 사용하고 있는데 유닉스/리눅스 계열의 와이어샤크에서는 기본적으로 lo(127.0.0.1) 인터페이스가 보이는 반면, 윈도우용 와이어샤크에서는 기본적으로 lo (127.0.01) 캡쳐를 제공하지 않는다. 실제 캡쳐 가능한 인터페이스는 아래와 같이 확인할 수 있다.
[그림] 와이어샤크 캡쳐 인터페이스에서 Help 버튼을 클릭해보면 확인할 수 있음
- 윈도우에서는 왜 불가능한가?
- 그래도 윈도우에서 127.0.0.1 루프백을 스니핑 할 수 있다.
RawCap 같은 로우 소켓 스니퍼를 사용하면 된다. 하지만 RawCap에는 다음과 같은 한계가 존재한다. 비스타나 윈도우7에서는 로우 소켓 구현에 한계가 있다. 따라서 XP 사용을 권장한다. 그러나 XP에서는 UDP와 ICMP 트래픽만 캡쳐되는 단점이 있고, TCP는 비스타나 윈도우7에서만 가능하다. 악성코드가 동작할 때 SSL을 이용하는 C&C 통신에서 암호화되지 않은 트래픽이 localhost에 먼저 보내어지는 경우 TCP 기반인 경우가 많다. XP에서는 안되고 비스타나 윈도우7을 이용해야 하는데, 들어오고 나가는 패킷을 받는데 문제가 있을 수 있어 제대로 캡쳐가 안될 수 있다. RawCap 활용 용도가 궁금하다면 다음 링크를 참고하면 된다.(http://www.netresec.com/?page=Blog&month=2011-04&post=RawCap-sniffer-for-Windows-released)
Due to current limitations in the raw sockets implementations for Windows Vista and Windows 7 we suggest running RawCap on Windows XP. The main problem with raw socket sniffing in Vista and Win7 is that you might not receive either incoming packets (Win7) or outgoing packets (Vista).
If you only wanna sniff from localhost/loopback (127.0.0.1) though, then newer version of Windows actually works better than the old XP. When sniffing from localhost in Windows XP you will only be able to capture UDP and ICMP traffic, and not TCP. But TCP, UDP and ICMP packets can all be sniffed properly from localhost on both Windows Vista as well as Windows 7.
# RawPcap 사용법 및 실행 결과
127.0.0.1을 캡쳐할 것이므로 다음과 같이 명령어를 실행한다.
XP에서 캡쳐한 결과이다.
'Network' 카테고리의 다른 글
DRDoS - DNS Amplification attack (0) | 2013.07.05 |
---|---|
와이어샤크 명령어로 실행하기 (0) | 2013.06.27 |
Mobile Sniffing (0) | 2013.01.21 |
Wireshark - pcapng (1) | 2012.11.05 |
MAC address OUI lookup by python (0) | 2012.09.18 |