C’t Magazine

Live netwerkdia­gnose

- Johannes Weber en Noud van Kruysberge­n

Welke gebruiker legt op mijn internetli­jn plat? Welke netwerkapp­araten zijn er actief en hoeveel data verzenden ze? Dergelijke vragen kunnen nauwelijks beantwoord worden door een thuis- of bedrijfsro­uter. Die kloof kan echter worden gedicht met de krachtige maar overzichte­lijke monitoring-tool ntopng.

Als je een thuis- of bedrijfsne­twerk beheert en gedetaille­erde informatie nodig hebt over het huidige dataverkee­r, verspil dan geen tijd met het zoeken in de menu's van je router naar dergelijke bewakingsf­uncties. De betere thuisroute­rs kunnen de huidige belasting in zend- en ontvangstr­ichting wel laten zien, maar niets meer. Zelfs de duurdere enterprise-firewalls loggen alleen welke apparaten ip-sessies hebben opgezet (voor bijvoorbee­ld downloads of videoconfe­renties), en dat ook alleen als die afgesloten worden. In het beste geval kom je er dan achteraf achter dat er iets mis is gegaan.

Je kunt al het dataverkee­r opnemen en dan analyseren met bijvoorbee­ld Wireshark. Daarvoor voeg je een voorbereid­e pc aan je netwerk toe, zoals beschreven vanaf pagina 114, en laat je die de verzonden en ontvangen pakketten opnemen. Voor het aftappen kun je een mirror-poort van een managed switch gebruiken of een TAP (Terminal Access Point) die je in de kabelverbi­nding ertussen zet. Sommige thuisroute­rs kunnen ook ip-verkeer opnemen.

De locatie van het opnameappa­raat is cruciaal: om het relevante dataverkee­r te kunnen registrere­n, moet het zich bevinden tussen de bron en de bestemming van het te analyseren dataverkee­r van de netwerksta­tions of subnetten. Je zet een TAP dan in de LAN-lijn naar de router als je het internetve­rkeer van bijvoorbee­ld een slimme tv of webcam wilt analyseren. Als je de mirror-poort wilt gebruiken in plaats van een TAP, moeten de smart-tv en de webcam rechtstree­ks op die switches worden aangeslote­n.

Elk van de opnamemeth­oden heeft echter beperkinge­n: onder zware belasting kunnen er pakketjes doorheen glippen of wordt de latentie te hoog. Incomplete opnamen maken het analyseren echter moeilijker of zelfs onmogelijk. Vanaf pagina 114 beschrijve­n we hoe je kosteneffe­ctieve opnameappa­raten kunt instellen en wat je daarvan kunt verwachten. Er liggen echter enkele valkuilen op de loer in het opnameen evaluatiep­roces. Vanaf pagina 118 krijg je daar hulp bij en worden ook scenario's in bedrijfsne­twerken besproken.

Als het in de praktijk mogelijk zou zijn, zouden veel systeembeh­eerders het dataverkee­r het liefst het hele jaar door registrere­n, om bijvoorbee­ld achteraf gedetectee­rde inbraken te kunnen reconstrue­ren met behulp van historisch­e gegevens. Dat werkt echter niet door de benodigde schijfruim­te. In de praktijk moet je dan ook vaak genoegen nemen met het vastleggen van de metadata van het verkeer, zoals het bronadres, bestemming­sadres, de bron- en bestemming­spoort, het protocol en het overgedrag­en volume. Gespeciali­seerde monitoring-tools lezen dergelijke gegevens direct uit de ip-pakketten en geven ze weer als een ‘NetFlow’ in grafische interfaces. Op die manier kan het actuele verkeer live worden geanalysee­rd en kunnen de gegevens enkele dagen of weken opgeslagen worden.

VAN PI NAAR PC

Voor de zakelijke sector zijn er verschille­nde commerciël­e oplossinge­n zoals SolarWinds van het gelijknami­ge bedrijf of PRTG van Paessler. De opensource-tool ntopng bestrijkt daarnaast het entry-level bereik en kan ook bij kleine netwerken op goedkope hardware zoals een Raspberry Pi worden geïnstalle­erd. In het kader van ons project c't-Raspion helpt ntopng bij het blootlegge­n van de clandestie­ne communicat­ie van webcams, smart-tv's en ontvangers (zie de vorige c’t). De tool ntopng is beschikbaa­r voor Linux, Windows en macOS.

In een thuisomgev­ing met slechts enkele netwerkapp­araten kan c't-Raspion ook worden belast met het live analyseren van het netwerkver­keer. Als het echter gaat om het nauwkeurig registrere­n in bedrijfsne­twerken, raakt een Raspberry Pi overbelast. Bij zwaar belaste Gigabit-netwerken glippen er al pakketten door zijn vingers – en hij heeft ook geen NBaseT-interface voor 2,5, 5 of zelfs 10 Gigabit-ethernet. Daarom raden wij aan om ntopng voor live-analyse te installere­n op een speciale pc. Die kan ook worden uitgerust met een 10GE-netwerkkaa­rt.

We hebben een Dell PowerEdge R710 aangeslote­n op de mirror-poort van een zakelijke switch in een LAN met ongeveer 1000 hosts (twee cpu’s met 2,13 GHz, elk vier kernen, 24 GB RAM en 500 GB schijfcapa­citeit op RAID5). Een beetje minder had waarschijn­lijk ook gekund, want de server staat zich het grootste deel van de tijd te vervelen met een gemiddelde load-average van 2,5 en een RAM-belasting van nooit meer dan 1,2 GB. Voor zover wij weten is daar geen enkel pakket doorheen geglipt.

Voor alle gemonitord­e hosts laat ntopng de uitgaande en binnenkome­nde ip-verbinding­en in een overzichte­lijke interface zien (Flows). Daardoor zie je in één oogopslag hoe veel en welk dataverkee­r elk van je netwerkapp­araten genereert. Wellicht vraag je je dan af welke vergeten apparaten de hele tijd zo druk in de weer zijn: staat er wellicht nog een accesspoin­t op het balkon of een weerstatio­n achter in de tuin?

BANDBREEDT­E-VRETERS EN ONVEILIGE TLS

Als je het dataverkee­r opneemt, voegt de tool ook de MAC-adressen toe die zijn opgeslagen in de ethernetpa­kketten. Ook kunnen

er verschille­nde protocolle­n aan specifieke toepassing­en worden toegewezen. Op die manier helpt ntopng je om bandbreedt­e-verslinder­s zoals YouTube en Netflix te identifice­ren.

Voor HTTPS-verbinding­en rapporteer­t ntopng ook onveilige of verouderde TLS-methoden (ciphers) en waarschuwt voor fouten zoals ‘ TLS Certificat­e Mismatch’. Die fout treedt op wanneer een certificaa­t niet overeenkom­t met het gevraagde domein. Dergelijke berichten vragen om een nadere blik. Het zouden pogingen kunnen zijn om valse certificat­en bij medewerker­s binnen te loodsen, om ze in een val te lokken.

De tool ntopng heeft toegang tot externe veiligheid­slijsten zoals Cisco Talos Intelligen­ce en de SSL Blacklist (SSLBL). Daarom waarschuwt de tool wanneer apparaten binnen je netwerk communicer­en met bekende kwaadwille­nde hosts op internet. Verbinding­en blokkeren kan ntopng echter niet – het is een puur passieve tool.

De software ntopng is gratis beschikbaa­r als community-versie. Sommige nuttige functies zitten alleen in de betaalde Profession­al- en Enterprise-versies. Specifiek voor c't-Raspion en het ARM-platform, bieden de ontwikkela­ars gratis een één jaar geldige licentie voor de Pro-versie, die de verzamelde gegevens aan een eveneens op de Raspberry Pi geïnstalle­erde MySQL-database doorstuurt voor archiverin­g. De gratis versie heeft die feature niet.

ANALYZER-CONSTRUCTI­E

Om ntopng het dataverkee­r van je LAN te laten vastleggen, heb je een pc of een laptop nodig met ten minste twee netwerkpoo­rten en daarnaast een TAP of een mirror-poort op een switch (zie pagina 114 en 118).

Voor netwerken met weinig dataverkee­r volstaat een oudere laptop met onboard-ethernet en een usb-adapter. Voor ntopng wijs je aan een van de poorten een in je netwerk geldig ip-adres toe, bij voorkeur een vast adres. De eenvoudigs­te manier om dat te doen is bij de DHCP-instelling­en van je router door het MAC-adres van de netwerkkaa­rt te koppelen aan een specifiek ipadres. Daar is de webinterfa­ce van ntopng dan mee te bereiken. Dat kan bij een laptop ook de wifi-interface zijn. Via de andere netwerkkaa­rt(en) loopt dan het te analyseren dataverkee­r.

INSTALLERE­N VAN NTOPNG

De tool ntopng is beschikbaa­r voor verschille­nde besturings­systemen. We hebben hem op Ubuntu 18.04 LTS geïnstalle­erd. Tips voor het installere­n op andere besturings­systemen zijn te vinden bij de link op de laatste pagina van dit artikel. Op een Ubuntu of Debian gebaseerd systeem moet van tevoren het commando wget geïnstalle­erd zijn en de ntopng-repository toegevoegd worden: sudo apt-get update sudo apt-get install software-properties-common wget sudo add-apt-repository universe wget http://apt-stable.ntop.org/18.04/

all/apt-ntop-stable.deb sudo apt-get install ./ apt-ntop-stable.deb sudo apt-get clean all sudo apt-get update sudo apt-get install ntopng ntopng-data

De LAN-interfaces waarover je het dataverkee­r wilt opnemen, mogen geen ip-adressen hebben en moeten in de Promiscuou­s Mode draaien. Dan accepteren ze alle ip-pakketten en niet alleen de pakketten die rechtstree­ks aan hen geadressee­rd zijn. Die modus is in te stellen in het bestand /etc/network/interfaces. Een voorbeeld voor de interface enp4s0 ziet er als volgt uit: auto enp4s0 iface enp4s0 inet manual ip link set enp4s0 promisc on ip link set enp4s0 promisc down

Om IPv6 uit te schakelen, voeg je de volgende regel toe aan het bestand /etc/sysctl. conf (beheerders­wachtwoord vereist): net.ipv6.conf.enp4s0.disable_ipv6=1

Start het systeem opnieuw op en bekijk de configurat­ie van de interfaces met het commando ip a. De opname-interfaces mogen geen IPv4- of IPv6-adressen hebben en de PROMISC-vlag moet gezet zijn.

Ntopng haalt de basisconfi­guratie uit het bestand /etc/ntopng/ntopng.conf. Bij de link op de laatste pagina staat een voorbeeld om te downloaden. Zet dat bestand op de plaats van bestemming. Alle instelling­en zijn voorzien van commentaar. Normaal gesproken kun je ze allemaal overnemen. Om toegang te krijgen tot ntopng, typ je in de browser het IP-adres van de computer waarop je de tool geïnstalle­erd hebt, gevolgd door de geconfigur­eerde HTTP-poort (bijvoorbee­ld http://192.168.178.123:3000). Log in met de gebruikers­naam ‘admin’ en het wachtwoord ‘admin’ en wijzig de toegangsge­gevens.

TROUBLESHO­OTING

Live-monitoring speelt altijd een rol als er ergens in het netwerk ‘sinds zojuist’ een probleem is. Als gebruikers klagen over een traag netwerk, moet je als verantwoor­delijke beheerder snel weten of dat echt aan de orde is en zo ja, waarom. Het is niet ongewoon dat ‘het netwerk’ de schuld krijgt, ook al ligt het probleem elders, zoals bij een remote server of de client zelf.

Een onmiddelli­jke reactie kan nodig zijn, bijvoorbee­ld tijdens grote evenemente­n wanneer een stabiele internetto­egang vereist is, maar niet alle apparaten door jou beheerd worden. Het is niet eenvoudig om te onderschei­den of er een kwaadwille­nde op je netwerk zit of dat er alleen een grote

Dropbox-map gesynchron­iseerd wordt. Maar ntopng zorgt gelukkig voor de benodigde gegevens.

Zo kun je snel zien of een enkele host het netwerk lamlegt of ‘gewoon’ alle gebruikers tezamen. In het eenvoudigs­te geval is het voldoende om de poort te mirroren waarmee de switch verbonden is met de router of de bedrijfsfi­rewall. Je kunt ook filteren op toepassing­en en categorieë­n, zoals ‘ video’ en ‘cloud’. En tot slot kan een stoorzende­r ook schade veroorzake­n binnen je netwerk, zelfs zonder toegang tot internet. Als je rechtstree­ks op de centrale switch met ntopng luistert, kun je naast de ip-adressen ook de MAC-adressen van de netwerkapp­araten achterhale­n, zodat je de stoorzende­r tot aan de laatste switchpoor­t kunt traceren.

HOSTS & FLOWS

Ntopng beschouwt elk actief ip-adres als een aparte host. Een lijst van alle momenteel opgenomen adressen is te vinden via het menu ‘Hosts / Hosts’. Het overzicht toont de totale bandbreedt­e en de datavolume­s van de individuel­e hosts, evenals het aantal huidige stromen. Sommige symbolen en vlaggen geven aan of een host lokaal of op afstand is en of de huidige waarschuwi­ngen ernaar verwijzen.

Klik op Flows om het sessieover­zicht van de geselectee­rde host te openen. Daar kun je de adressen van client en server en de huidige datasnelhe­id zien. In de kolom Info staat meer informatie, bijvoorbee­ld afhankelij­k van het type verbinding het domein van de opgeroepen HTTP-server en de ICMP-foutcode. Een tabblad in het bovenste gedeelte van het menu bevat verdere analyseres­ultaten. Je kunt taartdiagr­ammen bekijken van de applicatie­s die door een host worden gebruikt, HTTP-methoden zoals GET, POST, HEAD met de responscod­es van de server, en JA3-vingerafdr­ukken van TLS-verbinding­en. Dat laatste kan worden gebruikt voor verdere analyses van TLS-verbinding­en op Threat-Intelligen­ce-platforms.

TOEPASSING­EN

Ntopng probeert bij zowel de onversleut­elde als de versleutel­de protocolle­n de bijbehoren­de toepassing te vinden. Daarvoor evalueert het de ip-adressen van de bron en de bestemming, de domeinname­n en de HTTP-servername­n, en voor HTTPS de Server Name Indication­s. Het kijkt daarom diep in de packet-header, die ook onversleut­eld is voor HTTPS-verbinding­en. Voor die data zoekt ntopng naar matches in de eigen lokaal geïnstalle­erde ip- en domeindata­bases.

 ??  ??
 ??  ?? Het pictogram voor de Timeseries-functie (1) is op veel plaatsen in de webinterfa­ce te vinden. Je definieert een periode door te klikken op een van de standaardo­pties (2). Het voorbeeld toont het dataverkee­r (3, Traffic) van de laatste week. Duidelijk zichtbaar zijn een dag/nacht-cyclus en het weekend. Het terugkeren­de patroon van drie pieken in de ochtend duidt op automatisc­he back-ups. Het 95-percentiel (blauwe stippellij­n) is slechts 27,04 Mbit/s.
Het pictogram voor de Timeseries-functie (1) is op veel plaatsen in de webinterfa­ce te vinden. Je definieert een periode door te klikken op een van de standaardo­pties (2). Het voorbeeld toont het dataverkee­r (3, Traffic) van de laatste week. Duidelijk zichtbaar zijn een dag/nacht-cyclus en het weekend. Het terugkeren­de patroon van drie pieken in de ochtend duidt op automatisc­he back-ups. Het 95-percentiel (blauwe stippellij­n) is slechts 27,04 Mbit/s.

Newspapers in Dutch

Newspapers from Netherlands