localhost를 스푸핑 할 수 있습니까?


9

루프백 ip를 스푸핑하여 원격 시스템이 다른 시스템의 로컬 호스트 데이터에 액세스 할 수 있습니까?

내 네트워크 외부에서 연결하는 경우 로그인 자격 증명을 제공해야하며 모든 중요한 작업에 암호가 필요합니다. 그러나 컴퓨터에서 연결하는 경우 해당 장치의 네트워크에 액세스하기 위해 OS에 로그인해야하므로 이러한 자격 증명이 필요하지 않습니다. 이런 방식으로 루프백 주소를 보안 수단으로 사용할 수 있습니까? 아니면 침입자가 마치 로컬에 연결되어있는 것처럼 보이게 할 수 있습니까?


나는 그렇게 믿지 않습니다.
SpacemanSpiff

1
127.0.0.1 에서 온 것으로 보이는 스푸핑 된 패킷을 컴퓨터가 받도록 하시겠습니까? 아니면 해결하는 스푸핑 된 패킷을받을 수있는 기계 얻을 의미합니까 127.0.0.1을?
David Schwartz

기본적으로 누군가가 내 로컬 호스트 데이터에 침입하여 localhost 인 척하여 {whatever}를 수행 할 수 있습니다.
bee.catt

"로컬 호스트 데이터로 침입"이 무엇을 의미하는지 명확하지 않습니다. 이는 127.0.0.1에서 나온 것으로 보이는 패킷을 컴퓨터에 수신하게합니까?
David Schwartz

답변:


12

아니.

데이터를 가짜 127.0.0.1로 보낼 수 있지만 응답은 루프백 인터페이스를 "아웃"(실제로 유지)하고 '손실'됩니다.

도중에 라우터가있는 경우 자체 루프백 인터페이스를 통해 패킷을 보내면 거기서 손실됩니다.


좋아, 만약 내가이 모든 것을 올바르게 이해하고 있다면, 침입자는 잠재적으로 무언가를 보낼 수 있지만, 루프백의 본질은 단지 자신과 만 대화하기 때문에 아무것도 되돌릴 수 없을 것입니다. 이것이 올바른 경우, 침입자는 원격으로 연결할 수있게하는 악성 코드를 보내거나 심지어는 일반적으로 문제를 일으키는 일부 코드 만 보낼 수 있습니까?
bee.catt

당신은 당신의 PC에 라우팅 테이블이 있는데, 어떤 패킷이 어디로 나갈지를 알려줍니다. (* nix에서 -n 경로). 루프백 인터페이스를 통해 나가기 위해 127.0.0.0/8에 대한 항목이 있습니다 (루프백이므로 실제로 나가지 않습니다). 따라서 LAN의 공격자가 PC로 패킷을 보내면 PC에서 패킷을 수락 할 수 있지만 반환 패킷은 PC 내부에 남아 있기 때문에 손실됩니다 (루프백에서 'out'으로 전송 됨)
mulaz

1
흥미로운 생각입니다. 그러나 루프백 인터페이스에는 MAC 주소가 없습니다. 따라서 대상 컴퓨터 (기술적 대상 NIC) MAC을 해당 MAC에 속하지 않는 IP와 결합하여 수신 네트워크 스택이이를 수용하기를 희망해야합니다. 그런 다음 데이터를 기대하고 실제 IP를 수신하는 것으로 패키지를 수락해야합니다. 그래도 좋은 생각입니다.
Hennes

이더넷 카드에서 Mac을 사용할 수 있습니다 (패킷을 보낼 때 Google 8.8.8.8이라고 말하면 8.8.8.8의 dst. IP로 라우터 MAC에 전송합니다). 머신은 IP 전달을 활성화해야합니다.
mulaz

컨트롤 플레인의 공격은 어떻습니까? 127.0.0.1과 같이 조작 된 소스 주소를 사용하면 일부 ACL을 무시할 수 있습니까?
sdaffa23fdsf

6

예. 놀랍게도 루프백 소스 주소를 스푸핑 할 수 있습니다. 분명히 답글을 얻지 못하므로 스푸핑 된 패킷에도 악용이 포함되어야합니다. 또한 라우터에서 중지되므로 피해자와 동일한 로컬 네트워크에 있어야합니다. 이러한 방식으로 원격 구멍 CVE-2014-9295를 악용 할 수있었습니다.

이 경우 OS X과 Linux 커널이 비슷하게 작동합니다. 외부 인터페이스에 도착하고 소스 IP 127.0.0.1로 도착하는 모든 IP 패킷은 즉시 삭제됩니다. 그러나 IPv6을 대신 사용하면 실제로 :: 1을 스푸핑하고 제어 모드 패킷을 데몬에 보낼 수 있습니다 (일부 Linux 배포판에는이를 방지하는 방화벽 규칙이 있습니다 (예 : Red Hat)). 따라서 동일한 로컬 네트워크에있는 경우 스푸핑 된 패킷을 대상의 링크 로컬 주소로 보내고 IP 제한을 무시할 수 있습니다.

http://googleprojectzero.blogspot.de/2015/01/finding-and-exploiting-ntpd.html


이것은 실제 답변입니다 ...
DeepS1X

3

루프백 데이터는 일반적으로 네트워크로 전송되지 않습니다. 발생하기 전에 인터셉트되고 루프백됩니다. 실제 네트워크에 절대 도달하지 않기 때문에 네트워크의 어느 것도 네트워크를 가로 챌 수 없습니다.


1

아니요. 루프백은 하드 코딩되어 있습니다 /etc/hosts. 이것은 리졸버가 루프백에서 IP 로의 변환을 찾는 첫 번째 장소입니다. / etc / hosts를 편집 할 수 없으면 수행 할 수 없습니다.

/ etc / hosts를 편집 할 수 있으면 관리자이므로 아무 것도 할 수 있습니다.

당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.