Wie finde ich eine Liste von Cnames, die auf eine bestimmte Adresse verweisen?

2135
Amin Shah Gilani

Ich führe ein Sicherheitsexperiment aus und muss Domänen identifizieren, die auf eine bestimmte Subdomäne zeigen. Ich habe mich gefragt, ob es einen Weg gibt, die Cnamens für alle Domänen in einer Liste irgendwo zu finden?

Oder muss ich die gesamte .com-Liste durchsuchen und durchgehen, um jede Instanz des Cnamens zu finden?

0

2 Antworten auf die Frage

2
Tanmay Tiwari

Ich habe mich gefragt, ob es einen Weg gibt, die Cnamens für alle Domänen in einer Liste irgendwo zu finden?

Nein, es gibt keinen richtigen Weg. Die CNAME-Einträge werden in Zonendateien gespeichert, die in verschiedenen Nameservern gespeichert sind. Es gibt keine generelle Möglichkeit, die gesamte Zonendatei von einem Nameserver abzurufen. Wenn Sie keinen Zugriff auf alle Nameserver der Welt haben, können Sie nicht alle CNAMES finden, die auf eine Domain verweisen (die Sie offensichtlich nicht haben können).

Oder muss ich die gesamte .com-Liste durchsuchen und durchgehen, um jede Instanz des Cnamens zu finden?

Auch wenn Sie die Zonendatei für eine TLD herunterladen (Ja, das ist möglich: http://jordan-wright.com/blog/2015/09/30/how-to-download-a-list-of-all-registriert- Domain-Namen / ), Sie erhalten lediglich eine Liste von Nameservern, die für alle Second-Level-Domains verwendet werden. Dann müssen Sie alle Nameserver in der Liste durchgehen und rekursiv nach ihrer Zonendatei fragen, die sie in den meisten Fällen nicht bereitstellen.


Eine mögliche Problemumgehung in Ihrem Fall wäre das Protokollieren der Aktivitäten von Benutzern.

  • Wenn Sie der Eigentümer der particular subdomainCNAMEs sind, für die Sie CNAMEs verwenden möchten, und ein Webserver auf diesem Server gehostet wird, können Sie den HOSTHeader in der HTTP-Anforderung protokollieren, um einen möglichen CNAME-Eintrag zu erhalten.

  • Wenn Sie Netzwerkadministrator Ihres Netzwerks sind (dh Sie haben Zugriff auf den lokalen DNS-Server), können Sie alle DNS-Abfragen protokollieren, die in die gewünschten CNAMEs aufgelöst werden.

0
davidgo

Als Endbenutzer, bei dem Nameserver nicht richtig eingerichtet sind, können Sie den DNS nicht abrufen, um eine Liste aller Ressourceneinträge abzurufen (was ich denke, was Sie fragen).

Wenn der Domainname nicht richtig eingerichtet ist (oder Sie über erhöhte Privs verfügen, was Sie vermutlich nicht tun), können Sie einen "Zone Transfer" durchführen, der den Inhalt der Zone entlädt - schauen Sie hier, aber unter Linux, es ist so einfach wie ein dig axfr domain.name @ dns.server.name

Wenn Sie Zugriff auf die Box haben oder Netzwerkverkehr unter "der bestimmten Subdomäne" abfangen können und der Zieldatenverkehr "http" ist, können Sie die http-Header abrufen, um eine Liste von Anforderungen zu erhalten (wenn Sie den Webserver ausführen, Sie Sie können eine Protokolldatei erstellen, um diese Informationen zu erzeugen, durch die Sie suchen können.

Wenn Sie über eine Liste von Domänen verfügen und wissen, welche Subdomäne Sie für jede Domäne suchen, können Sie ein Skript schreiben, um die Subdomäne für jede Domäne abzufragen und dieses zu protokollieren. (Aber ich vermute, das ist nicht das, was Sie fragen?)