2009-02-06 3 views
14

PC가 네트워크 (무선 또는 유선)에도 연결되어있는 경우 루프백 IP 127.0.0.1 (로컬 호스트)을 사용하여 로컬 컴퓨터에서 교환되는 모든 데이터를 패킷 스니핑 할 수 있습니까?루프백에서 트래픽이 패킷 스니핑 될 수 있습니까?

로컬에서 실행되는 프로세스의 프로세스 간 통신 수단 인 루프백이 데이터 교환의 안전한 수단으로 간주 될 수 있는지 알고 싶습니다 (예 : 네트워크 외부에있는 모든 사용자가 쉽게 손쉽게 삭제할 수 있는지 확인하십시오). 패킷 스니퍼 프로그램 포함).

이 질문은 모든 관련 OS 플랫폼에 관련하여 요구되는

:

  • 윈도우 2000/WINXP
  • 비스타
  • 윈도우 7
  • 맥 OS X
  • 리눅스

답변

14

네트워크에서 패킷을 스니핑하는 것이 안전해야합니다. tr affic은 전선 (또는 공중파)에 결코 빠지지 않습니다.

해당 로컬 시스템의 프로세스가 패킷을 스니핑 할 수 있습니다.

+0

1 :

이 StackOverflow의 스레드에 대한 추가 정보를 찾을 수 있습니다. 그런데 왜 같은 기계에서 스니핑을해야합니까? 동일한 시스템에 있고 루프백을 납치 할 수있는 경우 이미 루트가 있습니다.그냥 프로세스 메모리를 직접 읽으십시오 :) – JaredPar

+0

Windows 루프백 트래픽이 네트워크에 표시되지 않는다고 들었지만 Linux 루프백이 다르게 구현되었다고 들었습니다. 네트워크에서 스니핑되는 경향이있을 수 있습니다. 따라서 군중의 집단적 지혜가 말하는 것을 보려고합니다. :-) – RogerV

+3

나는 개인적으로 네트워크상의 루프백 패킷을 보내고있는 리눅스에 어떤 문제가 있는지 알지 못한다. (루프백 주소가 같은 모든 장치에서 패킷을 다시 가져 오는 방법은 무엇입니까?) – VBNight

0

루프백 인터페이스는 외부 네트워크와 관련하여 안전하다고 간주 할 수 있습니다. 동일한 호스트 내에서 보안되지 않습니다.

1

저는 대중적인 패킷 스니퍼가 루프백 인터페이스를 스니핑 할 수 없다는 것을 확신합니다. 로컬 호스트에서 디버깅 할 때 많은 슬픔과 성가심의 원인이됩니다.

0

지금까지의 답변은 정확하지만 다른 방식으로 사용하겠습니다. 로컬 호스트 자체에서 루프백 어댑터 통신을 스니핑 할 수도 있지만 일반적으로 운영 체제에 따라 특별한 드라이버가 필요합니다. 루프백 통신은 외부 스니퍼로부터 안전합니다.

루프백 통신을 감지해야하고 설치가 쉽지 않은 경우가 있었지만 가능했다 (적어도 Windows에서는 Linux에서도 마찬가지였습니다).

+3

Linux의 루프백 스니핑에는 특별한 드라이버가 필요하지 않습니다. – Alnitak

23

예, 안전합니다. VBNight에 명시된 바와 같이 트래픽은 전선이나 공중에 결코 닿지 않습니다.

그러나 로컬 시스템에서 localhost 트래픽을 실제로 감지 할 수 있습니다.

sudo tcpdump -i lo 

tcpdump: verbose output suppressed, use -v or -vv for full protocol decode 
listening on lo, link-type EN10MB (Ethernet), capture size 96 bytes 
15:29:58.056585 IP localhost.56010 > localhost.16001: S 3572335637:3572335637(0) win 32792 <mss 16396,sackOK,timestamp 132126218 0,nop,wscale 6> 
15:29:58.056604 IP localhost.16001 > localhost.56010: R 0:0(0) ack 3572335638 win 0 
15:29:59.026016 IP localhost.41664 > localhost.41664: UDP, length 1 
15:29:59.026346 IP localhost.41664 > localhost.41664: UDP, length 1 
15:29:59.126838 IP localhost.41664 > localhost.41664: UDP, length 1 
15:29:59.127486 IP localhost.41664 > localhost.41664: UDP, length 1 

그래서, 당신은 당신의 자신의 트래픽/IPC 메시지를 도청하는 데 사용할 수 있지만 아무도 네트워크에 그것을 볼 수 있습니다 내 리눅스 상자에서 예를 들어, 나는 다음과 같은했다.

lo 인터페이스를 통해 로컬 IPC에 TCP 또는 UDP와 같은 프로토콜을 사용하는 경우가 일반적입니다.

+1

root가 아닌 사용자도 localhost 트래픽을 감지 할 수 있습니까? 예를 들어, cuold 비 루트 사용자 snif 비 루트 사용자 B의 루프백 IPC 데이터? – kralyk

+0

@kralyk no. 'tcpdump : lo : 그 장치에서 캡처 할 수있는 권한이 없습니다. (소켓 : 작동이 허용되지 않습니다.) ' – sourcejedi

+0

@kralyk, 네트워크 인터페이스를 무차별 모드로 설정하려면 루트 권한이 있어야합니다. sudo tcpdump -i lo를 시도하십시오. –