Check-Host.cc

Globaler WKS (Well Known Service) Lookup

Der WKS-Record (Well Known Service) ist ein stark veralteter (deprecated), extrem starrer DNS-Record-Typ, der während des ersten Entwurfs des Domain Name Systems in RFC 1035 eingeführt wurde. Sein primäres technisches Ziel war es, eine spezifische IP-Adresse öffentlich auf eine definierte Liste unterstützter Internetprotokolle – insbesondere TCP oder UDP – abzubilden und deren jeweilige offene Ports öffentlich zu deklarieren. Beispielsweise konnte ein Administrator einen WKS-Record nutzen, um zu broadcasten, dass ein Server unter 192.168.1.100 aktiv SMTP auf Port 25 und FTP auf Port 21 unterstützt.

Ressourcenoptimierung vor der Verbindung

In den frühen Tagen der vernetzten IT war der Aufbau eines TCP-Handshakes über ARPANET-Verbindungen mit geringer Bandbreite und hoher Latenz rechnerisch teuer und unglaublich langsam. Der WKS-Record wurde als Effizienz-Hack entwickelt. Er erlaubte es einer Client-Anwendung, den leichtgewichtigen, UDP-basierten DNS-Layer abzufragen, um zu verifizieren, ob ein Remote-Server einen bestimmten Dienst tatsächlich unterstützt, bevor versucht wurde, Traffic dorthin zu routen. Wenn ein Benutzer versuchte, eine Telnet-Sitzung zu initiieren, der WKS-Record der Domain aber Port 23 in seiner Bitmap nicht explizit aufführte, konnte die lokale Client-Anwendung den Verbindungsversuch sofort abbrechen. Dies verhinderte, dass der Client hängen blieb, während er auf einen Netzwerk-Timeout wartete, was wertvolle Bandbreite über transatlantische Links sparte.

Der Bitmap-Flaschenhals

Der fatale Fehler des WKS-Records war seine zugrunde liegende Datenstruktur. Der Payload war als extrem starre binäre Bitmap kodiert, bei der jedes Bit einer spezifischen, von der Internet Assigned Numbers Authority (IANA) definierten Portnummer entsprach. Dieses Format wurde unglaublich unhandlich und für menschliche Administratoren fast unmöglich manuell zu pflegen, als die Internetdienste in ihrer Komplexität explodierten. Jedes Mal, wenn ein Sysadmin einen neuen Dienst installierte oder einen Port schloss, musste er die Bitmap neu generieren, das Zone-Serial aktualisieren und auf die globale DNS-Propagation warten, nur um den korrekten Status des Servers widerzuspiegeln. Der administrative Overhead überwog die Bandbreiteneinsparungen drastisch.

Sicherheitsrisiko und Ersetzung durch SRV

Ähnlich wie der HINFO-Record war das WKS-Protokoll völlig blind gegenüber der Netzwerksicherheit. Die Veröffentlichung einer umfassenden Klartext-Liste jedes offenen Ports auf einem Server direkt im öffentlichen DNS-Layer lieferte Hackern eine vorgescannte, komplette Reconnaissance-Map. Die Notwendigkeit von lauten, leicht erkennbaren Port-Scannern wie Nmap wurde damit komplett umgangen. In Anbetracht dieser kritischen architektonischen und sicherheitsrelevanten Mängel erklärte die IETF den WKS-Record mit der Veröffentlichung von RFC 1123 offiziell für obsolet. Die Anforderung, spezifische Dienste und Ports auf Domainnamen abzubilden, wurde später vollständig auf den SRV-Record (Service) verschoben. SRV-Records boten eine unendlich viel höhere Flexibilität und ermöglichten dynamische Portzuweisungen, Load-Balancing-Weights und Priority-Failovers, ohne das gesamte zugrunde liegende Port-Profil der Zielmaschine preiszugeben. Moderne DNS-Software wie BIND9 oder CoreDNS ignoriert die WKS-Formatierung komplett.