Jemand hat mir gesagt, dass es einfacher ist, Ihre IP-Adresse in einer URL (wie http://192.0.2.34/default.html
) anzuzeigen. Ist das wahr? Ich könnte jeden Domainnamen verfolgen und auch seine IP-Nummer erhalten.
Jemand hat mir gesagt, dass es einfacher ist, Ihre IP-Adresse in einer URL (wie http://192.0.2.34/default.html
) anzuzeigen. Ist das wahr? Ich könnte jeden Domainnamen verfolgen und auch seine IP-Nummer erhalten.
Einfacher zu hacken? Einfacher zu tun? Möglicherweise. Die Verwendung einer IP-Adresse anstelle eines Hostnamens mit einem DNS-Eintrag bedeutet, dass Sie auf eine Ebene der Routing-Flexibilität verzichten, die sehr vorteilhaft sein kann.
Wenn beispielsweise Malware bei einem DoS-Angriff auf Ihre IP-Adresse abzielt und Sie einen Domänennamen verwenden, wechseln Sie die IP-Adresse der Site und des DNS-Eintrags, und der Angriff ist ohne beendet Ihre Benutzer kennen den Unterschied. Wenn Ihre Benutzer Anfragen direkt an Ihre IP stellen, ist dies jedoch keine Option. Sie sind an diese IP gebunden, es sei denn, Sie möchten Ihre Benutzer auf dem Weg stören (und möglicherweise verlieren).
Wenn auf Ihre Site als http://1.2.3.4/
zugegriffen wird, bedeutet dies normalerweise, dass keine Einschränkungen für den Host:
-Header erzwungen werden. Das würde bedeuten, dass Sie nicht nur über die IP-Adresse darauf zugreifen können, sondern über jeden Hostnamen, der zufällig in diese Adresse aufgelöst wurde - einschließlich einer Domain, die ein Angreifer registriert und darauf hingewiesen hat.
Dies eröffnet DNS-Rebinding -Angriffe, bei denen ein Angreifer die Same-Origin-Richtlinie umgeht, indem er die IP-Adresse eines Hostnamens zwischen seinem eigenen und Ihrem Server wechselt, und Cookie-Angriffe, bei denen er auf attacker.com verweist
zu Ihrem Dienst und dann sub.attacker.com
zu ihrem eigenen, sodass das Cookie aus der Subdomain gelesen werden kann.
Wie hoch das Risiko ist hängt vom Design und Zweck Ihrer Anwendung ab. Es ist am wahrscheinlichsten für nicht öffentliche Anwendungen ausnutzbar, bei denen Sie eine implizite Autorisierung basierend auf dem privaten IP-Adressbereich oder SSO haben (Windows auth et al.). In diesem Fall kann eine Anwendung vertrauliche Daten ohne Benutzerinteraktion erzeugen und diese Daten können für einen solchen Angreifer sichtbar werden.
Ohne dies zu wissen, besteht der sicherste Weg darin, den -Host einzuschränken: Der
-Header kann HTTP-Anforderungen enthalten. Dies bedeutet normalerweise, dass hostbasierte virtuelle Server eingerichtet werden und nur bekannte Hostnamen auf Ihre Webanwendungen zugreifen dürfen. In diesem Fall werden Angreifer-Hostnamen und der Zugriff auf die IP-Adresse gleichermaßen auf eine Fehlerseite angezeigt.
Aber Sie könnten sicherlich eine benutzerdefinierte Prüfung erstellen, die nur eine IP-Adresse und keinen anderen Hostnamen zulässt, wenn Sie dies wirklich wollten - also nein, es ist nicht die IP-Adresse, die an sich ein Problem darstellt.
Und / oder verwenden Sie einfach HTTPS, das mehr wasserdichte Sicherheit bietet, dass Sie den richtigen Server treffen.
Im Gegensatz zu den anderen Antworten halte ich die Verwendung von IP-Adressen anstelle von Hostnamen aus mehreren Gründen für eine schlechte Praxis. Vor allem:
Für durchschnittliche Benutzer ist es erheblich schwieriger zu überprüfen, ob sie mit dem richtigen Dienst und nicht mit einer Phishing-Site sprechen: Sie müssen sich eine große Anzahl anstelle von a merken Name.
Die Verwendung von IP-Adressen bedeutet, dass Sie https nicht mit einem gültigen Zertifikat verwenden können.
IP-Adressen können aus verschiedenen Gründen neu zugewiesen werden, und nicht alle von Ihnen unterliegen Ihrer Kontrolle. Auf diese Weise kann jemand anderes Ihre aktuelle IP-Adresse erhalten.
Eine übliche Methode zur Verarbeitung großer Datenmengen (z. B. eines DDoS-Angriffs) besteht darin, den DNS-Eintrag auf eine große verteilte Adresse zu verweisen Caching-Netzwerk. Durch die Verwendung einer IP-Adresse schließen Sie diese effektive und relativ kostengünstige Option aus.
Die Verwendung der IP-Adresse anstelle der Domäne ist keine schlechte Vorgehensweise für Sicherheit , da ein Angreifer sie trivial erhalten könnte.
Ein einfacher Terminalbefehl wie nslookup
kann nach IP-Adressen suchen, die von der angegebenen Domain aufgelöst wurden. Wenn die Domain mit einer einzelnen IP-Adresse verbunden ist, erledigt ping
den Job genauso gut.
Wenn Sie die Adresse Ihrer [Website] auf die eine oder andere Weise angeben, ist dies nicht der Fall mach es "hackbarer" als es vielleicht schon ist.
Es kann kein Sicherheitsrisiko sein, da jeder die Domain-IP-Adresse herausfinden kann.
Überprüfen Sie dies beispielsweise: IP-Lookup
Neben den von Bobince erwähnten guten Gründen können Sie auch kein ordnungsgemäß vertrauenswürdiges SSL / TLS-Zertifikat für eine Site erstellen, die keinen DNS-Domänennamen verwendet. Daher beschweren sich alle Browser, die versuchen, eine Verbindung zu Ihrer HTTPS: // Version Ihrer IP-adressierten Site herzustellen, dass sie ihr nicht vertrauen können.