BlueScreen's Handout about Telnet

(Inzwischen schon auf "Version 1.1", THX to Xaitax und Cramdy :-)

Dieses Tut wurde in Wordpad bei einer Auflösung von 1024*786 geschrieben, also falls bei euch Probleme bei der Darstellung entstehen, würd ich sagen solltet ihr es auch unter Wordpad öffnen.

Ich hab dieses Tut in mehreren Etappen geschrieben, also kann es schon sein, daß in den einzelnen Abschnitten gewisse Sachen sich wiederholen, das ist BEABSICHTIGT, da nicht jeder alle Abschnitte liest.

Inhaltsangabe:

1.) Wie ist es zu diesem Tut gekommen ?

2.) Die Geschichte von Telnet

3.) Wofür ist Telnet eigentlich da ?

4.) Was tun wenn ich keinen Benutzernamen/Paßwort für dieses System habe ?

5.) Wie ihr legal an einen Telnet-Account kommt

6.) Einstellungen in Telnet und der erste Start

7.) Was kann man mit Telnet noch anfangen ?

8.) Telnet Zusammenfassung

9.) Telnet und Windows 95/98/ME

10.) Weiterführendes

 

1.) Wie ist es zu diesem Tut gekommen ?

In dem Forum unter www.hackeinsteiger-board.de kam es in letzter Zeit andeuernd wieder zu der Frage, wie Telnet funktioniert bzw. was man damit machen kann. Auf die Dauer isses etwas nervig das ganze immer wieder im Forum zu beantworten, also hab ich dieses Tut geschrieben um den Leuten mal zu erklären, wofür Telnet ursprünglich da war und was es für Möglichkeiten bietet.

2.) Die Geschichte von Telnet

Um herauszufinden, wofür Telnet überhaupt da war/da ist, sollten wir die Zeit mal um einige Jahre zurückdrehen. Zur Anfangszeit der Computernetzwerke hatte nicht einfach jeder einen Computer, der ein eigenes Betriebssystem geschweige denn eine eigene Festplatte hatte. Sondern das war die Zeit der Monster-Rechner, großen und (für diese Zeit) immens schnelle Maschinen, die eine Art zentralen Punkt in einem Netzwerk darstellten (das Konzept des zentralisierten Netzwerks).
Um mit dem Computer arbeiten zu können, benötigte man dann einen sogenannten Terminal, der in das Netzwerk dieses Riesencomputers angeschlossen wurde. Das sah dann ungefähr so aus:

 

Terminal
|
Terminal
------------------
Server
------------------
Terminal
|
Terminal



Alle Befehle, die man nun an diesem Terminal eingab, wurden direkt an den Server geschickt, dort bearbeitet, und nur die Bildschirmausgaben wurden zurück an das Terminal geschickt. Das Terminal selbst übernahm somit keine Rechenoperationen oder ähnliches, es war ein simples Ein-/Ausgabegerät.
Eines der beliebtesten Terminals war das sogenannte VT-100-Termninal (dieser Name wird uns später noch mal begegnen).

Diese Technik änderte sich erst mit der Erfindung und Erarbeitung des ersten dezentralen Netzwerks, dem ARPANET, also dem zukünftigen Internet.

Das ist ja alles schön und gut, aber was hat das mit Telnet zu tun ? Telnet ist ein sogenanntes Terminal-Emluationsprogramm, das eben dafür entwickelt wurde, sich wie ein Terminal zu verhalten - das, was eingegeben wird, wird gesendet, und das, was empfangen wird, wird unverzüglich dargestellt.
Denn auch heutzutage hat Telnet seine Daseins-Berechtigung - ob es jetzt zur Fernadministration eines Servers verwendet wird, oder um z.B. auf ein Unix-Betriebssystem von einem Windowsrechner aus Zugriff zu haben (um z.B. Exploits auszuführen *g*).


3.) Worfür ist Telnet eigentlich da ?

Hierbei muss man schon unterscheiden zwischen dem Telnet-Port/-Daemon/-Service/-Server, und dem Telnet-Client. OK, die meisten, die schon mal an einer Unix/Linux-Box gesessen sind, haben das Text-Login am Anfang gesehen, das sieht ungefähr so aus:

Welcome to Blabla-Linux

User:

Hier wird man aufgefordert, sich einzuloggen, damit man das System verwenden kann. Aber was hat das mit Telnet zu tun ? Telnet ist Protokoll, das schon seit Ewigkeiten verwendet wird. Es ist dafür da, daß man sich per Netzwerk oder per Internet in einen Linux/Unix-Rechner einloggen kann, um damit zu arbeiten (z.B. um Fernwartung vorzunehmen). Der Telnet-Daemon (oder wie auch immer man es noch nennen will), stellt unter Linux/Unix genau dieses Login auf dem TCP/IP-Port 23 bereit.

Bloß, was bringt es einem zu wissen daß es diesen Port gibt, wenn es keine Möglicheit gibt, sich damit zu verbinden ?

Für diesen Zweck gibt es den Telnet-Client, der bei fast allen "neueren" Systemen dabei ist, so auch bei Windows 95/98/ME/NT/2000 und warsch. allen zukünftigen Versionen. Mit diesem Client ist es einem möglich, sich mit einem Telnet-Daemon zu verbinden und so an ein Login zu kommen. Wenn man sich dann eingeloggt hat (dafür braucht man natürlich einen Benutzernamen und ein Paßwort), dann hat man die ganz normale Shell vor sich, die man auch vor sich hätte wenn man direkt an dem PC dran sitzen würde. Für die Leute, die nicht wissen was eine Shell ist (warscheinlich irgendwelche Windows-Benutzer *g*), vielleicht sagt euch das alte MS-DOS noch was ? Oder unter Start => Programme => Eingabeaufforderung habt ihr so ne Art "Windows-Shell" - bloß könnt ihr damit warsch. nicht viel anfangen, wenn ihr die MS-DOS Befehle nicht kennt.

 

4.) Was tun, wenn ihr keinen Benutzernamen und kein Paßwort für dieses System habt ?

Nun ja, dann würd ich sagen, Scheisse gelaufen. Wenn ihr nicht so viel davon versteht, dann könntet ihr versuchen per Bruteforce an einen gültigen Account gelangen - das kann aber ewig dauern. Ihr könntet aber auch versuchen, per Social Engineering an eine gültige Benutzernamen/Paßwortkombination zu kommen.
Die Leute, die sich etwas besser auskennen könnten versuchen, durch Exploits oder Buffer Overflows an eine Rootshell zu gelangen. Jedoch haben da andere Protokolle (z.B. SMTP) da schon mehr Erfolgsaussichten. Da die Paßwörter im Klartext übertragen werden, könntet ihr auch versuchen, in einem LAN einen Sniffer zu installieren, der dann die Paßwörter abfängt. Wie ihr seht gibt es schon ein paar Mittel, an eine Root-Shell zu kommen - jedoch kann man die meisten wohl nicht nur mit seinem Telnet-Client bewaffnet ausnutzen....

5.) Wie ihr legal an einen Telnet-Account kommt

Es gibt mehrere Anbieter im Internet, die sogenannte Shell Accounts oder Unix Shells anbieten - also Benutzernamen/Paßwort-Kombinationen für bestimmte Rechner. Diese Anbieter gibt es sowohl kostenlos als auch kostenpflichtig - wobei man bei den kostenpflichtigen natürlich den besseren Service/mehr Möglichkeiten hat. Hier sind ein paar Beispiele, wo ihr kostenlose Shell-Accounts herbekommt:

http://www.ductape.net/members/form.shtml

2 MB Quota, und keine Bots, und Sie müssen eine triftige Begründung

haben, warum Sie den Account brauchen.(Englisch)

http://www.grex.org/

IRC-Bots sind nicht erlaubt.(Englisch)

http://www.nyx.net/

Dieser Anbieter verlangt eine aufwendige Anmeldeprozedur. Auch hier sind

keine Bots erlaubt.(Englisch)

http://sdf.lonestar.org/

Unix Shell mit 5 MB Quota und Zugriff auf

viele Programme. Bot-Skripte sind nicht zugelassen. (Englisch)

Es kommt jedoch öfter vor, daß Anbieter einfach ihre Pforten schliessen oder neue Anbieter ihr Glück versuchen - deswegen kann ich nicht garantieren, daß die hier genannten Adressen funktionieren. Wenn ihr weitere Anbieter sucht, kann ich Suchmascheinen empfehlen, oder auch folgende seiten:

www.kostnixx.de

www.kostenlos.de

 

6. Einstellungen in Telnet & der erste Start

Telnet ist ja ganz schön und gut, aber es gibt da ein paar Dinge die ihr einstellen solltet. Um diese Einstellungen vorzunehmen solltet wir es erst mal starten:

Start=> Ausführen => Telnet

Ok, schon habt ihr das Telnet-Fenster offen. Ihr seht jetzt die vier Menüpunkte: Verbinden, Bearbeiten, Terminal und ?.
Unter "Verbinden" findet ihr die Optionen "Verbinden", "Trennen", "Beenden" und die letzten 10 Verbindungen, die ihr mit Telnet gemacht habt. Darauf gehen wir dann noch ein.

Unter Bearbeiten sind die altbekannten Optionen, "Kopieren", "Einfügen", "Alles markieren" und "Alles kopieren". Spricht eigentlich alles für sich selbst.

Unter "Terminal" könnt ihr Einstellungen machen (darauf gehen wir auch gleich ein), und ein Protokoll starten, daß alle Ein- und Ausgaben in einer Datei speichert (kann ab und zu ganz nützlich sein).
Naja, und unter "?" findet ihr die Hilfe. Is doch alles net so schwer, oder ?

Gut, als erstes gehen wir mal unter Terminal => Einstellungen.
Gehen wir hier mal die wichtigsten Optionen durch:

"Lokales Echo" - viele Server senden, wenn man was eingibt, das eingegebene Zeichen nicht zurück, also wird es in Telnet auch nicht angezeigt und somit weiss man oft nicht mehr,was man überhaupt eingegeben hat. Mit lokalem Echo jedoch zeigt er das Eingegebene schon ein. Komisch sieht das ganze dann aus, wenn man dann auf einen anderen Server geht und der die Zeichen zurückschickt, dann wiederholen sich logischerweise die Buchstaben, weil Telnet erst das lokale Echo hinschreibt und dann das, was der Server geschrieben hat.

"Puffergröße" - hier kann man den Puffer der Größe festlegen, der die Ausgaben des Servers anzeigt. Mit dem minimalen Puffer von 25 Zeichen zeigt das Telnet-Fenster nur die Ausgaben an, die im Fenster selbst Platz haben. Wenn man nun den Puffer vergrößert, dann kann man auch durch die vorherigen Ausgaben durchscrollen.

"Emulation" - Es gab nicht nur den Terminal mit dem Namen "VT-100" - es gab auch andere- z.B. den "VT-52". Falls die Zeichen im Telnet-Fenster nicht richtig ausgegeben werden, kann man hier umstellen, dann klappt es vielleicht besser.

"Schriftarten" und "Hintergrundfarbe" sagen wohl alles über sich selbst aus - aber ich würde hier erst mal angenehmere Farben wählen (ihr könnt es aber auch erst mal auf diesem Schwarz auf Weiß lassen). Aber allein schon um die Stiummung zu verbessern würd ich einfach mal "Blau auf Schwarz" oder "Grün auf Schwarz" empfehlen :-).

OK, hier habt ihr die Optionen - ihr stellt einfach mal alles nach eurem Geschmack ein, und dann gehen wir an die erste Verbindung...Wir werden bei dieser Verbindung nichts eingeben und nichts machen, aber damit ihr genau versteht wie das geht beschreib ich hier trotzdem wie ihr das macht.

Ihr klickt jetzt einfach mal auf "Verbindung", dann auf "Netzwerksystem".
Für unsere Beispielverbindung geben wir jetzt einfach mal den POP3-GMX-Server ein:

Hostname: pop.gmx.de

Für die späteren Verbindungen könnt ihr natürlich eine beliebig andere Adresse eingeben, aber auch IP-Adressen sind hier erlaubt.

So, jetzt kommen wir zum Port (auf Deutsch: Anschluss). Da geben wir den POP3-Port an:

Anschluss: 110

Anstatt die Nummer des Ports könnt ihr auch den Namen des Services eingeben, z.B. statt dem Port 110 auch "POP3", oder statt Port 23 den Namen - "Telnet", usw.

Terminaltyp lassen wir so, wie er ist, nämlich auf "vt100" - das is ja eh eine Art Standart.

Wenn wir jetzt auf OK drücken, dann erstellt Telnet sofort eine Verbindung. Es kann natürlich kurz dauern, bis eine Begrüßung des POP3-Servers in unserem Fenster erscheint - je nachdem, wie schnell die Verbindung zwischen dir und dem Server ist sowie wie beschäftigt der Server gerade ist. Falls zu viele Verbindungsanfragen von anderen Rechnern vorliegen (kommt eher selten vor), kann es natürlich auch sein, daß der Rechner eure Verbindung sofort abweist - dann müßt ihr es halt später noch mal probieren.

Auf die Dauer isses etwas nervig, erst in Telnet reinzugehen und dann von dort aus die Verbindung zu erstellen - es geht aber auch einfacher. Ihr startet einfach die Eingabeaufforderung oder "Start => Ausführen". Dort gebt ihr einfach ein "telnet pop.gmx.de pop3" - also "Telnet" für das Programm, dann den Host und zum Schluß den Port. Und schwuppdiwupp seid ihr mit dem Rechner verbunden.

7.) Was kann man mit Telnet noch anfangen ?

OK, Telnet ist ein Protokoll, in dem alles in Plaintext, also in Klartext übertragen wird. Es gibt noch ein paar andere Protokolle, die mit Plaintext arbeiten und auch von sich aus etwas zurücksenden, z.B. FTP, POP3, SMTP,FINGER und noch mehr. Wenn man was in Telnet eingibt, dann wird das alles zeichenweise gesendet, es gibt aber auch Protokolle, die mit den einzelnen Zeichen nichts anfangen können und deswegen nur auf ganze Befehlsketten reagieren - manche FTP-Daemons machen das zum Bleistift.

Jetzt aber weiter im Text. Verbinden wir uns mal einfach mit einem SMTP-Server, und zwar dem von "jabba.musin.de".

Das geht ganz einfach:

Start => Programme => Ausführen => "telnet jabba.musin.de smtp" eingeben, und dann noch mit Enter weggeschickt.

Der Telnet-Client öffnet sich, und zeigt dann nach ein paar Sekunden an:

220 jabba.fwe.pi.musin.de ESMTP Sendmail 8.9.3/8.9.3; Wed, 1 Mar 2000 19:42:59 +

0100 (CET)

So, das System stellt sich vor, sagt was für ein Sendmail drauf läuft (also was für ne Version - kann man dann z.B. auf der Suche nach Exploits brauchen), und wartet nun auf Eingaben von uns. Für das Thema wie man Fake-E-Mails schreibt gibt es eigene Tuts, also hören wir hier wieder auf und widmen uns wieder dem Telnet selbst. Auf "Verbindung" und dann "trennen" geklickt, und schon seid ihr wieder "disconnected" davon. Genauso wie wir es hier gemacht haben, könnt ihr euch auch mit anderen Rechnern verbinden bzw. auch mit anderen Ports.

 

8.) Telnet Zusammenfassung

Also, nochmal kurz gesagt: Der Telnet-Client ist ein Programm, mit dem man Plaintext versenden oder empfangen kann, um z.B. verschiedenen Daemons Befehle zu geben. Man kann damit aber auch noch erweiterte Dinge tun, z.B. Buffer Overflows produzieren oder DoS betreiben.

9.) Telnet und Windows 95/98/ME

Im Forum wurde oft gefragt, ob man mit Telnet in andere Windows-Rechner einbrechen kann, z.B. über den (zumeist offenen) NetBIOS Port 139. Ich muss euch leider enttäuschen, das ist definitiv NICHT möglich. Windows 95/98/ME sind keine Server-Betriebssysteme, deswegen gibt es in dieser Richtung fast keine Sicherheitslücken, um z.B. an Daten/Dokumente zu kommen, die auf der anderen Platte rumliegen.

10.) 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)

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

www.Hackeinsteiger-Board.de


(Copyright by Florian Hobelsberger / BlueScreen)