Frage:
Script Kiddies - Wie finden sie meine Server-IP?
microwth
2016-02-12 18:53:49 UTC
view on stackexchange narkive permalink

Ich habe noch keine Site auf Digital Ocean ohne Domain eingerichtet, daher gibt es nur die IP. Obwohl ich niemandem von ihrer Existenz erzähle oder Werbung mache, erhalte ich von fail2ban Hunderte von Benachrichtigungen, die verschiedene IPs versuchen hacke meinen SSL-Port oder suche nach PHP-Dateien.

Aber woher wissen sie, dass ich existiere? Woher bekommen sie die IP?

Willkommen im Internet! Sie scannen rund um die Uhr den gesamten öffentlichen IPv4-Adressraum. Ich würde sie aber nicht als Kinder bezeichnen.
Sie werden feststellen, dass dies sehr schnell geschieht, im Grunde genommen innerhalb von Minuten, nachdem Sie online gegangen sind. Es wird nur schlimmer, besonders wenn Sie ein hochwertiges Ziel hosten. Sie können dies bis zu einem gewissen Grad abmildern, indem Sie xtables-Geoip-Addons installieren und ein Negations-Match verwenden, das nur bestimmte Länder zulässt (der höchste Datenverkehr kommt aus China, Brasilien, Russland usw.). Beachten Sie jedoch, dass dies lediglich den Bot-Verkehr und die Arbeit Ihrer CPU zum Verbot dieser Scans / automatisierten Angriffe verringert. Das allein sichert dich überhaupt nicht.
@TechnikEmpire Und ganz zu schweigen davon, dass diese Angreifer ein VPN verwenden können, das sie scheinbar aus Ihrem Gastland stammen lässt. Stoppt VPNs nicht.
@MarkBuffalo in der Tat, es ist nur eine Möglichkeit, sich etwas CPU-Zeit zu sparen, nichts weiter.
Seltsam. Ich habe meine lokal gehostete Website seit ungefähr einem Monat online (allerdings nicht ständig, nur während der Entwicklung), und ich habe noch keinen einzigen Besucher.
@Carcigenicate Sind Sie überhaupt erreichbar? Das heißt, öffentliche IP, Portweiterleitung usw.?
@deviantfan Ja. Ich kann die Site über Computer außerhalb meines lokalen Netzwerks über unsere öffentliche IP erreichen.
@deviantfan Eigentlich verwende ich einen nicht standardmäßigen Port, deshalb wahrscheinlich.
Randint (1.255): Randint (1: 255): Randint (1: 255): Randint (1: 255) wird dich schließlich treffen.
Es ist wie zu fragen, wie der Postbote Ihr Haus gefunden hat, damit er den Flyer in Ihren Briefkasten werfen konnte, den er in jeden Briefkasten in Ihrer Nachbarschaft warf.
Ich würde nicht andere Leute anrufen, ohne zu wissen, dass Ihre IP-Adresse öffentlich ist. FWIW Ich habe auch auf DO etwas davon mitbekommen. Wenn Sie die Kennwortauthentifizierung über SSH deaktivieren, ist alles in Ordnung.
Ihre IP gehörte wahrscheinlich zu einer zuvor bekannten Website, daher ist sie nur in Ihren Einstellungen neu.
Sieben antworten:
Mark Buffalo
2016-02-12 19:19:10 UTC
view on stackexchange narkive permalink

Sie können Ihre IP-Adresse nicht im Internet verbergen. Sie sind nicht geheim.

So ziemlich das, was @DeerHunter gesagt hat. Es ist trivial, das gesamte Internet zu scannen. Wenn sie wollen, können sie auf alle bekannten digitalen Meerströpfchen zielen, die online sind.

Sie können dies mit einem Timer tun, sodass Sie es beim Versuch, offline oder online zu gehen, immer wieder versuchen, da dies möglicherweise hochwertige Ziele sind, die kurzfristig anfällig werden können.

Lassen Sie mich Ihnen ein sehr grobes Codierungsbeispiel geben. Stellen wir uns vor, Ihre IP-Adresse lautet 104.16.25.255 . Lassen Sie uns die IP-Adresse von www.digitalocean.com abrufen, damit wir leicht nach zugehörigen IP-Adressen suchen können. www.digitalocean.com gibt 104.16.25.4 zurück. Lassen Sie uns alles scannen: 104.16.25.*


Das Scannen ist vom Standpunkt der Programmierung aus unglaublich einfach.

Nehmen wir an, wir möchten versuchen, alle zu finden in der Nähe zugehörige IP-Adressen. Angenommen, Programme können sehr gut mit Zahlen und Mustern umgehen. Hier ist ein Beispiel für eine Inkrementierung einer Ganzzahl:

  i ++;  

Hiermit wird der aktuelle Wert von i um erhöht 1 . Nehmen wir an, i beginnt als 1 . Nach i ++ erhalten Sie 2 . Schauen Sie sich diese schmerzlich einfache Schleife an:

  für (int i = 1; i < 256; i ++) {scanIpAddress ("104.16.25." + I);}  

Eine alternative einzeilige Bash-Variante wäre wie folgt:

  für ip in `seq 1 255`; do scan_thingy_command 192.168.0. $ ip --options -oG lol.txt; erledigt  

Sie haben gerade 104.16.25.1 gescannt und i von 0 in 1 geändert . Während die gesamte Schleife fortgesetzt wird, wechselt sie von 104.16.25.0 zu 104.16.25.255 . Ich habe momentan keine Zeit zum Scannen und Schauen. Es ist jedoch möglich, dass dieser winzige Block nicht nur zu digitalocean gehört.

Um mehr Ziele auf DigitalOcean zu finden, kann ein Programmierer die Zahlen noch mehr ändern. Führen Sie beispielsweise eine weitere Schleife ein, die die oben genannte Schleife innen verschachtelt, und fügen Sie j : scanIpAddress ("104.16." + J + "." + I); hinzu. Dadurch können sie 104.16.1-255.1-255 scannen.

Von dort aus können sie weiter rückwärts gehen und nach Schleifen verschachteln, bis sie das gesamte Internet erhalten. Es gibt andere, effizientere Möglichkeiten, dies zu tun, wie z. B. Masscan, aber dies ist die grundlegendste Methode.

Dies kann auch in der Befehlszeile mit einer Zeile erfolgen:

  für oct1 in `seq 1 255`; do für oct2 in `seq 1 255`; do für oct3 in `seq 1 255`; do für oct4 in `seq 1 255`; scannen Sie $ oct1. $ oct2. $ oct3. $ oct4 --stuff; erledigt; erledigt; erledigt; erledigt  

Andere Methoden

Das obige Beispiel war ein wirklich grobes Beispiel. Sie tun möglicherweise mehr, ihr Code ist möglicherweise unterschiedlich und sie verwenden möglicherweise völlig andere Methoden und / oder Programme. Das Konzept ist jedoch ziemlich gleich.

Es ist auch möglich, dass die fraglichen Programme nur alle in Massen ansprechen.


Wie kann ich meine Sachen online verstecken?

Wenn es online ist, was auch immer Sie verstecken, werden sie es finden ... oder versuchen, es zu finden.

Abhängig von Ihrem Webserver können Sie jedoch http-Zugriffskontrollen wie .htaccess ausprobieren. Wenn Sie Zugriffskontrollen verwenden - dies hängt wiederum von Ihrem Webserver ab -, können Sie wahrscheinlich verhindern, dass andere Seiten anzeigen / darauf zugreifen .

Dies schützt Sie jedoch nicht vor Anmeldeversuchen außerhalb der Website. Und wenn Sie ihnen den Zugriff auf nicht vorhandene Webseiten verweigern, wissen sie jetzt, dass Sie wirklich online sind, und können ihre Angriffe einfacher konzentrieren! Es ist jedoch immer noch gut trainieren.

Hier ist ein Beispiel für die Verweigerung von .htaccess für Apache (2.4 und höher):

  IP 192.168.1.100   pre erforderlich >

Im obigen Beispiel verweigern Sie allen den Zugriff auf diesen Ordner mit Ausnahme Ihrer IP-Adresse. Beachten Sie, dass 192.168.1.100 eine lokale IP-Adresse ist. Sie müssen dies durch Ihre öffentliche IP-Adresse ersetzen.

Beachten Sie außerdem, dass Ihr Angreifer weiterhin auf diese Seiten zugreifen kann, wenn auf Ihrem Computer ein Proxy / VPN ausgeführt wird. Wenn Ihr Angreifer bereits Zugriff auf die Website hat, kann er den .htaccess entweder bearbeiten oder entfernen. Nichts ist 100%.

Stellen Sie nur nichts online, wenn Sie nicht zum Scannen bereit sind. Jeder hat einen Plan, bis er im Mund einen Port-Scan durchführt.

@TechnikEmpire Buffalo-Überlaufangriff.
@MarkBuffalo Ich dachte, der Buffalo Overflow Attack ist "Buffalo Büffel Büffel Büffel Büffel Büffel Büffel Büffel Büffel Büffel Büffel Büffel Büffel Büffel Büffel Büffel Büffel Büffel Büffel Büffel Büffel Büffel Büffel Büffel Büffel Büffel Büffel Büffel Büffel Büffel Büffel Büffel Büffel Büffel Büffel Büffel Büffel Büffel Büffel Büffel Büffel Büffel Büffel Büffel Büffel.
@corsiKa Bitte leiten Sie diese Diskussion außerhalb des Themas an BuffaloOverflow.stackexchange.com weiter.
"Wie kann ich meine Sachen online verstecken?" Ich würde Änderungsstandardports hinzufügen ... "Script Kiddies" suchen nach einfachen Zielen ... 80/443/22 / etc ... Wenn Sie noch nicht online sind, ändern Sie sie in 81/444/23 / etc. .. oder 55080/55443/55022 / etc ... oder was auch immer ... Verlassen Sie sich nicht darauf, um Sie zu schützen, aber es wird einen GROSSEN Teil der automatisierten Angriffe abschwächen - besonders wenn Sie nicht online sind. Schalten Sie zurück, wenn Sie bereit sind.
hat niemand an 'Buffaloverflow' gedacht? Bearbeiten: Ich habe jetzt Markenrechte an diesem Namen gesichert. Bezahle!
Um alle IPs von Digital Ocean zu finden, müssen Sie nur die AS-Nummernlisten überprüfen. Sie möchten sich "AS14061 Digital Ocean, Inc." ansehen.
Sollten Sie Folgendes verwenden: IP 192.168.1.100 erforderlich Um mit Apache 2.4+ kompatibel zu sein - so oft musste ich diese alten Klauseln ändern, meine Augen bluten jetzt!
@karora Ja, für Apache 2.4 ist das anders. Ich wollte es früher aktualisieren, hatte aber keine Zeit. Fühlen Sie sich frei, meinen Beitrag zu bearbeiten.
@WernerCD Oder noch einfacher. Senden Sie keine Dateien an jeden Computer, der sie anfordert.
fail2ban + suricata im IPS-Modus mit iptables nfqueue + modsecurity2 + schlüsselbasiertem ssh mit Herausforderung + vsftpd mit ftps + maldet + Webserver hat schreibgeschützte Berechtigungen, mit denen Sie beginnen können.
AilisyipxlCMT Copy = Right: P.
Sie können Ihre Inhalte online ausblenden, indem Sie nur eine statische IPv6-Adresse verwenden, die nicht an einen öffentlichen DNS-Eintrag angehängt ist.
In der Praxis schütze ich meinen Administrationsbereich sehr gut mit "Zulassen ab 20.16 # mein Arbeitsplatzbereich Zulassen ab 160.88 # mein Heimbereich". Selbst wenn Sie den 3. und 4. Platz für Ihr Handy und Ihren Lieblingskaffeehaus hinzufügen, sperren Sie immer noch 99% der IPs ... (Wenn Sie ein begeisterter Reisender sind, behindern Sie sich wahrscheinlich selbst ... und natürlich , kein Ersatz für zusätzliche Maßnahmen.)
Hören Sie den Beatles zu: "Hey, Buffalo Bill. Was haben Sie getötet? Buffalo Bill."
user2428118
2016-02-12 21:29:05 UTC
view on stackexchange narkive permalink

Der IPv4 -Adressraum ist auf nur 4.294.967.296 Adressen beschränkt. [Anmerkung 1] sup> Bei ausreichender Bandbreite ist es trivial, jede einzelne IP-Adresse da draußen zu scannen, insbesondere wenn Sie sind der Besitzer eines Botnetzes, das aus Tausenden von gehackten Geräten besteht.

Mit IPv6 [Anmerkung 2] sup> sind die Dinge etwas schwieriger: Mit über 300.000.000.000.000.000.000.000.000.000.000.000.000.000.000.000 Adressen wird es unpraktisch, sie alle aufzuzählen. Es gibt jedoch noch verschiedene Mittel, mit denen die Adressen entdeckt werden können; In einem kürzlich durchgeführten Fall wurde die Internet-of-Things-Suchmaschine Shodan mithilfe von NTP-Servern beim Erkennen neuer IPv6-Hosts beim Synchronisieren ihrer Uhren erwischt.

Das Wesentliche davon: Wenn Sie nicht bereit sind, untersucht zu werden, sollten Sie nicht im Internet sein. Das Scannen des gesamten IPv4-Internets kann in wenigen Tagen erfolgen, und Ihre IPv6-Adresse wird ebenfalls erkannt - es sei denn, Sie verwenden sie überhaupt nicht.

Hinweis 1: Einige davon sind nicht verfügbar, da sie für spezielle Zwecke reserviert wurden.
Hinweis 2: IPv6 ist nur für Benutzer von Digital Ocean verfügbar, wenn Sie haben es aktiviert. sub>

+1 für "* Wenn Sie nicht bereit sind, untersucht zu werden, sollten Sie nicht im Internet sein * '
"Das Scannen des gesamten IPv4-Internets ist in wenigen Minuten erledigt"? Wie? Mit einem Adressraum von 4 Milliarden (und ja, ein Teil dieses Bereichs ist für die Verwendung in privaten Netzwerken reserviert, der größte Teil jedoch nicht) und selbst den besten Netzwerkanforderungen, die etwa 5 Millisekunden in Anspruch nehmen, sind einige Back-of- Die Serviettenmathematik zeigt, dass das Scannen des gesamten IP-Bereichs einen einzelnen Computer erfordern würde, der jeweils eine Anforderung ausführt, und zwar weit über 200 Tage. Sie würden eine * massive * Serverfarm benötigen, die weit über die Ressourcen eines typischen Skriptkindes hinausgeht, um diese so weit zu parallelisieren, dass sie auf "ein paar Minuten" reduziert wird.
@Mason Ja, ich sollte wahrscheinlich klarstellen, dass Sie dafür viel Bandbreite für Ihre Server benötigen (oder ein [wirklich großes Botnetz] (https://www.abuse.ch/?p=3294)). ** Bearbeiten: ** änderte es in "Tage" und fügte dem Beitrag einen Link zu einem Beispiel hinzu.
Technisch gesehen könnte man einfach ein riesiges Rig zum Scannen für den Tag mieten.
@MasonWheeler waitaminute, das sind 200 Tage, wenn Sie jede Anfrage in Serie gemacht haben, was irgendwie verrückt ist. Wenn Sie einfach Hintergrundprozesse oder ähnliches verwenden, können Sie mindestens 200 Anforderungen gleichzeitig ausführen, ohne die Latenz wesentlich zu beeinträchtigen. Ein vollständiger IPv4-Scan würde also 1 Computer 1 Tag und nicht 200 Tage dauern. Und vielleicht sogar viel besser, da ich mir im Moment nicht sicher bin, welche Zahlen genau sind.
@MasonWheeler Es ist nicht schwer, sich einen Server mit 1 Gbit / s Konnektivität zu besorgen. Die meisten Netzwerkpfade haben eine PMTU von 1500 Byte oder etwas weniger. Um die Bandbreite nutzen zu können, muss das Gerät mindestens 83333 Pakete pro Sekunde verarbeiten können. In IPv4 gibt es ungefähr 3700 Millionen globale Unicast-Adressen. Das Senden eines Pakets an jedes von ihnen mit dieser Geschwindigkeit dauert 12 Stunden und 20 Minuten.
@MasonWheeler Haben Sie noch nichts von Masscan gehört? https://github.com/robertdavidgraham/masscan
@TerryChia Zugegeben, nein, habe ich nicht. Ich habe es mir nur angesehen und es heißt, dass man für das ultraschnelle Scannen 10 Gbit / s Bandbreite benötigt, über die eigentlich niemand verfügt. Das ist 10x schneller als selbst Google Fibre!
@MasonWheeler Wieder nein. Die Dokumente sagen, dass Sie 10 Gbit / s benötigen, um mehr als 2 Mil-Pakete / Sek. Zu erreichen. Sie benötigen weit weniger, um den gesamten IPv4-Adressraum in weniger als 200 Tagen zu scannen.
@MasonWheeler "Sie würden eine riesige Serverfarm benötigen, die weit über die Ressourcen eines typischen Skriptkindes hinausgeht" - dafür ist die Cloud gedacht: Sie können 4000 Server für eine Stunde für weniger als 30 US-Dollar bei DigitalOcean mieten.
Das Scannen des Internets über einen Gigapit-Port mit Masscan und den DNA-Treibern dauert 45 Minuten. Das ist trivial.
David Richerby
2016-02-13 00:28:41 UTC
view on stackexchange narkive permalink

Aber woher wissen sie, dass ich existiere?

Sie wissen nicht, dass Sie existieren. Sie wissen nicht, dass sie mit Ihnen sprechen: Sie wissen nur, dass sie mit einem Computer mit einer bestimmten IP-Adresse sprechen. IP-Adressen sind Telefonnummern sehr ähnlich. Wenn Sie eine legitime Vorwahl gefolgt von einer Zufallszahl mit der richtigen Anzahl von Ziffern wählen, besteht eine gute Chance, dass Sie mit jemandem sprechen, insbesondere wenn die Vorwahl viele Abonnenten hat. Das bedeutet nicht, dass Sie "gewusst haben, dass diese Person existiert": Es bedeutet nur, dass Sie herausgefunden haben, dass ihre Telefonnummer verbunden ist.

Woher beziehen sie die IP?

Sie bekommen es nirgendwo hin. Es ist nur eine 32-Bit-Zahl und es gibt nicht wirklich so viele davon. 134.183.96.2 dort, das ist eine IP-Adresse. Ich habe es durch Drücken meiner Tastatur (und Löschen ungültiger Ziffern) erhalten. Es gehört wahrscheinlich jemandem, weil fast alle IP-Adressen dies tun. Die Bösen scannen nur systematisch den Adressraum; Sie finden jede IP-Adresse, weil "Finden" nur "genug gültige Nummern generieren" bedeutet.

Oscalation
2016-02-13 09:51:16 UTC
view on stackexchange narkive permalink

Aber woher wissen sie, dass ich existiere?

Sie wissen, dass an dieser IP-Adresse etwas vorhanden ist, weil ihr Scanner es ihnen sagt. Höchstwahrscheinlich haben sie nicht nach Ihnen gesucht, sondern sind nur über diese IP-Adresse gestolpert, indem sie große Teile oder das gesamte Internet gescannt haben.

http://blog.erratasec.com/2013/09/masscan-entire-internet-in-3-minutes.html

Peter
2016-02-14 19:46:23 UTC
view on stackexchange narkive permalink
  1. IP-Adressen sind endlich.
  2. IP-Adressen werden in Blöcken zugewiesen.
  3. ol>

    Sie können also alle IPs von Ihrem Heim-PC in etwa einem Jahr scannen, obwohl Ihr ISP dies möglicherweise bemerkt und Sie fragt, was Sie tun Ich versuche zu ziehen. Einige Blöcke enthalten mit größerer Wahrscheinlichkeit schlecht geschützte Server, insbesondere die Blöcke, die Hosting-Anbietern zugewiesen sind. Das Scannen nur dieser Blöcke ist sehr billig, schnell und einfach, und die Erfolgswahrscheinlichkeit ist vergleichsweise hoch.

    Das Scannen von einer einzelnen IP ist problematisch, da Ihre IP bald blockiert wird und diese Personen Botnets verwenden oder das kommerzielle Äquivalent: Cloud-Dienste. Sie müssen kein eigenes Botnetz erstellen. Stattdessen können Sie ein Botnetz mieten.

Viele Sicherheitsexperten ignorieren einfach alle Scans als "Hintergrundgeräusche", sodass sie nicht unbedingt blockiert werden.
user100251
2016-02-14 22:28:09 UTC
view on stackexchange narkive permalink

Höchstwahrscheinlich wissen sie nicht, dass die angegebene IP speziell Ihnen gehört. Sie kennen jedoch den IP-Pool, der zu Ihrem Hosting-Unternehmen gehört, und verwenden diese Informationen, um nach aktiven Hosts zu suchen. Sie können iptables verwenden, um die Sicherheit Ihrer Box zu verbessern oder die Anzahl der Verbindungen und Verbindungstypen zu begrenzen. Ansonsten können Sie nichts anderes tun. Das Internet sollte zum Informationsaustausch genutzt werden. Wenn Sie nicht teilen möchten, trennen Sie einfach die Box (Entwicklungsbox). Wenn es sich um eine Entwicklungsbox handelt, ist es eine gute Idee, sie lokal zu verschieben und außerhalb Ihres LAN keinen Zugriff darauf zu gewähren.

Sie wissen mit ziemlicher Sicherheit nicht, dass der Adressblock jemandem gehört, da diese Informationen für sie mit ziemlicher Sicherheit keinen Nutzen haben.Es ist höchstwahrscheinlich kein gezielter Angriff.
Ein Angriff ist immer zielgerichtet.Die Frage ist nur, wer oder was.
Avm-x
2019-01-19 10:37:18 UTC
view on stackexchange narkive permalink

Da das Scannen von IP-Adressen nach offenen Ports eine einfache Aufgabe ist.
Viele Tools wie ZMAP ( 1300x schneller als NMAP) können das gesamte Internet mit a scannen Einige Stunden, wenn Sie eine anständige Internetverbindung haben.

Wenn Sie beispielsweise das gesamte Internet auf Port 80 scannen möchten (Ihr ISP fragt möglicherweise):

  sudo zmap -p 80 0.0.0.0/0  

Und ZMAP scannt keine privaten IP-Adressen (wie in der Datei blacklist.conf)



Diese Fragen und Antworten wurden automatisch aus der englischen Sprache übersetzt.Der ursprüngliche Inhalt ist auf stackexchange verfügbar. Wir danken ihm für die cc by-sa 3.0-Lizenz, unter der er vertrieben wird.
Loading...