See also ebooksgratis.com: no banners, no cookies, totally FREE.

CLASSICISTRANIERI HOME PAGE - YOUTUBE CHANNEL
Privacy Policy Cookie Policy Terms and Conditions
Portscanner – Wikipedia

Portscanner

aus Wikipedia, der freien Enzyklopädie

Ein Portscanner ist eine Software mit der überprüft werden kann, welche Dienste ein mit TCP/IP oder UDP arbeitendes System anbietet. Der Portscanner nimmt dem Anwender dabei die Arbeit ab, das Antwortverhalten eines Systems selbst mit einem Sniffer zu untersuchen und zu interpretieren.

Oft bieten Portscanner auch Zusatzfunktionen wie Betriebssystem- und Diensterkennung an, obwohl sie nichts mit dem eigentlichen Portscannen zu tun haben.

Inhaltsverzeichnis

[Bearbeiten] Funktionsweise

[Bearbeiten] TCP connect() Scan

Diese ist die einfachste Scanmethode. Der Portscanner nutzt den connect() Systemaufruf für den Portscan. Den eigentlichen Verbindungsaufbau übernimmt dann das Betriebssystem. Falls der Systemaufruf erfolgreich war, ist der Port offen. Die Verbindung wird dann sofort mit close() wieder geschlossen. Konnte die Verbindung nicht aufgebaut werden, ist der Port geschlossen.

Vorteilhaft bei dieser Methode ist die sehr einfache Programmierung. Da der connect() Befehl auf fast jedem System zur Verfügung steht, ist ein connect() Portscanner sehr portabel. Spezielle Rechte sind meist nicht erforderlich. Da die Verbindung bei Erfolg komplett aufgebaut wird, erscheint sie meistens in den Logdateien der Dienste.

[Bearbeiten] TCP SYN Scan

Beim TCP SYN Scan wird ein TCP-Paket mit SYN-Flag an den Ziel-Host gesendet, um einen Verbindungsversuch vorzutäuschen. Die Antwort des Hosts gibt Aufschluss über den Port: Sendet er ein SYN/ACK-Paket, den zweiten Teil des Drei-Wege-Handshakes von TCP, akzeptiert der Port Verbindungen und ist daher offen. Der Quell-Host antwortet dann in der Regel mit einem RST-Paket, um die Verbindung wieder abzubauen (dies geschieht meist allerdings nicht durch den Portscanner, sondern durch das Betriebssystem, da offiziell kein Verbindungsversuch unternommen wurde). Sendet der Host ein RST-Paket, ist der Port geschlossen. Sendet der Ziel-Host überhaupt kein Paket, ist ein Paketfilter vorgeschaltet.

Der Vorteil dieser Methode ist, dass die gescannte Anwendung keinen Verbindungsversuch erkennt. Deshalb erscheint die Verbindung nicht in den Logdateien und kann daher auch nicht analysiert werden. Jede bessere Firewall erkennt diesen Scan allerdings. Auf den meisten Quell-Systemen sind außerdem Systemverwalterrechte notwendig, weil TCP-Pakete vom Portscanner handgefertigt werden müssen.

TCP SYN Scans lassen sich für Denial of Service-Attacken in Form von SYN-Flood nutzen.

[Bearbeiten] TCP FIN/Xmas/Null Scan

Diese Methoden bauen keine Verbindung auf, sondern untersuchen das Verhalten auf Folgepakete. Falls ein Port offen ist, sollten die Folgepakete ignoriert werden, da sie nicht zu einer bestehenden Verbindung gehören. Ist der Port geschlossen, sollte ein Reset-Paket gesendet werden.

Welche Flags genau gesetzt werden hängt vom Scantyp ab:

Typ Flags
FIN FIN
Xmas FIN,URG,PUSH
Null (keine)

[Bearbeiten] TCP Idlescan

Dieser Scan wird nicht direkt vom System des Portscanners ausgeführt, sondern über einen Mittelsmann der als Zombie bezeichnet wird. Der Idlescan ist zur Zeit die einzige komplett unsichtbare Scanmethode. Falls eine Firewall auf dem Zielhost installiert ist, sieht es für ihn so aus, als ob der Scan vom Zombiehost kommt.

[Bearbeiten] Zombiehost

Um als Zombiehost für den Idlescan geeignet zu sein, muss er mehrere Bedingungen erfüllen.

  1. Der Zombiehost muss eine Verbindung zum Ziel aufbauen können
  2. Die IPID (IP Identification Number, ein Teil des IP-Headers) muss für den Portscanner vorhersehbar sein. (Linearer Anstieg)
  3. Der Zombiehost sollte möglichst wenig Netzwerkverkehr haben (daher auch der Name Idlescan)

[Bearbeiten] Ablauf

Für den eigentlichen Scan braucht der Portscanner die aktuelle IPID des Zombies. Um die IPID herauszufinden, wird einfach eine TCP Verbindung halb geöffnet (wie beim SYN Scan) (1). Der Zustand des Ports spielt nur eine untergeordnete Rolle. Das Anwortpaket des Zombies enthält die aktuelle IPID (2).

Für den eigentlichen Portscan schickt der Angreifer ein gespooftes SYN Paket an das Ziel (3). Als Quell-IP-Adresse setzt der Angreifer die IP-Adresse des Zombiehosts. Falls der Port offen ist, sendet das Ziel ein SYN|ACK Paket an den Zombie (4a). Da er keine Verbindung geöffnet hat, schickt der Zombie ein RST Paket an das Ziel (4a). Dieses Reset wird mit einer IPID + 1 an das Ziel gesendet. Ist der Port geschlossen, sendet das Ziel ein RST Paket an den Zombie (4b). Dieses Paket wird vom Zombie einfach ignoriert. Nun fragt der Angreifer in gleicher Weise wie zu Begin nach der aktuellen IPID (5). Ist die IPID um 2 gestiegen, ist der Port offen. Ist die IPID nur um 1 höher, ist der Port geschlossen (6).

Schematische Darsetellung

[Bearbeiten] UDP Scan

Ein direkter Scan von UDP Ports ist nicht möglich, da das Protokoll verbindungslos arbeitet. Über einen Umweg ist ein Scan trotzdem möglich. Dazu wird ein leeres UDP Paket an den entsprechenden Port geschickt. Kommt ebenfalls ein UDP-Paket zurück, ist der Port offen. Kommt keine Antwort, ist der Port entweder offen oder gefiltert. Wird eine "Port Unreachable" Fehlermeldung empfangen, ist der Port geschlossen. Auf den meisten Systemen ist die Ausgabe von ICMP-Fehlermeldungen gedrosselt, um einen Denial of Service Angriff zu verhindern. Daher sind UDP Scan meistens zeitaufwendig.

[Bearbeiten] Zusatzfunktionen

Die o. g. Zusatzfunktionen wie OS-Fingerprinting (Erkennen des Betriebssystems) und Dienst-Erkennung, für die z. B. der Portscanner nmap bekannt ist, sind streng genommen keine Portscans mehr und ihr Einsatz kann nicht nur aufgrund eines nicht ganz auszuschließenden Absturzrisikos beim Ziel problematisch sein.

[Bearbeiten] Rechtliche Aspekte

Die Legalität von Portscans ist nicht unumstritten, da sie als erste Instanz eines Eindringversuches gewertet werden können. In jedem Fall ist eine Benutzung auf eigenen Systemen legal. Unklarer ist die Rechtslage bei Portscans gegen fremde Systeme und Netzwerke. Da beispielsweise empfindliche Computer durch viele Verbindungsanfragen gestört werden können, kann dies als Angriff auf die Verfügbarkeit eines Systems gewertet und durch § 303b StGB (Computersabotage) bestraft werden. Das SANS-Institut bestätigt in einer Veröffentlichung ebenfalls den Zwiespalt von Portscans[1].

Portscanner werden jedoch aktuell nicht als Computerprogramm zum Ausspähen von Daten nach § 202c StGB (Hackerparagraf) angesehen, da sie keine Sicherheitsmechanismen umgehen oder Daten abfangen.

[Bearbeiten] Bekannte Portscanner

  • Nmap (Unix/Windows)
  • Superscan (Windows)
  • BluePortScan (Windows GUI/Kommandozeile)
  • Scanmetender Standard (Windows und GNU/Linux)
  • Unicornscan (Unix)
  • nhs nohack scanner (Windows)

[Bearbeiten] Externe Links

Weblinks zu Herstellerseiten bekannter Portscanner:

Online-Portscan für die eigene IP-Adresse:

[Bearbeiten] Siehe auch

[Bearbeiten] Einzelnachweise

  1. The Ethics and Legality of Port Scanning (Englisch)


aa - ab - af - ak - als - am - an - ang - ar - arc - as - ast - av - ay - az - ba - bar - bat_smg - bcl - be - be_x_old - bg - bh - bi - bm - bn - bo - bpy - br - bs - bug - bxr - ca - cbk_zam - cdo - ce - ceb - ch - cho - chr - chy - co - cr - crh - cs - csb - cu - cv - cy - da - de - diq - dsb - dv - dz - ee - el - eml - en - eo - es - et - eu - ext - fa - ff - fi - fiu_vro - fj - fo - fr - frp - fur - fy - ga - gan - gd - gl - glk - gn - got - gu - gv - ha - hak - haw - he - hi - hif - ho - hr - hsb - ht - hu - hy - hz - ia - id - ie - ig - ii - ik - ilo - io - is - it - iu - ja - jbo - jv - ka - kaa - kab - kg - ki - kj - kk - kl - km - kn - ko - kr - ks - ksh - ku - kv - kw - ky - la - lad - lb - lbe - lg - li - lij - lmo - ln - lo - lt - lv - map_bms - mdf - mg - mh - mi - mk - ml - mn - mo - mr - mt - mus - my - myv - mzn - na - nah - nap - nds - nds_nl - ne - new - ng - nl - nn - no - nov - nrm - nv - ny - oc - om - or - os - pa - pag - pam - pap - pdc - pi - pih - pl - pms - ps - pt - qu - quality - rm - rmy - rn - ro - roa_rup - roa_tara - ru - rw - sa - sah - sc - scn - sco - sd - se - sg - sh - si - simple - sk - sl - sm - sn - so - sr - srn - ss - st - stq - su - sv - sw - szl - ta - te - tet - tg - th - ti - tk - tl - tlh - tn - to - tpi - tr - ts - tt - tum - tw - ty - udm - ug - uk - ur - uz - ve - vec - vi - vls - vo - wa - war - wo - wuu - xal - xh - yi - yo - za - zea - zh - zh_classical - zh_min_nan - zh_yue - zu -