DNS Protokoll Manipulieren?

3 Antworten

Du kannst die C:\windows\system32\drivers\etc\hosts Datei öffnen (Unix, Linux, Mac: /etc/hosts) und dann:

<domain> <ip>

reinschreiben (<xyz> sind Platzhalter).

Oder du änderst den DNS Server in dem System in den Netzwerkeinstellungen gegen dein eigenen ab und legst dort die Zone für die Domain an, dann wird der Server das nicht forwarden weil es sich selbst für zuständig hält.

Oder du floodest den DHCP dass der keine Leases mehr frei hat und lässt deinen eigenen DHCP auf DHCP Anfragen antworten und der gibt dann deinen DNS Server raus (den obig erläuterten).

Oder du versuchst den verwendeten DNS Server mit "DNS Cache Poisoning" dazu zu bringen, die falsche IP zu der Domain rauszugeben.

Die Tipps sind nach Praktizierbarkeit abwärts sortiert.

Manipuliere das DNS Protokoll, innerhalb des PCs, so das alle anfragen auf die URL umgeleitet werden.

Die Formulierung "Innerhalb" spricht sehr für die Hosts-Datei.

1

Du musst wissen das ich gerade erst letzte Woche angefangen habe und mich gerade in diesem Gebiet "internet, server" und alles das dazu gehört nich wiklich gut fortbewege.

# Copyright (c) 1993-2009 Microsoft Corp.
#
# This is a sample HOSTS file used by Microsoft TCP/IP for Windows.
#
# This file contains the mappings of IP addresses to host names. Each
# entry should be kept on an individual line. The IP address should
# be placed in the first column followed by the corresponding host name.
# The IP address and the host name should be separated by at least one
# space.
#
# Additionally, comments (such as these) may be inserted on individual
# lines or following the machine name denoted by a '#' symbol.
#
# For example:
#
# 102.54.94.97 rhino.acme.com # source server
# 38.25.63.10 x.acme.com # x client host

# localhost name resolution is handled within DNS itself.
#127.0.0.1 localhost
#::1 localhost

so sieht die Datei bei mir aus. doch wo muss ich jetzt was ersetzen oder nachtragen ???

0
@knopf20

Einfach unten eine Zeile anhängen.

Die IP des Servers auf den die Domain zeigen soll und dahinter die Domain (hatte es oben verdreht).

Also:

<IP des Angreifers> <www.dieopferwebsite.de>

Beispiel:

34.0.122.3 www.google.de

Dann müsste auf dem Server mit der IP "34.0.122.3" ein Webserver aufgesetzt werden, der bekommt "www.google.de" als V-Host und gibt dann die entprechende Website raus. Der muss auf die URL eben antworten.

Wenn es überhaupt um ein Angriffszenario geht. Das gleiche kann man auch machen wenn man innerhalb eines Unternehmens auf den DNS Server verzichtet und jeden Host manuell einstellt.

PS: Du kannst die Datei nur mit Adminrechten bearbeiten.

0
@KnackIgel

@KnackIgel

Paar Hinweise:

Beispiel:

34.0.122.3 www.google.de

Schlechtes Beispiel - google wird auf den meisten Browsern https erzwungen - da klappt dein Angriff nicht ;). Aber egal...

Manipuliere das DNS Protokoll, innerhalb des PCs, so das alle anfragen auf die URL umgeleitet werden.

Die Formulierung "Innerhalb" spricht sehr für die Hosts-Datei.

Du kannst aber mit der Host-Datei nur Hostname zu ip auflösen - es wird aber klar geschrieben, dass man auf eine URL weiterleiten soll.

Außerdem kann man in der host Datei nicht ALLE Anfragen weiterleiten - sondern nur die, die man expliziet aufführt (oder?).

Wobei ich mit der Formulierung der Aufgabenstellung auch nichts anfangen kann. Wie manipuliert man ein Protokoll?

DNS ist hier spezifiziert:

https://tools.ietf.org/html/rfc1034

https://tools.ietf.org/html/rfc1035

Wenn, dann manipulierst du DNS-Anfragen. Aber doch nicht ein Protokoll - also schlicht und einfach eine formale Spezifikation, wie Kommunikation abläuft.

Wenn man sich nicht direkt auf z.B. Transportschicht einklinken will (also ganzen Traffik abfangen, filtern, DNS Anfragen suchen und manipulieren; das wird sicherlich nicht trivial sein), wäre die einfachste Möglichkeit wohl eigenen DNS Server schnell mal aufzusetzen, der eben immer das gleiche zurückgibt und dann halt den DNS Server auf dem Zielrechner umbiegen.

1
@Tuxgamer2

Es wird sicherlich darum gehen einen HTTP Request vom Browser auf einem bestimmen Server zu schicken. Und ja, dazu muss die Auflösung der Domain (die ein Anteil der URL ist) die Server IP ergeben. Wie man oben lesen kann, führe ich das Beispiel auch weiter aus und schreibe, dass man einen V-Host auf einem Webserver anlegen muss der zu der URL eine Seite ausgibt.

Ansonsten hab ich nie behauptet, dass die URL "umgeleitet" oder "aufgelöst" wird. Ging nur um die Domain, ok?

In sofern hast du Recht, dass die Antwort aber auf dieser Annahme basiert. Die Aufgebenstellung ist bisschen schwammig forumliert. Aber je nach Kontext kann man mit ein bisschen Mitdenken bestimmt erfassen was zu tun ist.

Aber kleinlich kann ich auch sein und dich darauf hinweisen, dass ARP ein Layer der Sicherungsschicht ist. Und für eine "ARP Cache Poisoining" - Attacke um "Man in the middle" zu spielen muss man diese Sicht manipulieren. Das TCP z.B. (Transportschicht) kümmert sich um die Reihenfolge und den unversehrten Transfer der Pakete, nachdem das Routing durchgeführt wurde.

Dazwischen liegt noch IP auf der Vermittlungsschicht.


1
@KnackIgel

Und dazu habe ich eben probiert "www.google.de" auf meine IP zu bringen und mein Webserver hat ganz normal geantwortet ohne, dass der Browser auf https://... geleitet wurde. Ich glaube auch nicht, dass irgendwelche Webseiten von Browsern eine hardgecodete Extrabehandlung bekommen. Google leitet sich selbst um.

Maximal kann es sein, dass ein 301 Redirect auf https://... vom Browser gecached wurde um den einen Request einzusparen. Darüber hinaus war das ein Beispiel und keine Anleitung für irgendwas.

1
@Tuxgamer2

Außerdem:

Manipuliere das DNS Protokoll, innerhalb des PCs, so das alle anfragen auf die URL umgeleitet werden.

Es werden nicht alle Anfragen auf eine URL umgeleitet, sondern es werden alle Anfragen, die diese URL betreffen,  umgeleitet. Verstehst du das?

Wenn man eine Anfrage auf diese expliziete URL stellt wird man auf einen falschen Server "umgeleitet", nicht wenn man eine Anfrage an eine beliebige URL stellt.

Deswegen können Maschinen nicht sprechen, da Sprache leider mehrdeutig ist ;)

1
@KnackIgel

Dieser Satzbau - ja - immer diese "natürliche" Sprache. Danke ;).

0
@KnackIgel

Was für Browser nimmst du? HSTS sollte doch mittlerweile von allen Großen unterstützt.

https://en.wikipedia.org/wiki/HTTP\_Strict\_Transport\_Security

Also wenn du google schon mal geöffnet hast, sollte der Browser das dann eigentlich checken...

Ich glaube auch nicht, dass irgendwelche Webseiten von Browsern eine hardgecodete Extrabehandlung bekommen. 

War mir auch nicht bewusst, bis es mir jemand hier unter eine meiner Fragen geschrieben hat ;).

Chrome bzw. Chromium und was noch darauf basiert (wie Opera) auf jeden Fall: https://www.chromium.org/hsts

Firefox ist auch nachgezogen: https://wiki.mozilla.org/SecurityEngineering/HTTP\_Strict\_Transport\_Security\_(HSTS)_Preload_List

0
@Tuxgamer2

Ok, davon hatte ich noch nichts gehört :) Ich nehme Firefox Developer Edition 54.0a2, die Version ist 4 Tage alt. Jedoch ist der so konfiguriert, dass der immer völlig frisch ist nachdem ich den erneut starte. Ohne Cronik, Formulare, Vorschläge etc.

Entweder hängt es damit zusammen oder damit, dass ich duckduckgo benutze. Habe aber mal den Response Header von Google angesehen, da ist dieses Feld (Strict-Transport-Security) nicht drin.

0
@KnackIgel

Habe aber mal den Response Header von Google angesehen, da ist dieses Feld (Strict-Transport-Security) nicht drin.

Super gemacht, Google...

Wird aber von einigen gemacht - wundert mich, dass Google das noch nicht auf die Reihe gebracht hat. Habe da einen Artikel von letzten Jahr:

https://www.seroundtable.com/google-http-strict-transport-security-22463.html

Anscheinend sind die aber tatsächlich noch nicht so weit. War mir nicht bewusst...

Ich nehme Firefox Developer Edition 

Super gemacht, Mozilla...

Irgendwie hats meinen Links zur Mozilla-Seite zerlegt

https://wiki.mozilla.org/SecurityEngineering/HTTP\_Strict\_Transport\_Security\_(HSTS)_Preload_List

Jedenfalls findest da die Links zu den Listen. Gerade mal durchgegreppt:

Da ist ernsthaft nur google.com (bzw. 55 subdomains von google.com) aufgeführt - aber kein google.de!

google.com kannst du übrigens tatsächlich nicht als http mit firefox aufrufen.

So ein Blödsinn...

Naja, muss mich jedenfalls bei dir bedanken; war jedenfalls sehr interessant.

1
@Tuxgamer2

Hab auch was gelernt. Und cool, es gibt tatsächlich auf gutefrage.net jemanden (außer mir), der Ahnung von IT hat.

Und ich nicht nur: "ich hab mal ne Grafikkarte eingebaut und mache DDOS auf den Minecraft Account von deiner Mutter" - Computerexperten.

0

Entweder du löst die URL in eine IP auf und trägst sie dann eben beim Internet Adapter als DNS Server ein oder du manipulierst die Hosts Datei von Windows:

https://de.wikipedia.org/wiki/Hosts_(Datei)

also mit " du löst die URL in eine IP auf " meinst du dass ich im CMD Ping "Domain" eingeben soll und die IP die ich dann sehe in das Internetprotokoll version 4 unter DNS eintragen soll???

0
@knopf20

Wenn ich deine Aufgabenstellung richtig verstehe dann ja, weil damit würdest du alle DNS Anfragen auf die URL umleiten.

0

Was möchtest Du wissen?