P2P 예방 문제
* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * *
첫째, ARP 란 무엇입니까? Unix 셸 (9x 에서도) 에 ARP-A 를 입력하면 출력은 다음과 같아야 합니다.
인터페이스: xxx.xxx.xxx.xxx
인터넷 주소 물리적 주소 유형
Xxx.xxx.xxx.xxx00-00-93-64-48-D2 동적
Xxx.xxx.xxx.xxx00-00-B4-52-43-10 동적
.........................................................................................
첫 번째 열에는 IP 주소가 표시되고, 두 번째 열에는 IP 주소에 해당하는 네트워크 인터페이스 카드의 하드웨어 주소 (MAC) 가 표시되며, 세 번째 열에는 IP 와 MAC 간의 대응 관계 유형이 표시됩니다.
Arp 는 IP 를 해당 네트워크 카드의 물리적 주소로 변환하는 프로토콜이거나 ARP 는 IP 주소를 MAC 주소로 변환하는 프로토콜입니다. Ip 가 네트워크의 대상 시스템에 응답할 수 있도록 메모리에 테이블을 유지 관리합니다.
왜 IP 를 MAC 으로 변환해야 합니까? 간단히 말해서, TCP 네트워크 환경에서 IP 패킷이 어디로 가고 어디로 가는지는 라우팅 테이블 정의에 따라 달라지기 때문입니다. 그러나 IP 패킷이 네트워크에 도착했을 때 IP 패킷에 응답하는 시스템은 IP 패킷에 포함된 MAC 주소로 식별됩니다. 즉, MAC 주소가 IP 패킷의 MAC 주소와 동일한 시스템만 IP 패킷에 응답합니다. 네트워크에서 각 호스트는 IP 패킷을 보내는 경우가 있기 때문입니다. 따라서 각 호스트의 메모리에는 ARP->; Mac 번역표. 일반적으로 동적 변환 테이블입니다. 라우팅에서는 ARP 테이블을 정적으로 설정할 수 있습니다. 즉, 호스트는 필요한 경우 해당 테이블을 새로 고칩니다. 이는 서브넷 계층에서 이더넷의 전송이 48 비트 MAC 주소에 의존하기 때문입니다.
일반적으로 호스트는 IP 패킷을 보내기 전에 변환 테이블에서 해당 IP 패킷의 MAC 주소를 찾습니다. 찾을 수 없는 경우 호스트는 다음과 같이 ARP 브로드캐스트 패킷을 보냅니다.
"저는 사회자 XXX 입니다. XXX. XXX, MAC 은 xxxxxxxxxxx, IP 는 XXX 입니다. XXX. Xx 1 입니다. 너의 MAC 을 말해줘. 클릭합니다
Ip 가 xxx.xxx.xxx.xx 1 인 호스트는 다음과 같은 ARP 브로드캐스트에 응답합니다.
"제 이름은 xxx.xxx.xxx.xx 1 이고, MAC 은 xxxxxxxxxxxxxx2 입니다."
따라서 호스트는 ARP 캐시를 플러시하고 IP 패킷을 보냅니다.
이 상식을 이해한 후, 우리는 이제 인터넷에서 ARP 사기를 실현하는 방법에 대해 이야기할 수 있습니다. 한 가지 예를 들어보죠.
침입자는 불법적으로 호스트에 들어가기를 원합니다. 그는 이 호스트의 방화벽이 192.0.0.3 (가정) 의 IP 에 대해 23 개의 포트 (텔넷) 만 개방한다는 것을 알고 있으며, 텔넷을 사용하여 이 호스트에 들어가야 한다는 것을 알고 있습니다.
1, 그는 먼저 호스트 192.0.0.3 을 연구한 결과, 이 95 대의 기계가 OOB 로 그를 죽일 수 있다는 것을 발견했다.
2. 그래서 그는 192.0.0.3 의 139 포트에 플러드 패킷을 보냈기 때문에 시스템이 해당 패킷으로 죽어야 했습니다.
3. 이 시점에서 호스트는 192.0.0.3 의 IP 패킷으로 전송되고, 시스템은 응답하지 않으며, 시스템은 자체 ARP 매핑 테이블 업데이트를 시작합니다. 192.0.0.3 의 항목을 닦아냅니다.
4. 이 기간 동안 침입자는 IP 를 192.0.0.3 으로 변경합니다.
5. 그는 호스트에 ping(icmp 0) 을 보내 호스트에 호스트의 ARP 변환 테이블을 업데이트하도록 요청했다.
6. 호스트는 IP 를 찾아 ARP 테이블에 새 IP->; Mac 통신.
7. 방화벽이 고장나고 침입한 IP 가 합법적인 MAC 주소가 되면 텔넷이 된다.
이제 호스트가 텔넷뿐만 아니라 r 명령 (rsh, rcopy, rlogin 등) 도 제공하는 경우. ), 모든 보안 프로토콜이 실패하며 침입자는 기록된 것에 대해 걱정하지 않고 이 호스트의 자원을 사용할 수 있습니다.
어떤 사람들은 이것이 실제로 IP 의 사기라고 말할지도 모릅니다. 그것은 IP 를 사용하는 것이지만 결코 IP 스푸핑이 아닙니다. Ip 스푸핑의 원리는 이것보다 훨씬 복잡하며, 실현된 메커니즘도 완전히 다르다.
이것은 같은 네트워크 세그먼트에서 발생하는 ARP 스푸핑 프로세스입니다. 그러나 스위칭 허브 또는 브리지를 사용하면 ARP 스푸핑을 막을 수 없으며 라우팅 세그먼트만 ARP 스푸핑을 방지하는 효과적인 수단입니다. 즉, IP 패킷은 라우팅되고 전달되어야 합니다. 라우팅 전달의 경우 ARP 스푸핑이 ICMP 스푸핑과 결합되면 네트워크에 큰 해를 끼칠 수 있습니다. 어떤 면에서는 침입자가 라우팅을 통해 네트워크의 두 점 사이의 통신을 수신할 수 있습니다. 방화벽을 설치한 경우 방화벽에 "XXX IP 는 기본 IP 이지만 XXX 라우팅에서" 라는 메시지가 있는지 확인합니다.
경로가 전달된 경우 IP 에 해당하는 값은 IP 를 라우팅된 호스트의 ARP 매핑 테이블에 있는 해당 경로의 MAC 입니다.
예를 들어, www.xxxx.com 을 ping 한 후, 내 호스트에서 www.xxxx.com 의 IP 대응자는 xxxx 의 MAC 가 아니라 내가 라우팅한 MAC 이며, 그 IP 도 내가 라우팅한 IP 입니다. (일부 네트워크 소프트웨어는 라우팅 ARP 를 교환하여 원격 IP 의 MAC 를 얻을 수 있습니다.)
침입자가 갑자기 생각 한다고 가정해 봅시다: 나는 방화벽을 가진 호스트에 도달 하는 경로를 통과 해야 합니다! ! !
그래서 침입자들은 생각하기 시작했습니다.
1. 내 컴퓨터는 그 네트워크 세그먼트에 액세스할 수 있지만 192.0.0.3 IP 는 사용하지 않습니다.
2. 만약 내가 그 IP 를 사용한다면, 정품 192.0.0.3 기계가 죽어도 그 네트워크의 기계는 IP 가방을 라우팅에 던져주지 않을 것이다.
그래서 호스트를 속여 IP 패킷을 라우팅에 던지고 싶습니다.
이것은 각종 사기 수단을 통해 실현될 수 있다. 그래서 그는 이렇게 하기 시작했습니다.
1. 자신이 보낸 불법 IP 패킷이 네트워크에서 장기간 살아남도록 TTL 을 수정하여 후속 과정에서 발생할 수 있는 문제를 준비하기 시작했습니다. 그는 TTL 을 255 로 바꿨다. (TTL 은 IP 패킷이 네트워크의 호스트에 도달할 수 없을 때 네트워크에서 살아남을 수 있는 시간을 정의합니다. 이 경우 시간이 오래 걸리면 충분히 재생하는 데 도움이 됩니다. ) 을 참조하십시오
2. 그는 스니퍼를 사용할 때 저장한 다양한 IP 패킷 유형이 들어 있는 플로피 디스크를 꺼냈다.
3. 그는 합법적인 IP 로 네트워크에 접속한 후 홍수가방을 보내 정품 192.0.0.3 을 위와 같이 죽게 한 후 192.0.0.3 으로 네트워크에 접속했다.
4. 이 네트워크의 호스트가 192.0.0.3 의 원래 MAC 을 찾을 수 없을 때 자신의 ARP 매핑 테이블이 업데이트됩니다. 그래서 그는 플로피 디스크에 있는 ARP 브로드캐스팅 팩에 대한 데이터를 서둘러 수정하며 웹캐스트에 "IP 가 192.0.0.3 인 MAC 에 응답할 수 있는 것은 바로 나다" 고 말했다.
5. 자, 이제 각 호스트는 새로운 MAC 주소가 IP 192.0.0.3 에 해당한다는 것을 알고 있습니다. ARP 스푸핑이 완료되었습니다. 그러나 각 호스트는 LAN 내에서만 이 주소를 찾고 192.0.0.3 으로 보낸 IP 패킷은 라우터에 전혀 던지지 않습니다. 그래서 그는 ICMP 리디렉션 방송을 만들어야 한다.
6. 그는 플로피 디스크의 ICMP 브로드캐스트 팩에 대한 데이터를 수정하기 시작한 다음 이 패키지를 보내 네트워크의 호스트에 "192.0.0.3 으로 가는 최단 경로는 LAN 이 아니라 라우팅" 이라고 알렸다. 호스트에 라우팅 경로를 리디렉션하고 모든 IP 패킷을 해당 경로에 던지도록 요청하십시오.
7. 호스트는 이러한 합리적인 ICMP 리디렉션을 수락하여 자신의 라우팅 경로를 수정하고 모든 IP 통신을 라우터에 던집니다.
8. 침입자는 결국 라우팅 외부의 라우팅 호스트로부터 IP 패킷을 받을 수 있습니다. 그는 텔넷을 호스트 포트 23 으로 부팅하고 IP 192.0.0.3 을 사용할 수 있다.
이것은 전형적인 예일 뿐이며, 실제 작업에서 고려해야 할 문제가 더 많다는 점에 유의해야 한다.
지금 생각해 보세요, 만약 그가 스니퍼를 사용하고 싶다면?
ARP 스푸핑을 통해 침입자는 다음을 수행할 수 있습니다.
1, IP 기반 보안 부족, 합법적인 IP 를 사용하여 호스트에 들어갑니다.
2. NSF, R and R 시리즈 명령과 같은 많은 IP 기반 프로그램의 보안 검사를 피하십시오.
그는 심지어 책임을 누군가에게 떠넘기고, 그가 황하를 뛰게 하면, 그는 더 이상 살 수 없을 것이다!
ARP 스푸핑을 어떻게 방지합니까?
1. 당신의 사이버 보안 신뢰 관계를 IP 또는 MAC (rarp 에도 부정행위 문제가 있음) 에 세우지 말고, 이상적인 관계는 ip+mac 에 구축되어야 합니다.
2. 정적 MAC 설정->; Ip 매핑 테이블, 호스트가 설정한 변환 테이블을 새로 고치지 않도록 합니다.
3. 필요한 경우가 아니면 ARP 사용을 중지하고 ARP 를 해당 테이블에 영구 항목으로 저장합니다.
4. ARP 서버를 사용합니다. 이 서버를 통해 자신의 ARP 변환 테이블을 찾아 다른 시스템의 ARP 방송에 응답합니다. 이 ARP 서버가 해킹되지 않았는지 확인합니다.
5. "에이전트" 를 사용하여 IP 전송을 프록시합니다.
6. 하드웨어로 호스트를 차폐합니다. 경로를 설정하고 IP 주소가 올바른 경로에 도달할 수 있는지 확인합니다. (라우팅 ARP 항목의 정적 구성) 스위칭 허브와 브리지를 사용해도 ARP 스푸핑을 막을 수 없습니다.
7. 관리자는 정기적으로 응답한 IP 패킷에서 rarp 요청을 가져와 ARP 응답의 신뢰성을 확인합니다.
8. 관리자는 정기적으로 폴링하여 호스트의 ARP 캐시를 확인합니다.
9. 방화벽을 사용하여 네트워크를 지속적으로 모니터링합니다. SNMP 를 사용할 때 ARP 스푸핑으로 인해 트랩 패킷이 손실될 수 있습니다.
ARP 캐시 레코드 형식:
각 동작:
IF 인덱스: 물리적 주소: IP 주소: 유형
여기서: 인덱스가 다음과 같은 경우 :
1 이더넷
2 실험 이더넷
3 X.25
4 Proteon ProNET (토큰 링)
5 혼합 모드
6 IEEE802. 엑스선
7 호 네트워크
ARP 브로드캐스트 애플리케이션 및 응답 구조
하드웨어 유형: 프로토콜 유형: 프로토콜 주소 길이: 하드웨어 주소 길이: opcode: 송신기 하드웨어 주소:
발신자 IP 주소: 수신자 하드웨어 주소: 수신자 IP 주소입니다.
여기서 프로토콜 유형은 5 12 제록스 PUP 입니다.
5 13 PUP 주소 변환
1536 제록스 NS IDP
2048 인터넷 프로토콜 (IP)
2049 X.752050NBS
205 1 ECMA
2053 X.25 3 층
2054 년 ARP
2055 년 XNS
4096 버클리 추적기
2 1000 BBS Simnet
24577 12 월 호주 달러 덤프/적재
24578 DEC MOP 원격 콘솔
24579 DEC 네트워크의 네 번째 부분
24580 년 12 월 하순
12 월 24582 일
32773 마력 검출기
3282 1 RARP
32823 애플 톡
란교 32824 호
NetXRay 를 사용해 본 적이 있다면, ARP 스푸핑이 ICMP 스푸핑과 함께 어떤 종류의 방송 패킷을 A 로 유입하는 방법을 자세히 이해하는 데 도움이 될 것입니다.
* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * *
그 관리 소프트웨어는 ARP 스푸핑을 이용하여 자신을 게이트웨이로 위장하여 인터넷 속도를 제한하는 반면, 방화벽은 ARP 프로토콜을 통해 실제 게이트웨이와 능동적으로 연락을 유지하여 속지 않도록 합니다.
방화벽을 설치했는데도 속도가 느리다. 당신과 같은 인트라넷 사용자가 초고속, 빠른 바람, BT, 당나귀, 와가, PPS 등 인터넷 TV 나 다운로드된 소프트웨어와 같은 대역폭을 많이 차지하는 소프트웨어를 사용했기 때문에 정상적인 네트워크 응답을 받지 못하기 때문이다. 상대방이 방화벽을 설치하고 상대방의 인터넷 속도를 제한하는 좋은 소프트웨어가 없다면, 하드웨어로 속도를 제한하는 것 외에 상대방과 협상할 수밖에 없다.