Thema: IP Scanner

Einzelnen Beitrag anzeigen

ehoffman

Registriert seit: 3. Jan 2006
Ort: Braunschweig
15 Beiträge
 
Delphi 2006 Enterprise
 
#52

Re: IP Scanner

  Alt 4. Jan 2006, 10:55
Zitat von FriFra:
Pingen kann man nicht auf Port 80, aber ein TCP-connect ist schon möglich. Aber wozu soll das gut sein? Es gibt viele Clients mit und viele Clients ohne Webserver, daran kann man auch nicht erkennen, worum es sich handelt... wozu sollte das also gut sein?
Ok, hier wird der Begriff "Ping" halt anders verwendet - gemeint ist (und das macht das Programm) ein TCP connect auf Port 80. Im übrigen kann man damit ziemlich gut feststellen ob ein Rechner "existiert" oder nicht. So machen es die üblichen Portscanner (wie z.B. nmap) ja auch. Genutzt wird dazu der 3-Wege-Handshake von TCP.

Siehe: http://de.wikipedia.org/wiki/Transmi...Wege-Handshake

Dabei sende der Client der die Verbindung aufbauen will ein TCP-Paket mit gesetztem SYN-Bit und der Sequenznnummer N an den Server. Der Server antwortet dann mit einem TCP-Paket mit:
  • SYN-Bit und eigener initialer Sequenznummer Y und
  • gesetztem ACK-Bit + Sequenznummer des Clients plus 1 (N+1).
Der Client antwortet dann darauf mit einem ACK und Sequenznummer Y+1. Die Verbindung ist jetzt aufgebaut und das Scannprogramm "weiss" nun das es dort einen Rechner gibt und der Port geöffnet ist.

Ist der Port geschlossen sollte ein normaler TCP/IP-Stack mit einem TCP-Paket antworten in welchem das RST (Reset) Bit gesetzt ist. Der Scanner "weiss" dann, ok da ist ein Rechner aber der Port ist geschlossen. Antwortet der Server überhaupt nicht, dann gibt es zwei Möglichkeiten: Entweder da ist kein Rechner mit dieser IP-Adresse oder da ist ein Rechner mit Firewall, wobei die Firewall so konfiguriert ist das Verbindungswünsche auf eben diesem Port ohne Antwort gefiltert (Firewallregel DROP) werden (In diesem Fall gibt z.B. nmap dann "filtered" aus, wobei das eben auch "kein Rechner" bedeuten kann. Daher scannt man immer mehr als einen Port )

Rechtlich gesehen ist übrigens bereits das Portscanning von fremden Rechnern strafbar und wird als "Angriff auf fremde Rechnersysteme" gewertet. Das ist im übrigen auch ganz gut so, da die meisten DDoS-Attacken oben genannten 3-Wege-Handshake zum lahmlegen der Server benutzen (Wenn nach dem Verbindungsaufbau die Verbindung nicht korrekt geschlossen, sondern einfach abgebrochen wird, dann wartet der Server auf eigehende Datenpakete bis ein meist recht langes Timeout abläuft. Machen das viele Clients sehr oft, dann wartet der Server nur noch und kann seinen eigentlichen Diensten nicht mehr nachkommen).

So nun aber genug "kluggeschi****".

Viele Grüße,
Eike
Eike
  Mit Zitat antworten Zitat