Adresseløsningsprotokoll

Den Address Resolution Protocol (ARP-Address Resolution Protocol) er en protokoll som brukes til å oversette en protokolladresse nettverkslaget (typisk en IPv4-adresse ) til en protokolladresse bindende lag (typisk en MAC-adresse ). Den ligger ved grensesnittet mellom nettverkslaget ( lag 3 av OSI-modellen ) og koblingslaget ( lag 2 av OSI-modellen ).

Den ble definert i RFC  826: En Ethernet Address Resolution Protocol .

ARP-protokollen er nødvendig for drift av IPv4 som brukes over et Ethernet- nettverk . I IPv6 blir funksjonene til ARP overtatt av NDP ( Neighbor Discovery Protocol ).

I resten av artikkelen brukes begrepet IP-adresse for å referere til en IPv4-adresse.

Operasjon

En datamaskin som er koblet til et datanettverk, ønsker å sende en Ethernet- ramme til en annen datamaskin hvis IP-adresse den kjenner og plassert i samme delnett . I dette tilfellet vil denne datamaskinen sette sin overføring på vent og utføre en nivå 2 -sending ARP forespørsel . Denne forespørselen er av typen "hva er MAC-adressen som korresponderer med IP-adresse IP -adresse  ?" Svar på myIPAddress  ”.

Siden dette er en kringkasting , vil alle datamaskiner i segmentet motta forespørselen. Ved å observere innholdet vil de kunne bestemme hvilken IP-adresse det søkes etter. Maskinen som har denne IP-adressen vil være den eneste som reagerer ved å sende avsenderenheten en ARP svar som "Jeg IP-adresse , er min MAC adresse macaddress  ". For å sende dette svaret til riktig datamaskin , oppretter det en oppføring i sin ARP-cache fra dataene i ARP-forespørselen den nettopp har mottatt.

Maskinen ved opprinnelsen til ARP-forespørselen mottar svaret, oppdaterer ARP-hurtigbufferen og kan derfor sende meldingen om at den hadde satt på vent til den aktuelle datamaskinen .

En kringkasting og en unicast er derfor tilstrekkelig for å opprette en oppføring i ARP-hurtigbufferen til to datamaskiner.

ARP-kommando

Kommandoen arptillater konsultasjon og noen ganger endring av ARP-tabellen i visse operativsystemer. Nyttig for å oppdage ARP-forgiftning .

ARP-protokollen er designet uten særlig bekymring for sikkerhet. Det er sårbart for lokale angrep på segmentet, hovedsakelig avhengig av å sende falske ARP-meldinger til en eller flere datamaskiner . De er gruppert under navnet ARP-forgiftning ( ARP-cache- forurensning ). Sikkerhetsproblemet til en datamaskin for ARP-cache-forurensning avhenger av implementeringen av ARP-protokollen fra operativsystemet .

Tenk på en Charlie-maskin som ønsker å fange opp meldinger fra Alice til Bob, som alle tilhører samme delnett. Angrepet består i at Charlie sender en " pakke "  arp who-has til Alice's maskin. Denne pakken vil inneholde spesialbygd som kilde-IP, IP-adressen til maskinen fra Bob som vi ønsker å etterligne ( ARP spoofing ) og MAC-adressen til nettverkskortet Charlie. Alice's maskin vil dermed opprette en oppføring som knytter MAC-adressen vår til IP-adressen til Bobs maskin. Alice, mottaker av "  arp who-has ", bruker pakken til å opprette en oppføring i MAC-tabellen. Hvis Alice vil kommunisere med Bob på IP-nivå, vil Charlie motta Alice's frames siden MAC-adressen vår er lagret i Alice's forgiftede cache som en ekvivalent for Bobs stasjon IP. Dette er en kjent svakhet ved ARP-implementeringen og tillater enkel korrupsjon av en ekstern ARP-cache.

Disse angrepene kan tillate kommunikasjon mellom to maskiner å bli avlyttet ( mann-i-midten-angrep ), tilkoblingstyveri, overbelastning av bryterne som fungerer som strukturen i datanettverket eller en denial of service (bare utfør et angrep av typen MITM (Man In The Middle) nekter deretter pakkene).

For å kjempe mot denne typen angrep er det mulig:

Hver oppføring i ARP-tabellen har en levetid, noe som tvinger angriperen til regelmessig å ødelegge offerets cache. Noen operativsystemer som Solaris tillater at verdien til denne tidsavbruddet (kommandoen ndd) endres . En kort verdi vil gjøre korrupsjon lettere synlig.

ARP-topptekst

Generell sak
+ Bits 0 - 7 8 - 15 16 - 31
0 Maskinvaretype Protokolltype
32 Maskinvareadresselengde Protokolladresselengde Kirurgi
64 Avsender maskinvareadresse
? Avsenderprotokolladresse
? Maskinvareadresse
? Adresse for målprotokoll

med:

Maskinvaretype ( type materiale ) Protokolltype ( Protokolltype )

Dette feltet indikerer hvilken type Layer 3 Protocol (OSI) som bruker ARP.

Maskinvareadresselengde ( lengden på den fysiske adressen )

Dette feltet tilsvarer lengden på den fysiske adressen. Lengden skal tas i byte.

Protokolladresselengde ( lengde på den logiske adressen )

Dette feltet tilsvarer lengden på nettverksadressen. Lengden skal tas i byte.

Kirurgi

Dette feltet lar deg kjenne funksjonen til meldingen og derfor dens mål.

Avsenderhardwareadresse ( avsenderens fysiske adresse )

Kilde MAC-adresse som en del av Ethernet.

Prococol avsenderadresse ( senderens nettverksadresse )

Kilde IP-adresse som en del av TCP / IP.

Maskinvareadresse ( mottakerens fysiske adresse )

Destinasjons MAC-adresse som en del av Ethernet. Hvis det er en ARP-forespørsel, blir feltet satt til 0, nettopp uten å vite denne adressen.

Målprotokolladresse ( målnettverksadresse )

Destinasjons-IP-adresse som en del av TCP / IP

Eksempel på ARP-overskrift: IPv4 over Ethernet (28 byte)
Byte 1 Byte 2 Byte 3 Byte 4
0x0001 0x0800
0x06 0x04 Kirurgi
Kilde MAC-adresse ( byte 1-4 )
Kilde MAC-adresse ( byte 5-6 ) Kilde IP-adresse ( byte 1-2 )
Kilde IP-adresse ( byte 3-4 ) Destinasjons MAC-adresse ( byte 1-2 )
Destinasjons MAC-adresse ( byte 3-6 )
Destinasjons-IP-adresse ( byte 1-4 )

Gratis ARP-spørsmål

Gratis ARP-forespørsler ( gratis ARP ) sendes når noen operativsystemer starter. For eksempel sender noen modem-rutere denne typen forespørsel ved oppstart. De lar denne enheten, ny i nettverket, sjekke at IP-adressen ikke allerede eksisterer, noe som unngår konflikter med dupliserte IP-adresser. Grensesnittet som sendte forespørselen forventer ikke svar. Oppdateringen av bufferminnet til systemene som er koblet til nettverket er deretter sikret. De bryterne er informert om eksistensen av MAC-adressen til maskinen i spørsmålet. Alle disse handlingene sikrer større påfølgende tilkoblingshastighet til nettverket. Et mangfold av overføring av denne typen spørsmål kan være en indikator på en dårlig kabel som fører til hyppige tilkoblinger.

Merknader og referanser

  1. (i) Request for Comments n o  826 .
  2. Verktøy fra Network Research Group (NRG), informasjons- og databehandlingsavdelingen (ICSD), Lawrence Berkeley National Laboratory (LBNL) LBNLs Network Research Group .
  3. arpalaert .
  4. Maskinvaretyper , på IANA-nettstedet .
  5. Merk at RFC 3927 fraråder periodisk sending av gratis ARP-forespørsler.
  6. Fri for ARP ifølge WireShark

Se også

Relaterte artikler

Eksterne linker

  1. (i) Request for Comments n o  826 .
  2. (in) Forespørsel om kommentarer nr .  2390 .
  3. (in) Forespørsel om kommentarer nr .  5494 .