Wat is FTP?

FTP (File Transfer Protocol) is een netwerkprotocol voor het overdragen van bestanden tussen een client en een server via een TCP/IP-netwerk, waarbij commando’s, wachtwoorden en bestandsinhoud onversleuteld worden verstuurd. Het protocol is in 1985 vastgelegd in RFC 959, maar de eerste versie stamt al uit 1971 en is daarmee ouder dan het internet zelf. FTP is ontworpen voor eenvoud en uitwisselbaarheid tussen heel verschillende computers, niet voor beveiliging.

In OT-omgevingen wordt FTP nog steeds gebruikt voor het uitwisselen van recepten, logbestanden, configuraties en firmware, vooral op oudere apparatuur. Omdat alles leesbaar over het netwerk gaat, wordt het voor nieuwe toepassingen sterk afgeraden.


🧠 Hoe werkt FTP?

FTP gebruikt twee aparte TCP-verbindingen tussen client en server:

  • Besturingsverbinding (control) - de client maakt verbinding met poort 21 van de server en stuurt tekstcommando’s zoals USER, PASS, LIST, RETR (bestand ophalen) en STOR (bestand wegschrijven). De server antwoordt met driecijferige statuscodes, bijvoorbeeld 220 (klaar), 230 (ingelogd) of 226 (overdracht voltooid).
  • Dataverbinding (data) - voor elke bestandsoverdracht of maplijst wordt een nieuwe verbinding opgezet. Welke kant die verbinding opent, hangt af van de modus.

Een typische sessie verloopt in vier stappen:

  1. De client opent de besturingsverbinding naar poort 21.
  2. De gebruiker logt in met gebruikersnaam en wachtwoord, beide in platte tekst. Bij anonymous FTP is de gebruikersnaam anonymous.
  3. De client kiest het overdrachtstype: ASCII voor tekstbestanden of image (binair) voor programma’s, firmware en afbeeldingen. Een verkeerd type kan binaire bestanden beschadigen.
  4. Per bestand wordt een dataverbinding geopend, gevuld en weer gesloten.

FTP heeft geen ingebouwde versleuteling en geen integriteitscontrole: wie het netwerkverkeer kan meelezen, ziet het wachtwoord en de bestandsinhoud.


🔄 Wat is het verschil tussen actieve en passieve FTP?

Het gebruik van een aparte dataverbinding maakt FTP lastig in combinatie met een firewall of NAT. Daarom bestaan er twee modi:

Modus Commando Wie opent de dataverbinding? Poorten Gevolg voor firewalls
Actief PORT / EPRT De server, vanaf poort 20 naar een poort van de client 20 naar willekeurige clientpoort Inkomende verbinding naar de client wordt vaak geblokkeerd
Passief PASV / EPSV De client, naar een poort die de server opgeeft (antwoord 227 of 229) Willekeurige hoge serverpoort Server moet een poortbereik openzetten

Passieve modus is tegenwoordig de standaard bij de meeste clients. RFC 2428 (1998) voegde EPRT en EPSV toe voor IPv6 en om problemen met NAT te beperken. Firewalls die FTP doorlaten, gebruiken vaak een FTP-helper die de besturingsverbinding inspecteert om de juiste datapoort tijdelijk te openen. Dat werkt alleen zolang het verkeer onversleuteld is.


🏭 Waar wordt FTP gebruikt in industriële netwerken?

FTP is in legacysystemen verrassend hardnekkig, omdat het eenvoudig te implementeren is en op bijna elk embedded platform draait:

  • PLC-communicatiemodules - veel Ethernet-modules van PLC’s hebben een ingebouwde FTP-server voor het laden van bestanden, webpagina’s of firmware.
  • HMI-panelen en SCADA - HMI’s en SCADA-stations exporteren recepten, alarmlogs en trenddata als bestand naar een server.
  • Vision-camera’s en scanners - camera’s slaan afgekeurde productafbeeldingen via FTP op een netwerkschijf op.
  • Data-export - meetdata gaat via FTP naar een historian, een laboratoriumsysteem of een externe partij.
  • Firmware en configuratie - netwerkapparatuur en controllers halen firmware of configuratiebestanden op. Hiervoor wordt ook TFTP gebruikt, een nog eenvoudiger variant via UDP-poort 69 zonder enige authenticatie.

Een concreet voorbeeld: in juni 2023 publiceerde CISA een advisory over EtherNet/IP-modules van Mitsubishi Electric (RJ71EIP91 en FX5-ENET/IP). De FTP-functie bevatte hard-coded inloggegevens (CVE-2023-2061), zwakke wachtwoordeisen (CVE-2023-2060) en een onbeperkte bestandsupload (CVE-2023-2063). De aanbevolen maatregelen waren FTP uitschakelen waar de firmware dat toestaat, een IP-filter instellen, de module achter een firewall plaatsen en op termijn vervangen.


🔍 Wat is het verschil tussen FTP, SFTP en FTPS?

Protocol Versleuteling Poorten Basis Gebruik in OT
FTP Geen 21 (control), 20 of hoge poort (data) RFC 959 (1985) Alleen legacy, uitfaseren
FTPS expliciet TLS na AUTH TLS 21 plus datapoorten RFC 4217 (2005) Waar FTP-compatibiliteit nodig is
FTPS impliciet TLS vanaf de eerste byte 990 (control), 989 (data) Geen RFC, oudere praktijk Verouderd, liever expliciet
SFTP SSH 22, één verbinding SSH-subsysteem Aanbevolen voor nieuwe koppelingen

SFTP is geen FTP over SSH, maar een eigen protocol. Het gebruikt één verbinding en is daardoor veel eenvoudiger door een firewall te sturen. FTPS behoudt de opbouw van FTP met aparte dataverbindingen; omdat de besturingsverbinding versleuteld is, kan een FTP-helper in de firewall de datapoort niet meer lezen en moet een vast passief poortbereik worden opengezet.


🔐 Welke beveiligingsrisico’s heeft FTP?

  • Afluisteren - wachtwoorden en bestanden gaan in platte tekst over het netwerk en zijn met een tool als Wireshark direct leesbaar.
  • Manipulatie - een aanvaller in een Man-In-The-Middle-positie kan een recept, programma of firmwarebestand onderweg aanpassen; FTP controleert de integriteit niet.
  • Spoofing en Session Hijacking - zonder cryptografische authenticatie van de server weet de client niet zeker met wie hij praat.
  • Hergebruik van wachtwoorden - een afgeluisterd FTP-wachtwoord is vaak ook het wachtwoord voor andere systemen.
  • Anonieme en standaardaccounts - anonymous FTP en fabriekswachtwoorden geven onbevoegden schrijfrechten op een apparaat.

Normen als IEC 62443 en ISO 27001 noemen FTP niet bij naam, maar stellen eisen waaraan onversleuteld FTP niet voldoet. IEC 62443-3-3 vraagt onder meer om authenticatie van gebruikers (SR 1.1), communicatie-integriteit (SR 3.1) en vertrouwelijkheid van informatie (SR 4.1). ISO 27001:2022 bevat beheersmaatregelen voor informatieoverdracht (A.5.14) en het gebruik van cryptografie (A.8.24). Ook webbrowsers hebben de consequentie getrokken: Chrome en Firefox verwijderden hun ingebouwde FTP-ondersteuning rond 2021, onder meer omdat het protocol geen versleuteling heeft.


🛠️ Hoe faseert u FTP uit in een OT-omgeving?

Vervangen gaat zelden in één keer, omdat oudere apparatuur vaak alleen FTP spreekt. Een praktische aanpak:

  1. Inventariseren - leg in de asset-inventaris vast welke apparaten een FTP-server of -client hebben en welke stromen er echt worden gebruikt. Passieve netwerkmonitoring op poort 21 laat snel zien waar FTP actief is.
  2. Uitschakelen wat niet nodig is - zet ongebruikte FTP-servers op PLC’s en HMI’s uit; dit verkleint het aanvalsoppervlak direct (zie hardening).
  3. Vervangen waar het kan - kies voor nieuwe koppelingen SFTP of FTPS, of een moderne interface zoals OPC UA of HTTPS.
  4. Afschermen wat moet blijven - houd FTP binnen één zone volgens het zones-en-conduits-model, plaats een SFTP-server in de DMZ als tussenstation en laat alleen vaste IP-adressen toe via firewallregels en toegangsbeheer.
  5. Accounts beperken - geen anonymous login, unieke sterke wachtwoorden per apparaat, en schrijfrechten volgens least privilege.
  6. Integriteit controleren - vergelijk hashes van firmware en programma’s vóór gebruik en zet logging van FTP-sessies aan.

Voor organisaties die onder de Cyberbeveiligingswet (de Nederlandse invulling van NIS2) vallen, is het uitfaseren van onversleutelde protocollen een logisch onderdeel van passende maatregelen. Leveranciers van nieuwe producten krijgen met de Cyber Resilience Act bovendien eisen voor beveiliging van gegevens tijdens transport.


❓ Veelgestelde vragen

Is FTP nog veilig te gebruiken?

FTP is op zichzelf niet veilig, omdat wachtwoorden en bestanden onversleuteld worden verstuurd. FTP is alleen verdedigbaar binnen een sterk gesegmenteerd netwerk, voor apparatuur die geen alternatief ondersteunt, en met aanvullende maatregelen zoals firewallregels en logging.

Welke poorten gebruikt FTP?

FTP gebruikt TCP-poort 21 voor de besturingsverbinding. In actieve modus loopt de dataverbinding vanaf poort 20 van de server; in passieve modus gebruikt FTP een hoge poort die de server per overdracht opgeeft.

Wat is het verschil tussen FTP en TFTP?

TFTP (Trivial File Transfer Protocol) is een apart, sterk vereenvoudigd protocol voor bestandsoverdracht dat via UDP-poort 69 werkt en geen inlog of maplijsten kent. TFTP wordt in OT en IT vooral gebruikt om firmware en configuraties naar netwerkapparatuur en controllers te sturen, en is daardoor nog kwetsbaarder dan FTP.

Moet ik kiezen voor SFTP of FTPS als vervanger van FTP?

SFTP is meestal de beste vervanger van FTP, omdat het één verbinding over poort 22 gebruikt en eenvoudig door een firewall te regelen is. FTPS is handig als een bestaand systeem alleen FTP-varianten ondersteunt, maar vraagt een vast passief poortbereik en certificaatbeheer.

Waarom ondersteunen PLC’s en HMI’s nog FTP?

PLC’s en HMI’s ondersteunen FTP omdat het protocol klein, oud en universeel is, waardoor het op beperkte embedded hardware past. Bij nieuwere modellen bieden veel fabrikanten ook versleutelde varianten aan, maar oudere apparatuur blijft vaak tientallen jaren in bedrijf.

Hoe herken ik FTP-verkeer in mijn netwerk?

FTP-verkeer is te herkennen aan verbindingen naar TCP-poort 21 en aan leesbare commando’s als USER en PASS in een netwerkopname. Een IDS of OT-monitoringplatform signaleert FTP-gebruik automatisch, inclusief het apparaat dat als server optreedt.


📌 Samengevat

FTP is een van de oudste internetprotocollen en nog veel aanwezig in industriële apparatuur, maar het verstuurt alles in platte tekst en controleert de integriteit van bestanden niet. Recente kwetsbaarheden in PLC-modules laten zien dat FTP-functies een reëel aanvalspunt zijn.

FTP is een onveilig, verouderd protocol dat nog voorkomt in legacy-OT-systemen: inventariseer het, schakel het uit waar het kan, scherm het af waar het moet en vervang het door versleutelde alternatieven zoals SFTP of FTPS.