it-swarm-korea.com

MAC 주소를 기반으로 차단할 수 있습니까?

IP를 차단하면 공격자는 새 IP를 가져 오거나 프록시를 사용하여 블록을 해결할 수 있습니다. MAC 주소를 기준으로 금지 할 수 있습니까? 원하지 않는 사용자가 사이트에 불필요한 트래픽을 발생시키지 않도록 웹 서버 수준에서 차단하고 싶습니다.

MAC 주소가 HTTP 요청의 일부로 전송됩니까?

15
Geek

아니요, MAC 주소는 헤더로 전송되지 않습니다. 터프한 경우 : https://panopticlick.eff.org/

16

짧게 , 대답은 no , 일반적으로 차단할 수 없습니다 MAC 주소를 기반으로합니다. 그리고 가능하다면 쓸모가 없을 것입니다. 이유를 이해하려면 인터넷 작동 방식에 대해 한두 가지를 알아야합니다.

장치 간 통신은 일반적으로 이더넷 프로토콜 (wiki) 을 통해 수행되며 IP로 소스 및 대상을 식별하더라도 실제 통신은 MAC별로 수행됩니다. 다음 네트워크를 상상해보십시오.

클라이언트가 서버로 패킷을 보내려면 먼저 서버가 동일한 서브넷에 있는지 확인합니다. 서버에는 10.x IP가 있고 클라이언트에는 192.168.x IP가 있습니다. 그런 다음 클라이언트는 라우터를 목적지로 전달할 수 있도록 라우터 R1에 보냅니다. 패킷은 다음을 포함합니다 :

Source IP:       192.168.1.100     (belongs to: Client)
Destination IP:  10.1.1.1          (belongs to: Server)
Source MAC:      01:01:01:02:02:02 (belongs to: Client)
Destination MAC: 02:01:01:02:02:02 (belongs to: R1)

R1은 "아, 그 IP는 인터넷 어딘가에 있습니다"와 같습니다. 소스 IP를 공개 IP로 변경하여 (서버가 패킷을 다시 보낼 수 있도록) R2로 전달합니다. 패킷에는 다음이 포함됩니다.

Source IP:       172.16.1.1        (public IP from R1)
Destination IP:  10.1.1.1          (belongs to: Server)
Source MAC:      02:01:01:02:02:02 (belongs to: R1)
Destination MAC: 03:01:01:02:02:02 (belongs to: R2)

보시다시피 대상 IP는 변경되지 않지만 MAC 주소는 라우터가 전달 된 라우터와 라우터를 기반으로 라우터에 의해 전달 될 때마다 변경됩니다.

앞으로 R2은 NAT 라우터가 아니기 때문에 R1와 같은 IP는 변경하지 않습니다 (대부분의 소비자와 마찬가지로)). R2은 단순히 패킷을 전달합니다.

결국 서버는 R3의 MAC 주소 만 볼 수 있습니다. 통신이 작동하려면 R1의 원래 IP 외에 알아야 할 모든 것입니다. (응답 패킷이 R1에 다시 오면 다른 것들은 패킷이 클라이언트로가는 길을 찾도록합니다.) 모든 통신이 단순히 MAC 기반이 아닌 이유를 알고 싶다면- serverfault에 대한이 질문 .

에 대한 한 가지 예외는 클라이언트가 서버와 동일한 LAN 내에있을 때입니다. 앞에서 언급했듯이 클라이언트는 먼저 자체 IP 서브넷과 대상을 비교합니다. 동일하면 (예 :/24 서브넷에있는 경우 192.168.1.101 및 192.168.1.44) 통신은 MAC 주소를 기반으로합니다. 클라이언트는 LAN에서 메시지를 브로드 캐스트하여 서버의 IP에 속하는 MAC을 요청한 다음 해당 MAC으로 보냅니다. 패킷에는 여전히 대상 IP가 포함되지만 둘 사이에는 라우터가 없습니다. (있을 수도 있지만 라우터가 아닌 스위치 나 허브의 역할을합니다.) 그러나 이것은 아마도 당신이 생각한 시나리오가 아닐 것입니다.

MAC를 결정할 수 있다면, 그것은 꽤 큰 개인 정보 보호 위반입니다. MAC 주소는 전 세계에서 귀하를 고유하게 식별 할 수 있기 때문에 광고 네트워크는 쿠키 나 다른 방법을 추적하지 않아도 사용자를 추적하는 데 아무런 문제가 없습니다.

MAC에 의해 공격자를 차단하는 것은 클라이언트에 의해 제어되기 때문에 쿠키 에 의해 차단하는 것과 같습니다. 현재로서는 거의 이유가 없기 때문에 거의 변경되지 않지만 MAC로 공격자를 결정하고 차단할 수 있으면 간단하게 변경할 수 있습니다. 라우팅 할 수 있으려면 IP 주소를 전체적으로 인식해야하지만 MAC에는이 문제가 없습니다.

또한 공격자는 해당 MAC 주소를 스푸핑 한 다음 블록을 트리거하여 MAC을 알고있는 클라이언트를 차단할 수 있습니다. 해당 MAC 주소를 실제로 사용하는 사람은 서비스를 사용할 수 없습니다.

결론 : 가능하다면 DoS 취약점을 도입하는 동안 다소 비효율적이지만 클라이언트가 MAC과 함께 MAC을 보내도록 할 수 없기 때문에 HTTP 헤더 또는 무언가, 동일한 LAN 외부에서는 불가능합니다.

18
Luc

소스 MAC 주소 (계층 2)에는 패킷을 전달하기 위해 마지막 라우터 만 표시됩니다.

7
Bradley Kreider

이 질문이 무엇을 의미하는지 잘 모르겠습니다-웹 서버에서 HTTP 요청을 차단합니까? 와이파이 포인트에 대한 액세스를 필터링? 방화벽과 라우팅?

그러나 MAC 주소를 기반으로 차단할 수 있는지 여부에 관계없이 더 나은 질문은 해야합니다 .
간단한 대답은 No입니다.

간단히 말해, MAC 주소는 쉽게 변경 및/또는 스푸핑 될 수 있으며 최종 사용자를 완전히 제어 할 수 있습니다 (좋아요, 거의 ). 따라서이를 기반으로 모든 유형의 제어를 구현하려고 시도 할 필요가 없습니다.

4
AviD