BlueScreen's Handout about "Information Gathering – Identify your target"


Inhaltsangabe:

1.) Information Gathering – Was ist das und wofür braucht man es ?

2.) Geschwindigkeit, Status und Entfernung des Ziels

3.) Informationen über Betriebssystem und Dienste sammeln

4.) Was für einen Provider benutzt das Ziel ?

5.) Was für ein Webserver und was für Module laufen dort ?

6.) Weitere Möglichkeiten für "Information Gathering"

7.) Weiterführendes

 

1.) Information Gathering – Was ist das und wofür braucht man es ?

Unter "Information Gathering" versteht man eigentlich nichts anderes als die Sammlung von Informationen über ein Zielsystem. Ob es sich um technische Informationen (Was für Dienste laufen? Was für ein Betriebssystem ?), um Informationen über das Umfeld (Welcher Provider ?) oder Firmen- oder Personengebundene Informationen (E-Mail Adressen ? Wer ist root ?) handelt, ist zunächst einmal egal.
Brauchbar ist es – nur um mal ein Beispiel aus dem legalen Bereich zu nennen – um Personen zu identifizieren.
Einer Bekannten von mir wurden Beleidigungen ins Gästebuch eingetragen. Ich habe mich dafür interessiert und mich daran gesetzt: Dank der IP-Adresse konnte ich Provider, Betriebssystem und diverse andere Dinge herausfinden, die ihr helfen könnten, diese Person ausfindig zu machen (Sie hat die Adresse nur an wenige weitergegeben, lange gibt’s diese Seite auch noch nicht, keine Indizierung in Suchmaschinen => mit Hilfe von Indizien ließe sich zurückverfolgen, wer es gewesen sein könnte).

2.) Geschwindigkeit, Status und Entfernung des Ziels

Fangen wir einfach mal mit den Dingen an, die wir in fast jedem Betriebssystem vorfinden. Die Befehle "ping" und "tracert" beziehungsweise "traceroute" dürften eigentlich fast jedem ein Begriff sein.

Der Befehl "ping" sendet ein kleines ICMP-Datenpaket ("Ping Request"), das (wenn es nicht durch eine Firewall geblockt wird) automatisch von dem "angepingten" Rechner beantwortet wird. Dabei wird auch die Zeit gemessen, die seit dem losschicken des Pakets bis zum zurückkehren vergangen ist.

Probieren wir das doch einfach mal:

--------------------- Beispiel Ping --------------

C:\>ping a1as18-p163.mch.tli.de

Ping a1as18-p163.mch.tli.de [195.252.169.163] mit 32 Bytes Daten:

Antwort von 195.252.169.163: Bytes=32 Zeit=181ms TTL=57
Antwort von 195.252.169.163: Bytes=32 Zeit=180ms TTL=57
Antwort von 195.252.169.163: Bytes=32 Zeit=170ms TTL=57
Antwort von 195.252.169.163: Bytes=32 Zeit=170ms TTL=57

Ping-Statistik für 195.252.169.163:

Pakete: Gesendet = 4, Empfangen = 4, Verloren = 0 (0% Verlust),
Ca. Zeitangaben in Millisek.:
Minimum = 170ms, Maximum = 181ms, Mittelwert = 175ms

C:\>

-------------------Ende Beispiel---------------------

Ich habe hier für das Beispiel eine dynamische IP-Adresse gewählt. Wenn ihr das auch ausprobieren wollt, solltet ihr vielleicht eher ein "ping
www.seitz-pc.de" oder ähnliches ausprobieren, also einen Rechnernamen, der sicher dauernd online ist.

Aber was hat uns das Spielchen jetzt gebracht ?
Nun, wir haben den Hostname angepingt (ein eindeutiger Name im Internet, muss genauso eindeutig sein wie die IP-Adresse). Wir haben eine Antwort bekommen von
195.252.169.163, d.h. dass die IP-Adresse von " a1as18-p163.mch.tli.de" 195.252.169.163 ist. Da die Zeit die das Paket hin und zurück gebraucht hat nicht sonderlich hoch ist (zwischen 170 und 181 ms), können wir eigentlich davon ausgehen, dass das Zielsystem nicht so weit weg ist (z.B. wahrscheinlich nicht in Amerika) beziehungsweise dass eine einigermaßen schnelle Leitung dorthin besteht. Gehen wir davon aus, dass das System selbst "nur" mit ISDN online ist, sehen wir, dass der Rechner im Moment nicht voll ausgelastet ist (wäre dies der Fall wären die Zeiten höher oder ein paar der Pings wären "verloren gegangen", d.h. nicht beantwortet worden).

Klingt nicht schlecht, aber wollen wir nicht wissen wie unser Paket eigentlich dorthin gelangt ? Über welche Städte ? Dafür kommt nun das Tool "tracert" ins Spiel:

------------------------- Beispiel tracert ---------------------------

C:\>tracert a1as18-p163.mch.tli.de


Routenverfolgung zu a1as18-p163.mch.tli.de [195.252.169.163] über maximal 30 Ab
schnitte:


1 110 ms 110 ms 100 ms 193.158.131.185
2 111 ms 110 ms 110 ms 193.158.131.186
3 100 ms 100 ms 110 ms M-EB1.M.DE.net.dtag.de [62.154.10.151]
4 120 ms 120 ms 120 ms HH-gw2.HH.NET.DTAG.DE [212.185.9.193]
5 120 ms 130 ms 110 ms S6-1-1.hhrt1.tli.de [195.252.129.137]
6 140 ms 141 ms 140 ms S5-0-0.frart01.tli.de [195.252.129.134]
7 150 ms 151 ms 160 ms S6-1-0.mchrt01.tli.de [195.252.129.54]
8 141 ms 150 ms 140 ms a1as18-f0.mch.tli.de [195.252.160.146]
9 300 ms 300 ms 411 ms a1as18-p163.mch.tli.de [195.252.169.163]


Ablaufverfolgung beendet.

C:\>

--------------------------- Ende Beispiel------------------

Nun, zuerst geht unser Signal über zwei sog. "Nodes" ohne "Hostname", d.h. sie besitzen nur IP-Adressen. Danach befinden wir uns immer noch im Netz der DTAG, der Deutschen Telekom AG, und zwar anscheinend in München (M-EB1.M.DE.net.dtag.de). Danach geht das Signal anscheinend nach Hamburg (HH-gw2.HH.NET.DTAG.DE), wo anscheinend eine Schnittstelle zwischen der Telekom und dem Provider "TLI" (bis jetzt wissen wir noch nicht, was das ist ! Dazu kommen wir noch) besteht. Von dort geht es vielleicht nach Frankfurt (S5-0-0.frart01.tli.de) und wieder zurück nach München.

Ihr seht hier in diesem kurzen Textabschnitt eine Menge "Vielleicht" und "Anscheinend":
Oftmals kann man aus den Namen der "Nodes" nur erraten WO sie stehen. Ich hatte jetzt auch keine sonderlich große Lust, das genau herauszufinden, wenn das jemand machen will werde ich das hier gerne dann noch einsetzen.

Das ganze ist etwas unkomfortabel, es gibt das ganze aber auch noch graphisch. Die Software "Neotrace" veranschaulicht zum Beispiel auf einer Landkarte, wo die Datenpakete entlangwandern.
Da TCP/IP die Routen von selbst wählt kann man sagen, dass das was man mit "tracert" macht nur eine Momentaufnahme ist. Solange das die schnellste Verbindung ist wird sie wohl auch weiter gewählt werden, ist eine andere Verbindung schneller wechselt sich die Route automatisch.

3.) Informationen über Betriebssystem und Dienste sammeln

So, wir haben jetzt das Umfeld des Ziels ein bißchen erkundet und gehen nun etwas mehr ins Detail. Zunächst wollen wir einmal wissen, was für ein Betriebssystem das Ziel benutzt. Es gibt mehrere Programme die das für uns machen, aber "nmap" dürfte wohl eines der populärsten sein.
"nmap" versucht durch ungewöhnliche TCP-Pakete und die Antworten darauf vom Ziel das Betriebssystem zu bestimmen.:

--------------------- Beginn Beispiel nmap ------------------------


C:\>nmap -O 195.252.169.163


Starting nmap V. 2.54BETA30 (
www.insecure.org/nmap/ )

Interesting ports on a1as18-p163.mch.tli.de (195.252.169.163):


(The 1547 ports scanned but not shown below are in state: closed)
Port State Service
139/tcp open netbios-ssn


Remote operating system guess: Windows 2000 Professional, Build 2128
Nmap run completed -- 1 IP address (1 host up) scanned in 85 seconds

C:\>

--------------------------------- Ende Beispiel -----------------------

Gut, dieses Beispiel ist wunderbar für den "TCP OS Fingerprint", da es uns ein ziemlich genaues Ergebnis liefert: "Windows 2000 Professional, Build 2128". Allerdings ist nmap primär ein Portscanner mit diversen "Stealth"-Möglichkeiten, mit denen man versuchen kann seine Portscans zu verdecken.

Mit Portscannern ist es möglich zu überprüfen, was für Dienste ein Server anbietet, z.B. ob er einen Webserver am laufen hat, einen HTTP-Server oder diverse andere Dinge.
Ich verwende für mein hiesiges Beispiel jedoch nicht "nmap" sondern einen Scanner namens "Superscan". Außerdem habe ich mir dafür ein anderes Ziel ausgesucht:

_---------------------- Beginn Beispiel Portscan -------------------------

* + ***.***.***.***

|___ 21 ftp

|___ 220 10004.***.de FTP server (Version wu-2.6.1(1) Tue Oct 3 14:29:19 CEST 2000) ready...

|___ 22 ssh

|___ SSH-1.99-OpenSSH_2.2.0p1.

|___ 23 telnet

|___ ..... ..#..'

|___ 25 smtp

|___ 220 10004.***.de ESMTP Sendmail 8.11.4/8.11.0; Fri, 26 Oct 2001 19:36:16 +0200..

|___ 79 finger

|___ f

|___ 80 http

|___ <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">..<html>.<head>..<title>***.org</title>.</head>.<style type="

|___ 110 pop3

|___ +OK POP3 10004.***.de v7.64 server ready..

|___ 443 https

|___ 587

|___ 220 10004.***.de ESMTP Sendmail 8.11.4/8.11.0; Fri, 26 Oct 2001 19:36:32 +0200..

|___ 901

|___ 3306

|___ 1....3.23.23-beta-log.....D&/ZW'Zn., .................

_----------------------- Ende Beispiel ---------------------

Das hier ist die Protokolldatei, die mir Superscan ausgeben hat. Wie wir sehen existieren auf diesem Server ein FTP-, HTTP-, SMTP-, POP3-, und HTTPS-Server. Des weiteren laufen dort noch "finger", ein Dienst der Informationen über Benutzer bietet sowie SSH und telnet, zwei Dienste zum "einloggen via Netzwerk", um dann an einer normalen "Shell" zu arbeiten.

Dieses System kann man auch ungefähr klassifizieren, ohne einen OS Fingerprint durchführen zu müssen: Sendmail, telnet und OpenSSH sind normalerweise Linux/Unix-tyisch, d.h. mit sehr hoher Wahrscheinlichkeit haben wir hier KEIN Mircosoft-Betriebssystem vor uns.

4.) Was für einen Provider benutzt das Ziel ?

Jetzt interessiert uns noch, was für ein Provider dieses ominöse "TLI" eigentlich ist. Also gehen wir mal zu der netten Seite " http://www.uwhois.com ", eine WHOIS-Datenbank die die anderen WHOIS-Server gleich mitabfragt. Sehr praktisch. Also geben wir oben einfach mal in das Feld hinter "Search" die IP-Adresse von oben ein: "195.252.169.163" und drücken Enter.

Nach ein paar Sekunden haben wir das Ergebnis:

--------------- Beispiel UWHOIS -----------------


% This is the RIPE Whois server.
% The objects are in RPSL format.
% Please visit http://
www.ripe.net/rpsl for more information.
% Rights restricted by copyright.
% See http://
www.ripe.net/ripencc/pub-services/db/copyright.html

inetnum:
195.252.160.0 - 195.252.171.255


netname: POPSITE-MUENCHEN
descr: Talkline GmbH & Co. KG
country: DE
admin-c: NT714-RIPE
tech-c: TLIP1-RIPE
rev-srv: ns.tli.de
rev-srv: ns2.tli.de
status: ASSIGNED PA
notify:
ripe-notify@tli.de
mnt-by: TALKLINE-MNT
mnt-lower: TALKLINE-MNT
changed:
willert@tli.de 19980911
changed:
willert@tli.de 19981029
changed:
bobby@tli.de 19981103
changed:
admin-c@tli.de 20000216
changed:
mike@tli.de 20001004
changed:
micha@tli.de 20010118
changed:
micha@tli.de 20010123
source: RIPE

route:
195.252.128.0/17

descr: Talkline GmbH & Co. KG
origin: AS8650
mnt-by: TALKLINE-MNT
changed:
willert@tli.de 19980817
changed:
micha@tli.de 20010123
source: RIPE

role: Talkine IP-oper
address: Talkline GmbH & Co. KG
address: GB Internet
address: Suederstrasse 73
address: D-20097 Hamburg
address: Germany
e-mail:
admin-c@tli.de
trouble: ***********************************************************
trouble: * ABUSE CONTACT:
abuse@tli.de IN CASE OF HACK ATTACKS, *
trouble: * ILLEGAL ACTIVITY, VIOLATION, SCANS, PROBES, SPAM, ETC. *
trouble: ***********************************************************
admin-c: NT714-RIPE
tech-c: NT714-RIPE
nic-hdl: TLIP1-RIPE
notify:
ip-oper@tli.de
mnt-by: TALKLINE-MNT
changed:
admin-c@tli.de 20000216
changed:
micha@tli.de 20000321
changed:
micha@tli.de 20001123
changed:
micha@tli.de 20010115
changed:
micha@tli.de 20010118
source: RIPE

person: Network Team
address: Talkline GmbH & Co. KG
address: Suederstrasse 73
address: D-20097 Hamburg
address: Germany
phone: +49 4121 41-5610
fax-no: +49 4121 41-5664
e-mail:
admin-c@tli.de
nic-hdl: NT714-RIPE
remarks: ***********************************************************
remarks: * ABUSE CONTACT:
abuse@tli.de IN CASE OF HACK ATTACKS, *
remarks: * ILLEGAL ACTIVITY, VIOLATION, SCANS, PROBES, SPAM, ETC. *
remarks: ***********************************************************
mnt-by: TALKLINE-MNT
changed:
net@tli.de 20000212
changed:
net@tli.de 20000216
changed:
micha@tli.de 20001123
changed:
micha@tli.de 20010115
changed:
micha@tli.de 20010118
source: RIPE

----------------------------- Ende Beispiel ------------------

Ahh, TLI steht für Talkline.... Ging doch ganz einfach, oder ? ;)

5.) Was für ein Webserver und was für Module laufen dort ?

Kehren wir noch mal zu dem System zurück, bei dem wir den Portscan durchgeführt haben. Wir wollen jetzt wissen, was für ein HTTP-Server dort installiert ist und was er für Module benutzt. Dies erledigt ein nettes PERL-Skript namens "nikto.pl" für mich.... netterweise fängt es auch gleich an den Webserver auf Sicherheitslücken zu untersuchen. Da mir das zu lange dauert hab ich das aber gleich abgebrochen....

---------------- Beispiel nikto.pl --------------------

H:\attack>nikto.pl -host www.*****.de

-------------------------------------------------------------------------------

- Nikto v1.018

-------------------------------------------------------------------------------

+ Target IP: ***.***.***.***

+ Target Hostname: www.*****.de

+ Target Port: 80

- Date: Thu Mar 7 18:51:13 2002

- Scan is dependent on "Server:" string which can be faked, use -g to override

-------------------------------------------------------------------------------

+ Server: Apache/1.3.17 (Unix) (SuSE/Linux) PHP/4.0.4pl1

+ Apache/1.3.17 appears to be outdated (current is at least Apache/1.3.22)

+ PHP/4.0.4pl1 appears to be outdated (current is at least PHP/4.0.6)

^C

H:\attack>

---------------- Ende Beispiel ----------------

Wir sehen also, dass hier ein Apache 1.3.17 auf SuSE Linux läuft, bei dem PHP/4.0.4p11 aktiviert ist.
Freundlicherweise weißt uns nikto.pl auch gleich darauf hin, dass die Dienste wohl ein bißchen veraltet sind....

6.) Weitere Möglichkeiten für "Information Gathering"

Ich gebe hier nur ein paar Anhaltspunkte, herausfinden oder nachfragen WIE das genau funktioniert müßt ihr selbst. Informationen findet man fast überall. Ob man nun bei Internic.net eine WHOIS-Anfrage macht (und damit an die Daten der Firma / Person der eine Domain gehört kommt), mit "finger" Informationen sammelt, oder mit dem SMTP "vrfy"-Kommando ist eigentlich egal.
Viele Dienste unterstützen Möglichkeiten, Informationen zu sammeln.
Es geht aber auch sehr einfach: Wenn auf dem Rechner ein Webserver läuft.... warum schaut ihr nicht einfach mal auf die Webseite drauf, die dort liegt ? ;) Viele Infos werden dort bereits genannt.

7.) Weiterführendes

Für weitere Infos darüber und anderes empfehle ich folgende Seiten:

http://www.it-checkpoint.net/

BlueScreen's Home

http://www.hackeinsteiger.de/

http://www.hackeinsteiger-board.de/

http://www.Lobnan.de/

www.google.de

Falls ihr mir Anregungen oder Kritik o.ä. hinterlassen wollt, dann tut das bitte auf

www.Hackeinsteiger-Board.de


(Copyright by Florian Hobelsberger / BlueScreen)

NT>

Falls ihr mir Anregungen oder Kritik o.ä. hinterlassen wollt, dann tut das bitte auf

www.Hackeinsteiger-Board.de


(Copyright by Florian Hobelsberger / BlueScreen)