RUNNINGSERVER.com
StartseiteDownloadThE lAb!LinksFaqImpressumDatenschutz
GO!
Men√ľ:

Interessantes
The Lab - Das Mikorwellenmessgerät The Lab - EL84 Roehrenverstaerker The Lab - EKG-Gerät The Lab - Mikrowelle schlachten
The Lab - pdp8-Panel
The Lab - Röntgenstrahlung
The Lab - Omi¬īs Teletype
The Lab - MBS128
The Lab - Das Datenklo
The Lab - Teleschirm 101
The Lab - Imag. Machine

N√ľtzliches
The Lab - Serielles Terminal
The Lab - Röhrenmonitor kalibrieren
The Lab - Der Infrarot Repeater
The Lab - Der Infrarot Repeater 2
The Lab - SGI Adapter
The Lab - Dornroeßchenschaltung
The Lab - Siemens P1 entsperren
The Lab - Die Wetterstation
The Lab - Die Wetterstation 2.0
The Lab - Kolophoniumkomb√ľse

Chipkarten
The Lab - ChicardLab
The Lab - DeveloperCard
The Lab - geekKarte
The Lab - Xcos
The Lab - Magnetkarten
The Lab - rfidLab

Platinenfertigung:
The Lab - Platinen belichten
The Lab - Platinen √Ątzen
The Lab - SMD Löten

DEC:
The Lab - Vax Adapter
The Lab - QBus Vorlage
The Lab - QBus Vorlage
The Lab - pdp11tool

Laser:
The Lab - Laser
The Lab - Laser Leistungsbegrenzer
The Lab - Laser Spiegelhalter
The Lab - Laser Strahlschalter
The Lab - ALC60 Gold Control
The Lab - Vectorchrom
The Lab - Diode-Controller
The Lab - ilda2signleened

Bildschirmtext:
The Lab - Bildschirmtrix
The Lab - DBT-03 Modem
The Lab - miniBTX
The Lab - mikroPAD

Funk:
The Lab - Usrp external Clock
The Lab - Lband Empfang
Info:
In meiner Freizeit beschäftige ich mich viel mit Elektronik, Technik und Geräten. Hier auf meinen Laborseiten stelle ich die Ergebnisse meine Projekte vor.

Wenn Sie noch Fragen zu den hier gezeigten Dingen haben schreiben sie mir einfach eine Email. Diese Seiten befinden sich zur Zeit noch im Aufbau (Wird auch niemals fertig werden, keine Sorge...)

Bitte Beachten Sie auch die Hindweise in Faq und Impressum bevor Sie sich die Programme herunterladen.

Achtung, die hier gezeigten Experimente und Basteleien sind lebensgef√§hrlich und richten sich ausschlie√ülich an Fachleute mit entsprechender Sachkenntnis. Das hier gezeigte erfordert einen sicheren Umgang mit Hochspannung, Strom, Lasern und Giftstoffen. Die Warnung ist ernst gemeint und ich hafte weder f√ľr Personensch√§den oder Sachsch√§den!
The Lab - das dbt03

Das dbt03:
Klicken Sie auf das Bild um es zu vergr√∂√üern Um auf das BTX-Netz der Bundespost zugreifen zu k√∂nnen ben√∂tigte man eine spezielle Anschlussbox. Die Post nannte das Ger√§t "DBT-03" Was die Bezeichnung genau bedeutet ist nicht √ľberliefert. Das dbt03 war im Grunde nichts anderes als ein Modem des V.23 Standarts. Die √úbertragungsgeschwindigkeit betr√§gt 1200 Baud von der Zentrale zum Teilnehmer und 75 Baud vom Teilnehmer zur Zentrale. Allerdings war das Modem kein richtiges, jedenfalls kein Modem das f√ľr andere Dinge au√üer BTX brauchbar gewesen w√§re. Man konnte damit nicht einfach eine beliebige Nummer anw√§hlen sondern nur die fest einprogramierten Anwahlnummern der BTX-Zentrale. Einen Luxus wie AT-Kommandos kannte das dbt03 nicht. Eine Anwahl funktionierte in etwa so: Das Terminal teilte sein W√§hlbed√ľrfnis mit in dem es einen I/O Pin auf High-Pegel zog. Dann fing das Modem an zu w√§hlen und tauschte eine geheime Hardwarekennung aus. Erst wenn die Kennung ausgetauscht war und damit das Login in der BTX-Zentrale erfolgt war folgte die eigentliche Benutzeridentifikation in form einer normalen BTX-Seite bei der dann das Kennwort eingegeben wurde. Im Netz findet man viel oberfl√§chliche Informationen √ľber die Funktionsweise des dbt03. Wir wollen hier einmal hinter die Kulissen schauen und ein par Dinge aufarbeiten bisher viel zu kurz gekommen sind. Au√üerdem ist das ganze eine sch√∂ne √úbung aus dem Bereich Reverse-engeneering.

√Ėffnen verboten:
Klicken Sie auf das Bild um es zu vergr√∂√üern Da wie schon erw√§hnt die Hardwarekennung oder auch Anschlusskennung im Modem gespeichert war, war es strengstens verboten das Modem zu √∂ffnen. Auf der Vorderseite stand eine deutliche Warnung: "Unberechtigtes √Ėffnen wird strafrechtlich verfolgt" Die Geh√§use waren sogar richtig verblompt. Neue Ger√§te hatten eine gelbe Plombe und instand gesetzte eine blaue. Nat√ľrlich war hin und wieder die Neugier einfach gr√∂√üer als die Angst vor Strafen. Die Standartausrede war √ľbrigens das das Geh√§use des Modems durch einen herabfallen Gummibaum zerst√∂rt worden sei. Heute ist die Post Geschichte und wir k√∂nnen, ohne Strafen bef√ľrchten zu m√ľssen, das Geh√§use √∂ffnen. Genau das werden wir jetzt tun: Die Plombe sollte m√∂glichst erhalten bleiben und mit etwas Fingerspitzengef√ľhl schafft man das auch. Das Geh√§use hat an den Seiten keine Klickmotage√§hnlichen Einrastungen. Lediglich hinten auf der Seite wo sich der Testknopf befindet sind zwei Einrastungen. Diese kann man leicht mit einem Plektum oder vergleichbarem zum ausrasten bringen. Dann kann man das Geh√§use an der Stelle auseinanderbiegen und die Plombe mit einem langen Schraubenzieher von innen herausdr√ľcken. Man muss allerdings sehr aufpassen da die Blombe schell bricht da sie aus einem spr√∂den Kunststoff gefertigt ist. Hat man die Blombe drau√üen kann man die kleine Verriegelung mit etwas spitzem in Richtung Testknopf drucken und den Deckel abnehmen. Die Platine ist ebenfalls im Geh√§use verklickt, wir k√∂nnen sie leicht herausnehmen.

Platinenlesen:
Klicken Sie auf das Bild um es zu vergr√∂√üern Nun wollen wir uns die Platine einmal genauer ansehen und darin lesen: Die Platine ist aus Hartpapier, einseitig. Auf der R√ľckseite vollverzinnt - kein L√∂tstopplack. Auf der R√ľckseite finden wir die Stempel die den Abschluss eines Produktionsschrittes markieren. Die Platine ist mit Kabeln gepatcht. Der Schalter der zwischen den zwei festen Anwahlnummern hin und herschaltet ist mit Kabeln angeschlossen und mit Hei√ükleber auf die Platine geklebt Dann gibt es noch eine kurze Drahtbr√ľcke. Folgt man der betreffenen Leiterbahn stellt man fest das sie absichtlich unterbrochen wurde. Offenbar wurde hier ein Layoutfehler korrigiert. Das betreffende Modem scheint also aus einer fr√ľhen Serie. Reversengeneering ist ein bisschen wie eine Schnitzeljagt. Wir wollen wissen wo die Hardwarekennung herkommt und noch mehr, wir wollen sie auslesen. Wir lassen den Blick √ľber die Platine schweifen. Halb unter dem Lautsprecher versteckt ist ein gro√üer IC mit der Bezeichnung TMS1000N. Internetrechere ergibt das es sich um einen 4-Bit Mikrocontroller handelt - ein m√∂glicher Ort f√ľr die Hardwarekennung. Allerdings ist es aus Produktionsslogistischen Gr√ľnden schlecht ver√§nderliche Daten mit im Programmspeicher eines Mikrocontroller unzerzubringen. Zumal es bei vielen Herstellern eine beliebte Dienstleistung ist die Mikrocontroller schon bei der Produktion mit der Firmware des Kunden zu bespielen. Wenn das Firmwareimage jedes mal ein anderes ist muss der Programmierprozess f√ľr jeden einzelnen Controller mit einem neu gepatchten Binary erfolgen. Manchmal ist es einfacher Dinge in einem externen Speichermedium unterzubringen. Wir lassen also den Blick weiter nach programmierbaren Bausteinen schweifen. Direkt neben dem Controller befindet sich ein verd√§chtiger Baustein mit einer aufgeklebt Nummer. Die Nummer ist zehnstellig, ob es wohl die gesuchte Hardwarekennung ist? Wir ziehen den Aufkleber ab und finden einen TBP18SA-030 vor. Das ist ein OTP-Eprom, 8-Bit breit, 32 tief. Damit k√∂nnen jetzt mit gro√üer Wahrscheinlichkeit sagen das dieser Baustein wom√∂glich die Hardwarekennung enth√§lt. Und wir k√∂nnen noch mehr sehen: Laut Datenblatt sind Pin 10-14 (Man z√§hlt die Pins U-F√∂rmig wenn die Kerbe oben ist) die Adressleitungen. Pin 10 ist A0 und Pin 14 ist A4. Pin 14 ist durch die Drahtbr√ľcke an VCC. Das schr√§nkt den Adressraum in dem g√ľltige Daten stehen schon mal gewaltig ein, es gibt jetzt nur noch 16 g√ľltige Adressen. Weiter sehen wir das die oberen 4 Datenleitungen (Pin 5,6,7 und 9) nicht angeschlossen sind. Das bedeutet das nur die unteren 4 Bit des Roms genutzt werden. Das macht auch einen gewissen Sinn, denn der Controller ist eine 4-Bit Maschine und 4 Bit reichen auch allemal aus um Zahlen von 1-10 zu codieren. Man denke an die BCD-Codierung. Es ist etwas Abenteuerlich die letzen 4 verbliebenden Datenleitungen zu verfolgen, aber √ľber Umwege landen sie letztendlich wieder beim Controller. Wahrscheinlich sind die I/O Pins des Controllers mehrfach belegt - aber das kann der angehende reverse Engeneer als Hausaufgabe herausfinden. Man sieht also, man kann durch scharfes hinsehen schon viel √ľber eine Hardware in Erfahrung bringen. Bis hier hin haben wir noch nicht ein Messger√§t benutzt und wissen schon eine Menge

Auslesen der Hardwarekennung:
Klicken Sie auf das Bild um es zu vergr√∂√üern Die Kennung war geheim. Davon erhoffte man sich einen Sicherheitsvorteil, der allerdings dadurch wieder zu nichte gemacht wurde das die Kennung im Klartext √ľbertragen wurde. Man brauchte nur die T√∂ne in der Telefonleitung mitzu√∂ren und konnte daraus problemlos die Kennung rekonstruieren. Der einzige Abh√∂rschutz war das die Kennung selbst mit 7e1 anstat 8n1 √ľbertragen wurde. Die Frames sind also gleich lang, soetwas sieht auf den ersten Blick so aus als sein eine Verschl√ľsselung im Spiel. Dieses Konzept nennt man in der Fachwelt auch "Security by Obscurity" Allerdings hat die Zeit gezeigt das dieser Ansatz nicht funktioniert, dennoch kommt es hin und wieder vor das man versucht durch Taschenspielertricks und Geheimhaltung Sicherheit zu erzeugen. Im √ľbrigen w√§re im Falle von BTX ein brauchbares Sicherheitslevel erst mit einer Ende-Ende Verschl√ľsselung eingetreten - damals auf Grund mangelnder Rechenleistung fast unm√∂glich. Wir werden in unserem Fall einen ungew√∂hnlichen Weg gehen, wir lesen die Hardwarekennung einfach manuell, das hei√üt ohne einen speziellen Eprombrenner oder √§hnliches zu benutzen, aus. Dazu l√∂ten wir das Eprom von der Platine und stecken es auf ein Breadboard. Da wir nur 16 a 4-Bit mit 4-Bit Worten √ľberpr√ľfen m√ľssen legen wir jede einzelne Adresse mit Steckdr√§ten manuell an und lesen das Ergebnis Bit f√ľr Bit mit einem Logiktester ab. Es ist √ľberliefert das die Hardwarekennung eine 12 stellige Nummer gewesen ist und tats√§chlich, wir erhalten eine 12 stellige Zahl mit f√ľhrenden Nullen: 000001A191A51A923 (Die letzte Zahl befl√ľgelt unsere Phantasie besonders ;-) Um auf Nummer sicher zu gehen m√ľsste man das Rom jetzt wieder einbauen, einen Linienstrom in das Modem einpr√§gen und dem Modem eine erfolgreiche Einwahl vort√§uschen. Dann m√ľsste man mit einem Audio-Spektrumanalyser (z.B.: Baudline) die Hardwarekennung direkt sehen k√∂nnen.

Protokoll:
Klicken Sie auf das Bild um es zu vergr√∂√üern Im Hinblick auf eine Implementation die mit alten BTX-Terminals interagiert und dort BTX-Seiten anzeigt war das Kommunikationsprotokoll zwischen dbt03 und BTX-Terminal von gro√üer Wichtigkeit. Die Hackerbibel l√§sst sich knapp √ľber die Signale des dbt03 in schlecht formulierten Textbrocken aus. (Die original POST-Doku ist √ľbrigens auch nicht besser!) Das an sich recht einfach geartete Protokoll des DBT-03 ist in der Hackerbibel leider etwas verwirrend dargestellt. Aber schauen wir es uns einfach an: Zun√§chst muss gesagt werden das der Ausgang des Modem sich wie ein Open-collector Ausgang verh√§lt. Damit man Daten vom Modem bekommt muss man diesen mit einem 10k Widerstand auf auf high-pegel ziehen. Gestartet wird das Modem in dem man die Start-Leitung (pin-7) auf High zieht. Die ED (Empfangsleitung 1200Baud, 8n1, pin-5) geht dann auch sofort auf (hochohmig) high. Dieser Zustand bleibt etwa 3 Sekunden erhalten bis das Modem nach 3 Sekunden abhebt. Und jetzt kommt etwas wirklich pfiffiges: Der W√§hlton der jetzt vom Modem empfangen wird, wird mit in Form eines Rechteckssignals am ED-Port ausgegeben. Die Periodendauer entspricht den normalen 425Hz, also ca. 2,35ms. Nur halt als Rechteckssignal. Das BTX-Terminal h√∂rt sozusagen den W√§hlton mit und erkennt so ob die Leitung frei ist. H√∂rt der W√§hlton auf wei√ü das Terminal das der Anwahlprozess begonnen hat. Nach der Anwahl h√∂rt das Terminal den Klingelton. Jetzt ist klar: Gleich werden die ersten Daten eintreffen. Hebt die BTX-Zentrale ab, sendet sie einen 1300Hz Tr√§gerton. Dieser kommt zun√§chst auch beim Terminal an. Hat das Modem den Tr√§ger erkannt, tauscht es noch schnell die geheime Benuzerkennung aus und zieht die SD-Leitung dann auf Masse. Jetzt ist alles bereit und es k√∂nnen Daten an das Terminal gesendet werden. √úbertragen werden die Daten mit invertiertem Uart-Pegel. Invertiert bedeutet das der Ruhezustand der Leitung Low und nicht High, wie man das eigentlich von Uart-Pegeln gewohnt ist, die mit TTL-Pegeln abgewickelt werden. Interessanterweise ist es beim R√ľckkanal genau umgekehrt, hier finden wir ein gew√∂hnliches TTL-Uart vor. Zum besseren Verst√§ndnis habe ich mal ein Diagramm von dem Protokoll erstellt. Man kann das ganze auch selbst beobachten: H√§ngt man ein dbt03 ganz normal an die Telefoneitung kann man auf einem Oszilloskop die H√∂rt√∂ne der Telefonleitung sehen. Leider kann man heute nicht mehr den kompletten Einwahlvorgang beobachten da es BTX nicht mehr gibt. Fairerweise muss man auch erw√§hnen das es in der Hackerbibel auch hilfreiches steht. Zum beispiel ist dort ausformuliert wie man ein String abgefasst werden muss der auf dem Terminal dargestellt werden soll. Nur wurde vergessen zu dem CRC16 Polynom zu ew√§hnen das der inital-value 0x0000 entspricht und das das niderwertige Byte zuerst √ľbertragen wird. Auch das die Kommunikation nicht in RS232 sondern TTL abgewickelt wird ist schlicht unterschlagen worden. Im √ľbrigen hat meine Erfahrung gezeigt das man sich bei BTX die komplette Sicherrungsschicht auch schenken kann. Es reicht einfach Zeichen an das Terminal zu senden. Das Bild zeigt √ľbrigens ein BTX-Terminal (BtxTV von Siemens) das eine von einem Mikrocontroller (miniBTX) ausgegebene Testseite anzeigt.

Fazit:
Klicken Sie auf das Bild um es zu vergr√∂√üern Das manuelle auslesen der Hardwarekennung hat Spa√ü gemacht. Es war interessant mal nachgeschaut zu haben und den angenehmen Schauer genie√üen zu k√∂nnen der einen √ľberkommt wenn man daran denkt das man vor nicht allzu langer Zeit f√ľr soetwas h√§tte ins Gef√§ngnis kommen k√∂nnen. Von gro√üer Wichtigkeit war jedoch die Protokollanalyse zwischen Terminal und Modem um ein virtuelles dbt03 in einem Mikrocontroller implementieren zu k√∂nnen. Bemerkenswert ist √ľbrigens das das Modem mit aus dem Telefonnetz mit Strom versorgt wird, das bedeutet das es nicht mehr als 60mA verbrauchen durfte - das ist schon eine technische Leistung.

de.wikipedia.org/... - Wikipedia: Bildschirmtext

Tip: Schau dir doch auch mal meine Computersammlung an!
(c)2001-2018 Philipp Maier, Hohen Neuendorf