ARP-poisoning: definitie, technieken, verdediging en preventie

ARP-poisoning (ook wel ARP-spoofing genoemd) is een cyberaanval die via kwaadaardige ARP-berichten wordt uitgevoerd.

Een ARP-aanval is moeilijk te detecteren, maar de impact van een geslaagde aanval is onmogelijk te negeren. 

Een hacker die een geslaagde ARP-spoofing of -poisoning uitvoert, kan de controle over elk document in uw netwerk krijgen. U kunt worden bespioneerd, maar uw internetverkeer kan ook net zolang worden stilgelegd totdat u aan de eisen van de hacker voldoet.

Hieronder leggen we uit hoe een ARP-aanval in zijn werk gaat. Ook bespreken we een paar oplossingen die u meteen kunt implementeren om uw server te beschermen.

 

ARP-poisoning/spoofing

 

Wat is een ARP?

In 2001 werd het address resolution protocol (ARP) aan Unix-developers gepresenteerd. Het protocol werd destijds beschreven als een "werkpaard" dat op IP-niveau verbindingen met nieuwe hosts tot stand kon brengen.

En dit werk is van cruciaal belang, vooral als uw netwerk blijft groeien en u een manier nodig hebt om nieuwe functionaliteit toe te voegen zonder zelf elk verzoek te autoriseren.

De basis van ARP is media access control (MAC). Experts leggen uit dat een MAC kan worden gezien als het unieke hardwareadres van een ethernet-network interface card (NIC). Dit adres, in de vorm van een identificatienummer, wordt toegewezen in de fabriek, maar kan met behulp van software worden gewijzigd.

In theorie voert een ARP de volgende taken uit:

  • Verzoeken accepteren. Een nieuw device vraagt toegang tot het local area network (LAN) en geeft een IP-adres op.
  • Omzetten. De devices in het LAN communiceren niet via een IP-adres. Het ARP zet het IP-adres daarom om in een MAC-adres.
  • Verzoeken verzenden. Als het ARP een IP-adres niet kan omzetten omdat het MAC-adres niet bekend is, wordt een ARP-verzoekpakket verzonden. Hiermee wordt een query uitgevoerd op andere computers in het netwerk om de ontbrekende informatie op te halen.

Deze functionaliteit bespaart netwerkbeheerders enorm veel tijd. De verzoeken worden achter de schermen afgehandeld en het netwerk voert vervolgens alle opschoontaken uit die nodig zijn. Maar er loert gevaar.

ARP-aanvallen: belangrijkste definities

Een kwaadwillende developer die hoopt toegang te krijgen tot belangrijke data, kan kwetsbaarheden blootleggen en naar binnen glippen zonder dat u er ook maar iets van merkt.

Er zijn twee typen ARP-aanvallen.

  • ARP-spoofing: een hacker verstuurt vervalste ARP-pakketten om te proberen het MAC-adres van een aanvaller te koppelen aan een IP-adres van een computer die al op het LAN is aangesloten.
  • ARP-poisoning: na een geslaagde ARP-spoofing brengt de hacker wijzigingen aan in de ARP-tabel van de organisatie, zodat deze nu vervalste MAC-toewijzingen bevat. De besmetting verspreidt zich.

Het doel van de aanval is om een koppeling tot stand te brengen tussen het MAC-adres van de hacker en het LAN. Als dat lukt, gaat het verkeer dat naar het geïnfecteerde LAN wordt verzonden in plaats daarvan naar de aanvaller.

Na een geslaagde ARP-aanval kan een hacker het volgende doen:

  • Kapen. Iemand kan alles bekijken dat naar het LAN wordt verzonden en het daarna pas vrijgeven.
  • Service weigeren. Iemand kan weigeren om iets uit het geïnfecteerde LAN vrij te geven tenzij er een vorm van losgeld wordt betaald.
  • Er tussenin gaan zitten. Iemand die een man-in-the-middle-aanval uitvoert, kan bijna alles doen, bijvoorbeeld documenten veranderen voordat deze worden verzonden. Deze aanvallen brengen niet alleen de geheimhouding in gevaar, maar ondermijnen ook het vertrouwen van de gebruiker. Het zijn de gevaarlijkste aanvallen die iemand kan uitvoeren.

Als een hacker een eindhost wil overnemen, moet dat snel worden gedaan. ARP-processen verlopen binnen circa 60 seconden. Maar in een netwerk kunnen verzoeken wel 4 uur bewaard blijven. Dat geeft een hacker voldoende tijd om een aanval te beramen en uit te voeren.

Bekende ARP-kwetsbaarheden

Bij de ontwikkeling van ARP stonden snelheid, functionaliteit en autonomie voorop. Het protocol is dus niet gemaakt met beveiliging als uitgangspunt. Ondertussen is gebleken dat het zeer eenvoudig kan worden gespooft en voor kwaadaardige doeleinden kan worden gebruikt.

Een hacker heeft maar een paar tools nodig om dat voor elkaar te krijgen.

  • Verbinding: de aanvaller moet de controle hebben over één computer die met het LAN verbonden is. Nog beter is het als de hacker al een rechtstreekse verbinding met het LAN heeft.
  • Programmeervaardigheden: de hacker moet ARP-pakketten kunnen maken die onmiddellijk worden geaccepteerd of in het systeem worden opgeslagen.
  • Externe tools: een hacker kan een spoofing-tool gebruiken, zoals Arpspoof, om vervalste of andere niet-authentieke ARP-reacties te versturen.
  • Geduld: sommige hackers slagen erin om heel snel een systeem binnen te dringen. Anderen moeten tientallen of soms wel honderden verzoeken versturen voordat ze het LAN kunnen misleiden.

ARP is stateless en bovendien worden ARP-reacties in de meeste netwerken in caches opgeslagen. Hoe langer ze bewaard blijven, des te gevaarlijker ze worden. Eén achtergebleven reactie kan voor een volgende aanval worden gebruikt, met een ARP-poisoning als resultaat.

Een traditioneel ARP-systeem biedt geen mogelijkheden voor identity proofing. Een host kan niet bepalen of een pakket authentiek is en waar het vandaan komt.

Preventie van ARP-poisoning

Hackers die een LAN willen overnemen, voeren een voorspelbare reeks stappen uit. Eerst sturen ze een gespooft ARP-pakket, daarna versturen ze een verzoek dat aan de spoof wordt gekoppeld en vervolgens nemen ze de controle over. Het verzoek wordt naar alle computers in het LAN verzonden, waarna de hackers alle touwtjes in handen hebben.

Netwerkbeheerders kunnen twee technieken gebruiken om ARP-spoofing te detecteren.

  1. Passief: het ARP-verkeer controleren en zoeken naar ongeregeldheden in de toewijzingen.
  2. Actief: vervalste ARP-pakketten in het netwerk injecteren. Met zo'n zelfgemaakte spoofing-aanval kunt u zwakke plekken in het systeem aan het licht brengen. Als u deze kwetsbaarheden onmiddellijk verhelpt, kunt u een aanval die al in gang is gezet nog tegenhouden.

Sommige developers schrijven zelf code om een spoof te detecteren, maar dat brengt risico's met zich mee. Als het protocol te streng is, wordt er te vaak alarm geslagen, waardoor de toegang tot het systeem trager wordt. Als het protocol niet streng genoeg is, worden aanvallen die al in gang zijn gezet genegeerd omdat u ten onrechte denkt dat u veilig bent.

Versleuteling kan handig zijn. Als een hacker uw systeem binnendringt en alleen onleesbare tekst zonder decodeersleutel tegenkomt, blijft de schade beperkt. Maar u moet de versleuteling wel consistent toepassen om volledig beschermd te zijn.

Het gebruik van een VPN kan een zeer goede bescherming bieden. Devices maken dan verbinding via een versleutelde tunnel en alle communicatie wordt onmiddellijk versleuteld.

Beveiligingstools die het overwegen waard zijn

Veel organisaties bieden monitoringprogramma's waarmee u zowel toezicht op uw netwerk kunt houden als ARP-problemen kunt opsporen.

Dit zijn enkele veelgebruikte oplossingen:

  • Arpwatch: met deze Linux-tool kunt u de ethernetactiviteit controleren, waaronder ook veranderingen in IP- en MAC-adressen. Bekijk het logboek elke dag en controleer de tijdstempels om te zien wanneer een aanval heeft plaatsgevonden.
     
  • ARP-GUARD: deze oplossing biedt een grafisch overzicht van uw bestaande netwerk, inclusief illustraties van switches en routers. Het programma verzamelt geleidelijk meer informatie over de devices in uw netwerk en stelt regels op om toekomstige verbindingen te controleren.
     
  • XArp: met deze tool kunt u aanvallen detecteren die achter uw firewall plaatsvinden. U krijgt meteen een melding als een aanval in gang wordt gezet. Ook kunt u de tool gebruiken om te bepalen wat u vervolgens moet doen.
     
  • Wireshark: met deze tool krijgt u gedetailleerd inzicht in alle devices in uw netwerk. Dit is een krachtige tool, maar voor een correcte implementatie zijn specifieke vaardigheden vereist.
     
  • Pakketfiltering: met deze firewalltechniek kunt u de netwerktoegang beheren door inkomende en uitgaande IP-pakketten te controleren. Pakketten worden toegestaan of geweigerd op basis van IP-bronadressen, IP-doeladressen, poorten en protocollen.
     
  • Statische ARP: statische ARP-vermeldingen worden toegevoegd aan de cache en blijven permanent bewaard. Deze vermeldingen worden gebruikt als permanente toewijzingen tussen MAC-adressen en IP-adressen. 

Okta kan u helpen

Bij Okta begrijpen we dat u uw systemen zo goed mogelijk wilt beschermen. En dat u misschien niet zeker weet waar u moet beginnen en welke stappen u moet zetten. Wij kunnen helpen. Ontdek hoe u ARP-poisoningaanvallen kunt voorkomen met Okta.

Referenties

ARP Networking Tricks. (Oktober 2001). Computerworld. 

Domain 4: Communication and Network Security (Designing and Protecting Network Security). (2016). CISSP Study Guide (derde editie). 

Informatieblad: Man-in-the-Middle Attacks. (Maart 2020).Internet Society.

On Investigating ARP Spoofing Security Solutions. (April 2010). International Journal of Internet Protocol Technology. 

Traditional ARP. (Januari 2017). Practical Networking.

Address Resolution Protocol Spoofing Attacks and Security Approaches: A Survey. (December 2018). Security and Privacy. 

ARP Attack Detection Limitations. Security the Infosec Bag.

Arpwatch Tool to Monitor Ethernet Activity in Linux. (April 2013). TecMint.

ARP-GUARD-datasheet. ARP-GUARD.

Home. XArp.

Home. Wireshark.