-
Die Anzahl der Domains im Internet wächst stetig weiter an. So kann es unter Umständen für einzelne Domaininhaber bzw. Unternehmen zu einer großen Herausforderung werden sämtliche ihrer Domains zu überwachen und in eine Liste vorzuhalten. Die Kenntnis der eigenen Domains ist aber aus vielerlei Gründen für die Unternehmen von großer Bedeutung. Sollen beispielsweise Inhalte aktualisiert werden, ist es wichtig, dass dies auf allen Domains stattfindet. Auch rechtliche oder technische Aspekte der einzelnen Domains könne für die Unternehmen von Bedeutung sein.
-
Eine solche Liste der eigenen Domains kann zwar prinzipiell manuell erstellt und aktualisiert werden, was allerdings einen extrem hohen administrativen Aufwand darstellen würde, wenn man bedenkt, dass Firmen, wie beispielsweise die Deutsche Telekom, über mehr als 10.000 verschiedene Domains verfügen. Ist eine solche Liste nicht vorhanden, können die Domains eines Unternehmens prinzipiell „per Hand“ aus dem Internet extrahiert werden. Eine solche manuelle Suche, beispielsweise durch einen Administrator, dauert allerdings sehr lange und ist aufgrund der hohen Anzahl von Domains zusätzlich sehr fehleranfällig.
-
Zur Erläuterung der Begriff:
-
Als Subdomain bezeichnet man eine Domain, welche in der Hierarchie unterhalb einer anderen liegt. Im allgemeinen Sprachgebrauch sind damit meist Domains in der dritten oder einer weiteren Ebene gemeint. Eine Domain, die direkt unterhalb der Top-Level-Domain liegt, wird umgangssprachlich -nicht- als Subdomain, sondern als Second-Level-Domain oder nur als Domain bezeichnet.
-
Betrachten wir als Beispiel die Top-Level-Domains .com und .org. Unter diesen Domains sind die Second-Level-Domains example.com bzw. example.org angesiedelt. Jede Subdomain ist eigenständig wieder eine Domain, in der andere Domains und Hostnamen liegen können. Beispielsweise ist example.org eine Second-Level-Domain der Top-Level-Domain .org oder de.example.org eine Subdomain von example.org.
-
Zur logischen und physischen Trennung von Diensten innerhalb der Domain einer Organisation werden traditionell Sub-Domains, z. B. www.beispiel.at für den Webserver oder mail.beispiel.at für den Mailserver verwendet. Dabei handelt es sich aber nur um eine Konvention; ein Webserver kann genauso gut auf einem Computer mit dem Domainnamen web.beispiel.at oder beispiel.at betrieben werden.
-
Konventionelle Namen für verschiedene Services:
-
- Webserver: www.
- Webserver speziell für mobile Endgeräte: m.
- Mailserver: mail. / smtp. / pop3. / imap.
- FTP-Server: ftp.
-
Ein Nameserver ist ein Server, der Namensauflösung anbietet. Namensauflösung ist das Verfahren, das es ermöglicht, Namen von Rechnern bzw. Diensten in eine vom Computer bearbeitbare Adresse aufzulösen (z. B. www.wikipedia.org in 91.198.174.192).
-
Die meisten Nameserver sind Teil des Domain Systems, das auch im Internet benutzt wird.
-
Nameserver sind zum einen Programme, die auf Basis einer DNS-Datenbank Anfragen zum Domain-Namensraum beantworten, im Sprachgebrauch werden allerdings auch die Rechner, auf denen diese Programme zum Einsatz kommen, als Nameserver bezeichnet. Man unterscheidet zwischen autoritativen und nicht-autoritativen Nameservern.
-
Eine Subdomain kann wie jede Domain auf einem beliebigen Nameserver verwaltet werden. So könnte z. B. de.example.com auf einem Nameserver in Deutschland verwaltet werden, während example.com in den USA liegt.
-
Für große Unternehmen wie die Telekom mag der Aufwand für die Verwaltung ihrer Second-Level-Domains wie etwa telekom.de noch akzeptabel sein, wobei sich dieser Aufwand für die Subdomains in der dritten oder einer weiteren Ebene unverhältnismäßig potenziert.
-
Es ist also die Aufgabe der Erfindung ein Verfahren, eine Recheneinheit und/oder ein Computerprogrammprodukt anzugeben, welches die Suche nach Domains eines bestimmten Domain-Inhabers effizienter gestaltet.
-
Gelöst wird diese Aufgabe mit den Merkmalen der unabhängigen Ansprüche.
-
Erfindungsgemäß umfasst das Verfahren zum automatisierten Auffinden und Zuordnen von Domains eines Domain-Inhabers folgende Schritte:
- - Eine bekannte Domain des Domaininhabers wird vorgehalten. Beispielsweise ist bekannt, dass die Domain „de.wikipedia.org“ zudem Domaininhaber „Wikipedia“ gehört. Es ist auch möglich mehrere bekannte Domains des Domaininhabers vorzuhalten.
- - Im nächsten Schritt wird ein Nameserver ermittelt, der diese bekannte Domain zur Namensauflösung verwaltet. Es können auch mehrere Nameserver ermittelt werden, die die bekannte Domain oder die bekannten Domains zur Namensauflösung verwalten. Die Ermittlung des Nameservers wird durch eine hierzu eingerichtete Rechnereinheit ausgeführt, die mit dem Internet verbunden ist und eine Internetabfrage nach dem Server startet, der die bekannte Domain verwaltet. Beispielsweise kann eine solche Abfrage mittels des Befehls „who.is“ ausgeführt werden. Die Auswahl, bei welchem Nameserver zuerst angefragt wird, kann nach dem Zufallsprinzip erfolgen. Bevorzugt wird ein Nameserver ausgewählt, der örtlich in der Nähe des Domain-Inhabers angesiedelt ist.
- - Der ermittelte Nameserver wird sodann als primärer Nameserver festgelegt, die bevorzugt auch alle anderen Domains für das Unternehmen verwalten. Dieser Festlegung liegt die Erkenntnis zugrunde, dass Unternehmen im Normalfall bevorzugt einen einzigen Nameserver für sämtliche ihrer Domains verwenden.
- - Mittels der hierzu eingerichteten Rechnereinheit werden die Domains, die auf dem primären Nameserver verwaltet werden, inklusive der zu den Domains dazugehörigen Informationen, von einem durch den primären Nameserver bereitgestellten externen Service automatisiert extrahiert und in einer Liste abgespeichert.
- - Es wird ein intelligenter selbstlernender Algorithmus auf der Rechnereinheit gestartet, der die extrahierten Domains der Liste anhand der dazugehörigen Informationen in eine Anzahl von Domain-Cluster zusammenfasst, wobei der intelligente Algorithmus eine Teilmenge der Anzahl der Domain-Cluster dem Domain-Inhaber zuordnet und als Inhaber-Domains abspeichert. Als Grundlage dafür, welche Domains dem Domain-Inhaber zuzuordnen sind, kann der intelligente selbstlernende Algorithmus die der bekannten Domain zugeordneten Informationen verwenden.
-
Dieses Verfahren ermöglicht also in vorteilhafter Weise ein automatisiertes Auffinden der Domains eines Domain-Inhabers, das den manuellen Aufwand deutlich reduziert. Es handelt sich hierbei quasi um eine „Brute-Force-Methode“ um auch von außerhalb des Unternehmens möglichst viele Domains eines Domain-Inhabers ermitteln zu können. Schon bei ersten Versuchen des erfindungsgemäßen Verfahrens hat sich gezeigt, dass bei deutlich reduzierten Zeitaufwand 75 % mehr Domains erfolgreich ermittelt werden können als bei der bisherigen manuellen Vorgehensweise. Der selbstlernende Algorithmus kann sich hierbei stetig verbessern, sodass die Quote der erfolgreich ermittelten Domains beständig erhöht wird. Das Verfahren ermöglicht es zudem, dass die Unternehmen auch Dienstleister mit dem Auffinden der Domains beauftragen können, da die Suche wie vorstehend beschrieben von „außerhalb“ durchgeführt wird und nur eine kurze Liste zur Verfügung stehen muss, welche Domains der Inhaber schon angemeldet hat. Vorzugsweise können die Unternehmen dem intelligenten Algorithmus weitere Informationen bezüglich ihrer Domains bekannt machen, die der intelligente Algorithmus beim Erstellen der Domain-Cluster berücksichtigen kann. Diese Informationen können auch Ausschlusskriterien dergestalt aufweisen, dass eine aufgefundene Domain mit dem Ausschlusskriterium keinesfalls eine Domain des Domain-Inhabers ist.
-
Vorzugsweise werden die zu den Domains dazugehörigen Informationen verwendet, um eine Wahrscheinlichkeit zu berechnen, dass zwei verschiedene Domains zu einem gemeinsamen Inhaber gehören, wobei die zwei Domains zu einem Domaincluster zusammengefasst werden, falls die Wahrscheinlichkeit über einem anpassbaren vordefinierten Schwellenwert liegt.
-
Dies hat den Vorteil, dass beispielsweise einem Administrator ermöglicht wird die ermittelten Domaincluster manuell zu überprüfen und zu beurteilen, wie hoch die Trefferquote ist, was bedeutet, dass die Domains richtigerweise dem Domain-Inhaber zugeordnet werden. Der Administrator kann den anpassbaren Schwellenwert verändern und überprüfen, ob sich dadurch das Ergebnis „verbessert“. Eine Absenkung des Schwellenwertes wird dazu führen, dass zwar mehr Domains dem Domain-Inhaber zugeordnet werden, dass allerdings hierunter auch mehrere falsch zugeordnete Domains fallen. Eine Erhöhung des Schwellenwertes wird auf der anderen Seite dazu führen, dass weniger Domains dem Domain-Inhaber zugeordnet werden, diese allerdings mit einer höheren Wahrscheinlichkeit richtig zugeordnet werden. Je nach Bedürfnissen des Unternehmens kann der Schwellenwert also so justiert werden, dass ein optimales Ergebnis für das Unternehmen erzielt wird.
-
Bevorzugt werden verschiedene Domaincluster zu einem gemeinsamen Domaincluster vereinigt. Dies kann beispielsweise durch den Input eines Administrators realisiert werden oder dadurch, dass dem Algorithmus bekannt gemacht wird, dass Domains die an sich bezüglich ihrer Informationen keine Gemeinsamkeit aufweisen dennoch zusammengehören. Dies ist vor allem für Unternehmen von Vorteil, die vielfältige Geschäftsbereiche aufweisen, die mitunter keine Überschneidungen aufweisen. Dies hätte zur Folge, dass die den verschiedenen Geschäftsbereichen zugeordneten Domains nicht einheitlich diesem Unternehmen zugeordnet werden würden. Stellt beispielsweise ein Unternehmen Mobiltelefone und auf der anderen Seite Rasenmäher her, kann dem selbstlernenden Algorithmus bekannt gemacht werden, dass die Domains, bei denen sich die Informationen auf Rasenmäher bzw. auf Mobiltelefone beziehen zusammengehören. Der vereinigte Domaincluster weist deshalb eine höhere Anzahl der Domains des Domain-Inhabers auf als jeder einzelne Domaincluster alleine.
-
Bevorzugt werden dem intelligenten Algorithmus Informationen des Domain-Inhabers über ein Eingabemittel, beispielsweise einer Tastatur oder einem Touchpad, der Rechnereinheit bekannt gemacht. Dies hat den Vorteil, dass ein Administrator jederzeit neue Informationen an den intelligenten Algorithmus übergeben und dadurch das Verfahren verbessern und effizienter ausgestalten kann.
-
In einer Ausgestaltung des Verfahrens berücksichtigt der intelligente selbstlernende Algorithmus Feedback über korrekt in einem Cluster aufgelistete Domains. Dieses Feedback kann dem Algorithmus beispielsweise von einem Administrator über Eingabemittel der Rechnereinheit bekannt gemacht werden und dazu dienen, dass Parameter des Algorithmus entsprechend angepasst werden und sich dieser dadurch verbessert.
-
Ferner ist es möglich, dass die Rechnereinheit Domains aus weiteren Quellen extrahiert. Dies hat den Vorteil, dass dadurch auch Domains des Domain-Inhabers ermittelt werden können, die nicht auf Nameservern verwaltet werden. Insbesondere kann es in dieser Situation dazu kommen, dass Domains des Domaininhabers mehrfach ermittelt und aufgelistet werden. Es bietet sich in diesen Fällen an, dass der selbstlernende Algorithmus einen Unique(Domain-Liste)-Befehl aufweist, dem die ermittelte Domain-Liste übergeben wird. Dieser Unique-Befehl weist eine Filterfunktion auf, sodass bei mehrfach vorhandenen identischen Domains jeweils nur eine einzige Domain beibehalten wird.
-
In einer bevorzugten Ausgestaltung des Verfahrens führt die Rechnereinheit automatisiert Sicherheitstests der Inhaber-Domains durch.
-
Dies hat den Vorteil, dass ein Domain-Inhaber sehr schnell und effizient auf neue Bedrohungen aus dem Internet reagieren kann. Regelmäßig werden neue Sicherheitslücken bekannt bzw. es treten neue sicherheitsrelevante Bedrohungen im Internet auf, die auch die Sicherheit von Internetdomains betreffen. Bislang war es für Domain-Inhaber nicht möglich schnell und effizient auf diese Bedrohungen zu reagieren, wenn der Domain-Inhaber keine aktuelle Liste seiner eigenen Domains bereitstellen konnte. Durch das Verfahren wird es nun also vorteilhaft ermöglicht, dass die Domains automatisiert schnell und effizient aufgefunden werden können und in einem nachfolgenden automatisierten Schritt Sicherheitstests durchlaufen bzw. automatisiert auf ein neues Sicherheitslevel gehoben werden können.
-
Gemäß einem zweiten Aspekt der Erfindung wird eine Rechnereinheit angegeben, die Mittel zur Ausführung der Schritte des vorstehend beschriebenen Verfahrens umfasst und in geeigneter Weise hierfür eingerichtet ist. In vorteilhafter Weise wird hierdurch eine schnelle und effiziente Durchführung des Verfahrens ermöglicht.
-
Gemäß einem dritten Aspekt der Erfindung ist ein Computerprogrammprodukt angegeben, dass Befehle umfasst, die bei der Ausführung des Programms durch einen Computer diesen veranlassen, das vorstehend beschriebene Verfahren auszuführen. Dies hat den Vorteil, dass das Computerprogrammprodukt auf hierfür geeigneten Rechnereinheiten flexibel aufgespielt werden kann und das erfindungsgemäße Verfahren ausführt.
-
Im Folgenden werden bevorzugte Ausführungsbeispiele der vorliegenden Erfindung unter Bezugnahme auf die begleitenden Figuren erläutert:
- 1 zeigt eine Rechnereinheit, die Domains bei Nameservern ermittelt.
- 2 zeigt die von der Rechnereinheit aus 1 ermittelten Domains in einer Listendarstellung.
- 3 zeigt wie ein selbstlernende Algorithmus aus den Domains der Listendarstellung gemäß 2 Domaincluster erstellt.
-
Nàchfolgend werden zahlreiche Merkmale der vorliegenden Erfindung anhand von bevorzugten Ausführungsformen ausführlich erläutert. Die vorliegende Offenbarung ist dabei nicht auf die konkret genannten Merkmalskombinationen beschränkt. Vielmehr lassen sich die hier genannten Merkmale beliebig zu erfindungsgemäßen Ausführungsformen kombinieren, sofern dies nachfolgend nicht ausdrücklich ausgeschlossen ist.
-
1 zeigt eine Rechnereinheit 1, die über das Internet 2 mit zwei verschiedenen Nameservern 3a, 3b verbunden ist und von diesen Informationen abfragen kann. Der Rechnereinheit 1 wird zunächst eine bekannte Domäne eines Domaininhabers, beispielsweise „xy1.de“, übergeben. Die Rechnereinheit 1 stellt dann eine Verbindung mit einer der Datenquellen 9a, 9b her und fragt an, welcher Nameserver für die Domain zuständig ist. Eine oder mehrere der Datenquellen 9a, 9b geben die zuständigen Nameserver 3a, 3b zurück. Die Rechnereinheit 1 so eingerichtet, dass sie die Datenquellen nach allen Domains abfragt, die von den zurückgegebenen Nameservern 3a, 3b verwaltet wird.
-
In 2 ist eine mögliche Ausgestaltung dieser Liste 4 gezeigt. Die Anzahl der Zeilen der Liste 4 entspricht der Anzahl der Domains die auf dem Nameserver 3a verwaltet werden. Die Liste 4 weist zwei Spalten auf. Die erste Spalte ist die Domainspalte 5 und beinhaltet dementsprechend den Namen einer Domain, die auf der dem Nameserver 3a verwaltet wird. Die zweite Spalte ist die Informationsspalte 6 und weist alle möglichen Informationen auf, die über die Domain aus der entsprechenden Domainspalte 5 ermittelt werden können. Diese Informationen können auch als Domain-Indikatoren bezeichnet wird. So ist beispielsweise anhand der 2 zu erkennen, dass die Domain „xy1.de“ keine gemeinsamen Indikatoren mit der Domain „xy2.de“, einen gemeinsamen Indikator mit der Domain „xy3.de“, zwei gemeinsame Indikatoren mit der Domain „xy4.de“ und drei gemeinsame Indikatoren mit der Domain „xy5.de“ zeigt.
-
Diese Liste 4 wird einem selbstlernenden intelligenten Algorithmus 7 als Input gemäß 3 übergeben. Der selbstlernende intelligente Algorithmus 7, der auf der Rechnereinheit 1 implementiert ist, erstellt aus der Liste 4 Dömaincluster wie in 3 gezeigt. In dem selbstlernenden intelligenten Algorithmus 7 ist ein anpassbarer vordefinierter Schwellenwert implementiert, der festlegt, ab welcher Wahrscheinlichkeit die Domains aus der Liste 4 in einen gemeinsamen Domaincluster zusammengefasst werden. In dieser beispielhaften Ausführung ist der Schwellenwert so definiert, dass die Domains ab zwei oder mehr übereinstimmenden Informationen bzw. Indikatoren zu einem gemeinsamen Domaincluster zusammengefasst werden. Dementsprechend ordnet der intelligente selbstlernende Algorithmus 7 die Domains „xy1.de“, „xy4.de“ und „xy5.de“ in den Domaincluster 8a des Domaininhabers und die übrigen Domains xy2.de‟, „xy3.de“ und „xy6.de“ in den weiteren Domaincluster 8b.
-
Ein Administrator kann in der Folge prüfen, inwieweit der Domaincluster 8a des Domaininhabers durch den selbstlernenden Algorithmus 7 korrekt zusammengestellt wurde und entsprechendes Feedback an den selbstlernenden Algorithmus 7 übergeben. Alternativ kann der Administrator dem selbstlernenden Algorithmus 7 weitere Indikatoren bekannt machen, die diesem helfen den Domaincluster 8a korrekter zusammenzustellen.
-
Der Domaincluster 8a des Domaininhabers kann von der Rechnereinheit 1 automatisiert an einen weiteren Algorithmus überführt werden, der sicherheitsrelevante Tests mit den Domains des Domainclusters durchführt und gegebenenfalls auch automatisiert sicherheitsrelevante Änderungen der entsprechenden Domains durchführt, die diese auf ein besseres Sicherheitslevel anheben.
-
Das erfindungsgemäße Verfahren ermöglicht es also, dass eine Vielzahl von Domains eines Domaininhabers sehr zeiteffizient und effektiv automatisiert überprüft und getestet werden können.