Wat is SNMP?
SNMP (Simple Network Management Protocol) is een gestandaardiseerd netwerkprotocol waarmee een centraal beheersysteem de status, prestaties en configuratie van netwerkapparatuur opvraagt, meldingen ontvangt en instellingen wijzigt. Het protocol is in 1988 door de IETF ontwikkeld en wordt vandaag ondersteund door vrijwel elke switch, router, firewall, UPS en printer. In IT-netwerken is SNMP al decennia de basis van netwerkbeheer; in OT-netwerken bewaakt het industriële switches, HMI’s en zelfs PLC’s. Juist omdat SNMP zo breed beschikbaar is, is het ook een bekende aanvalsroute wanneer het onveilig is ingericht.
🧠 Hoe werkt SNMP?
SNMP werkt volgens een eenvoudig manager-agentmodel met drie bouwstenen:
- SNMP-manager - het beheersysteem (bijvoorbeeld Zabbix, PRTG of Nagios) dat gegevens verzamelt, drempels bewaakt en commando’s verstuurt
- SNMP-agent - software op het apparaat zelf die de actuele waarden bijhoudt en op verzoeken antwoordt
- MIB (Management Information Base) - de beschrijving van welke objecten een apparaat beschikbaar stelt; de MIB is het schema, de agent levert de live waarden
Elk object heeft een OID (Object Identifier): een numeriek pad in een wereldwijde
boomstructuur. Standaardobjecten staan onder 1.3.6.1.2.1 (mib-2), zoals sysDescr
(1.3.6.1.2.1.1.1.0, de apparaatbeschrijving) en sysUpTime (1.3.6.1.2.1.1.3.0). Fabrikanten definiëren eigen objecten onder 1.3.6.1.4.1
(enterprises), bijvoorbeeld voor temperatuur, voeding of PROFINET-diagnose.
De communicatie loopt over UDP: de agent luistert op poort 161 voor verzoeken, de manager ontvangt meldingen op poort 162. SNMP kent twee werkwijzen:
- Polling - de manager vraagt periodiek waarden op, doorgaans elke 1 tot 5 minuten
- Notificaties - de agent meldt zelf een gebeurtenis, zoals een link die wegvalt of een herstart
🔧 Welke berichttypen kent SNMP?
| Bericht (PDU) | Richting | Functie |
|---|---|---|
| GetRequest | Manager → agent | Eén of meer specifieke OID’s opvragen |
| GetNextRequest | Manager → agent | Het volgende object in de boom opvragen (basis van een walk) |
| GetBulkRequest | Manager → agent | Efficiënt grote tabellen ophalen, zoals alle poorten (vanaf v2c) |
| SetRequest | Manager → agent | Een waarde wijzigen, bijvoorbeeld een poort uitschakelen |
| Response | Agent → manager | Antwoord op elk verzoek |
| Trap | Agent → manager | Onbevestigde melding van een gebeurtenis |
| InformRequest | Agent → manager | Melding die bevestigd moet worden (vanaf v2c) |
| Report | Agent → manager | Fout- en synchronisatiemeldingen, vooral in SNMPv3 |
Omdat UDP geen aflevering garandeert, kan een trap onderweg verloren gaan. Voor kritieke meldingen is een inform of aanvullende polling daarom betrouwbaarder.
🔍 Wat is het verschil tussen SNMPv1, SNMPv2c en SNMPv3?
| Aspect | SNMPv1 | SNMPv2c | SNMPv3 |
|---|---|---|---|
| Standaard | RFC 1157 (1990) | RFC 1901 (1996, experimenteel) | RFC 3411–3418 (2002) |
| Toegang | Community string | Community string | Gebruikers (USM) en views (VACM) |
| Authenticatie | Geen echte; wachtwoord in platte tekst | Geen echte; wachtwoord in platte tekst | HMAC met MD5, SHA-1 of SHA-2 |
| Encryptie | Nee | Nee | DES of AES-128 |
| Bulkopvraging en 64-bit tellers | Nee | Ja | Ja |
| IETF-status | Historisch | Historisch | Internet Standard |
De variant die in de praktijk “SNMPv2” heet, is bijna altijd SNMPv2c: de community-gebaseerde versie die de protocolverbeteringen van v2 combineert met het onveilige toegangsmodel van v1. De IETF heeft v1 en v2c vanwege hun zwakke beveiliging tot historisch verklaard.
SNMPv3 voegt drie beveiligingsniveaus toe: noAuthNoPriv, authNoPriv en authPriv. De oorspronkelijke norm uit 2002 kende alleen HMAC-MD5 en HMAC-SHA-1 met DES-versleuteling. AES-128 volgde in 2004 (RFC 3826) en SHA-2-authenticatie in 2016 (RFC 7860). Kies daarom altijd authPriv met SHA-2 en AES, voor zover de apparatuur dat ondersteunt. Sinds 2011 kan SNMP ook over TLS lopen (poorten 10161 en 10162), maar dat wordt in OT-apparatuur zelden ondersteund.
🏭 Hoe wordt SNMP gebruikt in industriële netwerken?
- Poort- en linkbewaking - status, foutentellers en bandbreedte van Industrial Ethernet-switches, inclusief ringen en redundante paden
- Meldingen bij storingen - traps bij een linkonderbreking, een uitgevallen voeding of een herstart van een managed switch
- PROFINET-diagnose - vanaf conformance class B gebruiken ProfiNET-apparaten SNMP voor diagnose en topologiedetectie
- Inventarisatie - merk, type, firmwareversie en serienummer uitlezen voor de asset inventory
- Infrastructuur - accucapaciteit en belasting van een UPS, temperatuur in kasten en serverruimtes
- Koppeling met SCADA - netwerkstatus naast procesdata tonen, zodat de operator ziet of een storing in het proces of in het netwerk zit
SNMP vult andere bronnen aan: Syslog levert gebeurtenislogs, Wireshark en passieve monitoring analyseren het verkeer zelf. Samen vormen ze de basis van netwerkmonitoring.
⚙️ Hoe richt u SNMP veilig in binnen een OT-netwerk?
Een praktische aanpak in zes stappen:
-
Inventariseer welke apparaten SNMP aan hebben en welke versie. Veel apparaten leveren
standaard SNMPv1/v2c met de community
publicaan. - Schakel uit wat niet nodig is. Zet SNMP uit op apparaten die niet bewaakt worden en schakel schrijfrechten (SetRequest) uit.
- Migreer naar SNMPv3 authPriv met per apparaat of per zone een eigen gebruiker en sterke, unieke wachtwoorden.
- Beperk de toegang met een ACL voor toegangscontrole op het apparaat en firewallregels tussen zones, zodat alleen de beheerserver UDP 161 mag bereiken. Plaats SNMP-beheer in een apart beheer-VLAN.
- Kies de pollingrichting bewust. Laat de manager binnen de OT-zone pollen en stuur alleen samengevatte gegevens door naar IT, in lijn met het Purdue Model en een DMZ.
- Bewaak SNMP zelf. Neem SNMP op in de centrale logging en stuur mislukte authenticaties en onverwachte SNMP-verzoeken naar een SIEM.
Rekenvoorbeeld 32- versus 64-bit tellers: een 32-bit octetteller loopt over na 2³² bytes.
Bij een volle gigabitlink (125 MB/s) is dat al na ongeveer 34 seconden, zodat een pollinginterval van 5
minuten onbruikbare bandbreedtecijfers oplevert. Gebruik daarom de 64-bit tellers uit de IF-MIB (ifHCInOctets, ifHCOutOctets), die volgens RFC 2863 verplicht zijn boven 20 Mbit/s.
Deze tellers vereisen SNMPv2c of v3.
🔐 Welke beveiligingsrisico’s heeft SNMP?
- Wachtwoorden in platte tekst - community strings in v1/v2c zijn met Wireshark direct leesbaar voor iedereen in hetzelfde netwerksegment
-
Standaard community strings -
publicenprivateworden door scanners als eerste geprobeerd - Lekken van informatie - een walk geeft aanvallers interfaces, routes, ARP-tabellen en firmwareversies, ideaal voor verkenning
- Schrijftoegang - met een write community kan een aanvaller poorten uitschakelen of configuraties wijzigen
- Amplificatie-aanvallen - GetBulk-verzoeken met een vervalst afzenderadres leveren gemiddeld ruim zes keer zoveel verkeer op
- Kwetsbaarheden in agents - fouten in de SNMP-implementatie zelf, zoals CVE-2017-6742 in Cisco IOS
In april 2023 waarschuwden het Britse NCSC, de NSA, het FBI en CISA gezamenlijk dat de Russische groep APT28 in
2021 wereldwijd Cisco-routers had binnengedrongen, waaronder routers van Amerikaanse overheidsinstellingen
en ongeveer 250 Oekraïense slachtoffers. De groep gebruikte zwakke of standaard community strings zoals
public en het onversleutelde SNMPv2. Op een deel van de routers misbruikte APT28 bovendien
CVE-2017-6742 om de malware Jaguar Tooth te plaatsen, hoewel Cisco die kwetsbaarheid al in 2017 had
gepatcht. Het advies: SNMP uitschakelen waar het niet nodig is, v1 en v2c uitzetten en SNMPv3 gebruiken.
In het kader van IEC 62443 sluit SNMPv3 aan bij de eisen voor authenticatie van apparaten en processen (SR 1.2) en voor vertrouwelijkheid van gegevens (SR 4.1) uit IEC 62443-3-3. Voor organisaties onder de Cyberbeveiligingswet, sinds 15 augustus 2026 van kracht, is onversleuteld netwerkbeheer moeilijk te verantwoorden als passende maatregel. Zie ook netwerksegmentatie, Hardening en Defense in Depth.
❓ Veelgestelde vragen
Welke poorten gebruikt SNMP?
SNMP gebruikt UDP-poort 161 voor verzoeken aan de agent en UDP-poort 162 voor traps en informs naar de manager. SNMP over TLS of DTLS gebruikt de poorten 10161 en 10162. In een firewall hoeft alleen het verkeer tussen de beheerserver en de bewaakte apparaten open te staan.
Is SNMPv2c nog veilig genoeg voor OT?
SNMPv2c is niet veilig, omdat de community string onversleuteld over het netwerk gaat en er geen echte authenticatie is. De IETF heeft SNMPv2c tot historisch verklaard en overheidsinstanties adviseren om SNMPv3 te gebruiken. Als een oud OT-apparaat alleen SNMPv2c ondersteunt, beperk dan de toegang strikt met ACL’s, gebruik alleen leesrechten en een niet-standaard community string.
Wat is het verschil tussen een SNMP-trap en een inform?
Een SNMP-trap is een melding die de agent zonder bevestiging verstuurt, waardoor hij bij netwerkproblemen ongemerkt verloren kan gaan. Een inform wordt door de manager bevestigd en zo nodig opnieuw verstuurd. Voor kritieke OT-meldingen is een inform daarom betrouwbaarder dan een trap.
Wat is een MIB-bestand?
Een MIB-bestand is een tekstbestand in de SMI-notatie dat beschrijft welke SNMP-objecten een apparaat heeft, met hun OID, datatype en betekenis. Fabrikanten leveren eigen MIB-bestanden mee, die u in uw monitoringsoftware laadt om leesbare namen te zien in plaats van numerieke OID’s. Zonder het juiste MIB-bestand kunt u fabrikantspecifieke waarden wel opvragen, maar niet eenvoudig interpreteren.
Kan SNMP een PLC of het proces verstoren?
SNMP-polling kan kwetsbare of oudere OT-apparaten belasten, zeker bij korte intervallen of grote GetBulk-opvragingen. Test daarom pollingintervallen eerst in een testomgeving en bewaak de reactietijd van het apparaat. Schrijfrechten via SNMP horen in een productieomgeving uitgeschakeld te zijn.
Wat is het verschil tussen SNMP en Syslog?
SNMP levert gestructureerde statuswaarden en tellers die de manager opvraagt, plus enkele vooraf gedefinieerde meldingen. Syslog stuurt vrije tekstberichten over gebeurtenissen, zoals inlogpogingen en configuratiewijzigingen, naar een centrale logserver. In OT-netwerkbeheer worden SNMP en Syslog meestal naast elkaar gebruikt.
📌 Samengevat
SNMP is al ruim 35 jaar het standaardprotocol voor het bewaken van netwerkapparatuur en is in OT-netwerken onmisbaar voor zicht op switches, UPS’en en PROFINET-infrastructuur. De oudere versies v1 en v2c sturen hun wachtwoord echter in platte tekst en worden actief misbruikt.
Gebruik SNMP alleen met SNMPv3 authPriv, zonder schrijfrechten en beperkt tot een beheerserver binnen een goed gesegmenteerde OT-architectuur.
