Compass Security Blog

Offensive Defense

DCF77 Zeitsignal Manipulation

In diesem Artikel wird aufgezeigt, wie einfach das per Funk ausgestrahlte DCF77 Zeitsignal manipuliert werden kann. DCF77 wird in vielen Bereichen eingesetzt in denen eine genaue Uhrzeit benötigt wird: Von der einfachen Armbanduhr bis zur Industrieanlage.

Was ist DCF77

In Europa existiert seit 1959 der Zeit Sender DCF77. Der Sender verfügt über eine Reichweite von 2000km und befindet sich in Mainflingen – Deutschland. Drei Atomuhren dienen als Zeitbasis. Neuere Empfänger setzen teilweise auf GPS anstelle von DCF77, haben jedoch den Nachteil, dass sie eine Aussenantenne für den Empfang benötigen. Lösungen mit einer Internetanbindung hingegen beziehen ihre Zeit üblicherweise über das Netzwerk.

Bild-Quelle: https://de.wikipedia.org/wiki/DCF77#/media/File:Dcf_weite.jpg

DCF77 Reichweiten Karte

Wo wird DCF77 eingesetzt

Die DCF77 Einsatzgebiete sind unter anderem: Kirchturmuhren, Ampelanlagen, Tarifschaltuhren bei Energieversorgungsunternehmen, Industrieumgebungen, Server, öffentlicher Verkehr, Rundfunk oder normale Wecker und Armbanduhren.

Was sind die Folgen einer Zeitmanipulation

Bei einer Manipulation des Weckers des Nachbarn hält sich der entstehende Schaden im Allgemeinen in Grenzen. Im Gegensatz dazu stehen Automationslösungen wie sie z.B. in der Lebensmittel- oder Chemieindustrie vorkommen, bei denen durch falsche Prozesszeiten immense Schäden entstehen können.
Auch im Bereich der IT-Kommunikation können die Auswirkungen wahrgenommen werden z.B. falls Computerzertifikate nach einer Zeitmanipulation ihre Gültigkeit verlieren, da das Gültigkeitsdatum abgelaufen ist. Die verschlüsselte Kommunikation schlägt somit fehl.

DCF77 Sender im Eigenbau

DCF77 Sender sind im Gegensatz zu Empfängern öffentlich kaum erhältlich. Doch wie sieht es aus, wenn man selbst ein DCF77 Signal aussenden möchte? Der Zeitaufwand um selbst ein Sender (Hardware und Software) mit geringer Reichweite zu bauen, ist ähnlich gross wie einen eigenen Empfänger zu bauen. Die benötigten Informationen zum Bau eines Senders (Protokoll, Sendefrequenz, Modulation) sind im Internet leicht zu finden, werden sie doch auch zum Bau eines Empfängers benötigt.

Um die Anfälligkeit von DCF77 Systemen aufzuzeigen, wurde ein kleiner Sender mit einer Reichweite von ca. 30cm gebaut. Für höhere Reichweiten wäre eine grössere Antenne sowie ein Verstärker nötig. Die Umsetzung wäre mit geringem Aufwand möglich, die Aussendung des Signals jedoch illegal.  Mit dem Sender können beliebig manipulierte Zeitinformationen (Datum/Zeit/Wochentag) gesendet werden, die von den DCF77 Uhren, die sich im Empfangsbereich befinden, übernommen werden.

DECEEF77-Sender

DCF77 Piraten Sender – DECEEF77

Projektziel: DCF77 Piratensender mit kurzer Reichweite. Abgebildet ist die selbstentwickelte Hardware und Software DECEEF77 V.1.0. Der zu sendende Zeitstempel kann nach dem Einschalten bzw. Anschluss der mini USB Stromversorgung, über die drei Tasten (+ / Enter / -) eingestellt werden.

Protokoll

Trägerfrequenz 77.5kHz
Modulation Amplituden Modulation
Bitrate 1 Bit pro Sekunde
0.1 Sekunde Trägerabsenkung Logisches 0
0.2 Sekunde Trägerabsenkung Logisches 1
59. Sekunde Keine Trägerabsenkung

Das folgende Bild stellt die Sendeleistung über die Zeit dar. Jede Sekunde wird die Sendeleistung für 0.1 Sekunden (logisches 0) oder 0.2 Sekunden (logisches 1) abgesenkt, bei der 59 Sekunde findet keine Absenkung statt.

DCF77-AM-Modulation

DCF77-AM-Modulation

Der Zeitstempel wird innerhalb einer Minute vollständig übertragen. Im folgenden Kreisdiagramm sind die 59 Bits, die pro Minute übertragen werden, dargestellt. Pro Sekunde wird ein Bit übertragen, welches durch einen Strich auf dem Kreis eingezeichnet ist.

DCF77-Kreisdiagramm

DCF77-Kreisdiagramm

Der Zeitstempel wird in Bit 21 bis 58 codiert. Die mit P1, P2 sowie P3 gekennzeichneten Bits sind jeweils die Parity Bits die zur Validierung der korrekten Übertragung des Signals genutzt werden.

Hardware DECEEF77

  • µC: Atmel ATMEGA328P-PU
  • 16 MHz Quarz Takt
  • 77.5 kHz Rechteck zu Sinus Filter
  • Operationsverstärker als Verstärker für die Antenne.
  • Eine Ferritstabantenne die für den Empfang des DCF77 Signals gedacht ist, wurde verwendet, um das Signal auszusenden.
  • Print-Design mit Altium Designer

Schaltungsbeschreibung

DECEEF77-Schema

DECEEF77-Schema

Der Mikrocontroller U1 teilt den 16MHz Quarz Takt auf 77.5kHz runter. Auf dem Port PB3 wird entweder ein 5V Rechteck mit dem 77.5kHz Signal ausgegeben, oder PB3 wird hochohmig geschaltet. Es wird somit eine 100% Amplitudenmodulation verwendet (volle Leistung oder keine Leistung). Durch R2 und R4 wird bei hochohmigem Ausgang der Pegel auf 2.5V gehoben.

Durch mehrere Tiefpass-Filter (R6 bis R9, C6, C7, C10 und C11) wird das Rechtecksignal in einen Sinus (respektive Sinus ähnlich) umgewandelt.

DECEEF77-Tiefpassfilter

DECEEF77-Tiefpassfilter

Der Operationsverstärker U3 verstärkt das Signal und koppelt es über den Kondensator C9 auf die Antenne.

DECEEF77-Verstaerker

DECEEF77-Verstaerker

Die Schalter S1, S2 und S3 sind direkt an den Mikrocontroller Ports angeschlossen, die als Pull-Up Eingänge konfiguriert sind. Die Schalter dienen dazu die Zeit einzustellen (+, Enter, -).

DECEEF77-Schalter

DECEEF77-Schalter

U2 ist das LCD Display das über ein 4-Bit Interface verfügt.

DECEEF77-Display

DECEEF77-Display

J1 dient als In-Circuit-Programmier-Interface und verwendet das Standard 6-Pin ISP Layout.

DECEEF77-ISP

DECEEF77-ISP

Der Test

Ein DCF77-Wecker wird dazu verwendet, um die Funktion des Senders zu testen. Nach 3 bis 5 Minuten läuft der Wecker synchron mit dem Sender.

DECEEF77_TEST

4 Comments

  1. Bas Kasteel

    Dear Reto,
    Could you publish the code also please.

  2. Rudi Heger

    hallo reto

    Ich habe Deine Schaltung nachgebaut. im Schaltplan fehlt aber eine Verbindung zwischen beiden Amp im 2720. Ich habe über einen Widerstand von 56 Ohm eine Verbindung zwischen 77amp Pin 2 und 77amp Pin9 hergestellt. Das funktioniert auch. Die Reichweite des Senders beträgt trotz Amp nur 30 cm. Ist das so richtig ?.
    Ich hatte erwartet das die Reichweite mit Amp so 2-3m betragen würde. Als Antenne benutze ich eine von einem DCF Empfänger ausgebaute Ferritantenne. Ich Würde mich über eine Antwort freuen.
    Rudi

    • Cyrill Bannwart

      Hallo Rudi

      Im Schaltplan ist die Verbindung zwischen den beiden Op Amp allenfalls nicht direkt ersichtlich, aufgrund des Signalnamens (77amp) kann man jedoch sehen dass die beiden Pins tatsächlich direkt miteinander verbunden werden müssen um eine Op Amp Kaskade zu erhalten. Die Reichweite entspricht mit 30 cm ebenfalls der wie im Post angegebenen Distanz.

Leave a Reply to Reto Schaedler Cancel reply

Your email address will not be published. Required fields are marked *