Bevor dieser Artikel beginnt ein wichtiger Hinweis:

Alle verwendeten Firmen-, Markennamen und Warenzeichen sind Eigentum der jeweiligen Inhaber und dienen lediglich zur Identifikation und Beschreibung der Produkte und Dienstleistungen.
Prototyp zur Manipulation des Taschenrechners
Prototyp zur Manipulation des Taschenrechners

Abstract

Dieser Artikel beschäftigt sich mit der Manipulationssicherheit von grafikfähigen Taschenrechnern und soll dabei verdeutlichen, wie sich diese in einer Klausur auch nach einem Reset als Spickzettel nutzen lassen.

Ausgangslage

Grafikfähige Taschenrechner sind im Abitur 2017 in NRW vorgeschrieben. Sie verfügen dabei über besondere Funktionen wie das Plotten von Graphen, Lösen von Gleichungssystemen oder auch das ganz normale Rechnen. Außerdem lassen sich auf ihnen Spiele installieren, Formeln speichern und einfache Programme entwickeln. Damit Schüler diese Daten nicht in einer Klausur verwenden können, werden die Rechner vor jeder Klausur durch den Lehrer zurückgesetzt. Im Grunde gibt es für diese Rechner zwei Hersteller: CASIO und Texas Instruments. Die Firma Texas Instruments stellt im Vergleich zu den Rechnern der Firma CASIO sehr teure Geräte her, die sich bei gleichem Funktionsumfang deutlich im Preis unterscheiden. Die Rechner müssen von den Schülern selbst angeschafft werden und finanzielle Untersützung gibt es dabei nur in Ausnahmefällen.

Alternativ zu den grafikfähigen Taschenrechnern können auch Tablets oder Laptops verwendet werden. Diese müssen allerdings in einer Klausur von der Schule gestellt werden. Da es sich dabei, insbesondere bei zentralen, gleichzeitig abzulegenden Prüfungen um eine sehr kostspielige Lösung handelt und der Administrationsaufwand recht hoch ist, wird häufig auf die Anschaffung von grafikfähigen Taschenrechnern durch die Schüler gesetzt. Für diese sind die Schüler vollständig selbst verantwortlich und durch die integrierte Reset Möglichkeit kann ein Lehrer die Rechner vor einer Klausur sicher zurücksetzen, sodass alle vorhandenen Formeln und Anwendungen gelöscht werden.

Anfang des Schuljahres 2014/15 habe ich ebenfalls einen solchen Rechner anschaffen müssen, in meinem Fall ein CASIO fx-CG 20. An dieser Stelle möchte ich klar betonen, dass die von mir aufgezeigten Probleme nicht CASIO spezifisch sind, sondern ebenfalls bei Geräten der Firma Texas Instruments bestehen.

Ich habe mich bereits früh mit den Möglichkeiten des Taschenrechners befasst. Angefangen mit der Überlegung ein eigenes Spiel für die Geräte zu programmieren, bis hin zur Entwicklung eines Moduls, das es erlaubt die beim Reset gelöschten Daten wiederherzustellen. Insbesondere die letzte Variante interessierte mich. Dort konnte ich verschiedene Gebiete miteinander verbinden, wie das Reverse Engineering, die Hardware- und Softwareentwicklung sowie die Mikrocontrollerprogrammierung.

Problembeschreibung

Klinkenbuchse, die zur Dateiübertragung zwischen zwei Taschenrechnern genutzt wird
Klinkenbuchse, die zur Dateiübertragung zwischen zwei Taschenrechnern genutzt wird

Bei der Gesamtkonzeption der Rechner gibt es ein wesentliches Problem, das dazu führt, dass die gelöschten Daten wiederhergestellt werden können. Egal ob Texas Instruments oder CASIO Taschenrechner, sie alle verfügen über Schnitstellen wie USB, oder spezielle Verbindungskabel, über die Taschenrechner Dateien untereinander und mit Computern austauschen können. So wird beispielsweise ein Firmware Upgrade ermöglicht oder das Verschicken einer Tabelle aus der Tabellenkalkulation an einen zweiten Taschenrechner.

Was im Unterricht durchaus nützlich sein kann, erweist sich in einer Klausur als Gefahr. Mit einem von mir entwickelten Gerät können Dateien wie Formeln oder Programme gespeichert werden. Dies geschieht bereits vor einer Klausur am heimischen Schreibtisch. Unmittelbar vor der Klausur setzt der Lehrer dann den Taschenrechner zurück, sodass ich theoretisch keinen Zugriff mehr auf die Daten habe. Mein Modul ist nun allerdings dazu in der Lage über genau diese Schnittstelle die Datei erneut auf den Taschenrechner zu übertragen, sodass ich die soeben gelöschte Datei dennoch in einer Klausur verwenden kann. Im konkreten Fall wird die von CASIO als 3-Pin bezeichnete Schnittstelle verwendet.

Ausblick

Ich habe lediglich einen Prototypen entwickelt, der als Machbarkeitsstudie dient. Mein Prototyp ist deutlich zu groß für den Einbau in den Taschenrecher. Jedoch können im Grunde auch käuflich erwerbliche Mikrocontrollerplatinen mit meinem Programm bespielt werden und so sogar ohne die Entwicklung eigener Hardware verwendet werden. Die Platinen sind dabei deutlich kleiner, bieten jedoch mehr Speicherplatz als mein Modul. Als Beispiel sei hier der Arduino Pro Mini genannt, der aufgrund seiner minimalen Ausstattung und seiner Verarbeitung in SMD Technik nur wenige Millimeter dick ist und sich somit in den Taschenrechner einbauen ließe.

Innenleben des Taschenrechners
Innenleben des Taschenrechners

Im Bild ist ein geöffneter Taschenrechner zu sehen, dessen Gewährleistung bereits vor dem Öffnen erloschen war. Die Platine im blauen Kreis stellt dabei den Arduino dar. Aufgrund der sehr großen Kondensatoren (orangener Kreis) und des Batteriefaches, ist im Gehäuse noch sehr viel Freiraum, in dem sich eine derart kleine Platine ohne Probleme unterbringen ließe.

Die Platine müsste an gerade einmal vier Stellen im Taschenrechner angelötet werden. Die Stromversorgung erfolgt direkt über angelötete Drähte an den beiden Batteriefedern (roter Kreis). Die im ersten Bild zu sehende 9V Blockbatterie entfällt damit. Zudem werden die beiden Datenleitungen an den Kontakten der Klinkenbuchse (grüner Kreis) angelötet.

Der Einbau ist dank der großen Kontaktflächen, sowohl an den Batteriefedern, als auch an der Klinkenbuchse auch für ungeübte “Bastler” möglich. Viele Schulen vermitteln zudem in Projektwochen oder freiwilligen Kursen Löterfahrungen. Es ist davon auszugehen, dass es einige Schüler gibt, die ein vorbereitetes Modul (auch für ihre Mitschüler) einbauen können.

Die grundsätzliche Verwendung des Moduls habe ich im folgenden Video gezeigt:

Möglichkeiten zur Verhinderung von Manipulationen

Die Verwendung eines im Taschenrechner verbauten Moduls ist nicht nachweisbar, da ein Lehrer nicht dazu berechtigt ist den Taschenrechner zu öffnen. Das Öffnen eines Taschenrechners führt unweigerlich zum Verlust der Gewährleistung und ist zudem zeitintensiv. Durch geschickte Programmierung kann zudem sichergestellt werden, dass die Formeln nur dann an den Taschenrechner übertragen werden, wenn zuvor ein Passwort an das Modul geschickt wurde. Stellt ein Lehrer im Speicher abgelegte Formeln nach oder in einer Klausur fest, ist auch dies kein Nachweis für einen Täuschungsversuch. Schließlich kann ein Schüler die Formeln während der Klausur eingespeichert haben. Eine Überprüfung aller Taschenrechner während einer Klausur wäre zudem sehr störend und die Formeln könnten rechtzeitig gelöscht werden.

Dieser Trick kommt auch häufig bei mitgebrachten Blättern zum Einsatz, auf denen die Formeln bereits vorher notiert werden und nach einigen Minuten behauptet werden kann, dass diese soeben aufgeschrieben wurden. Abhilfe schaffte dort durch die Schule bereitgestelltes und gestempeltes Papier. Ähnliche Lösungen sind auch bei Taschenrechnern denkbar, jedoch sehr teuer.

Angenommen aufgrund einer Sammelbestellung kann eine Schule die Taschenrechner für 50€ pro Stück erwerben, so würde dies selbst an kleinen Gymnasien mit etwa 100 Schülern in einem Jahrgang, dessen Schüler gleichzeitig die zentralen Abschlussklausuren schreiben müssen einmalige Gesamtkosten von 8000€ bedeuten. Zuzüglich käme ein jährlicher Batteriewechsel. 5000€ sind für eine Schule viel Geld, das an anderen Stellen wie der Multimediaaustattung oder der Gebäudeinstandhaltung fehlt.

Das Entfernen der verwendeten Schnittstelle ist nicht möglich. Dadurch würde der Taschenrechner eine Funktionalität verlieren. Zudem bleibt eine ähnliche Manipulation über den USB Anschluss nach wie vor möglich. Da dieser zur Installation von Firmware Updates zwingend erforderlich ist, kann er auch nicht entfernt werden.

Die einzig effektive Möglichkeit eine Manipulation zu verhindern ist wie beschrieben die Verwendung von schuleigenen Geräten, die ausschließlich in Klausuren verwendet werden, sowie ein erschwertes Öffnen der Geräte. Dies könnte durch verklebte oder versiegelte Schrauben geschehen, sodass ein Lehrer bereits geöffnete Taschenrechner an der fehlenden Versiegelung erkennen könnte.

Es ist jedoch fraglich, ob ein Lehrer auf ein solches Detail achten würde. Zudem sind bereits einige Taschenrechner im Hinblick auf das Abitur 2017 im Umlauf, an denen keine Veränderungen mehr durchgeführt werden können.

Erschreckend war in meinen Augen, dass die Entwicklung dieses Moduls durch die Verwendung eines UARTS am 3Pin Anschluss relativ leicht war. Nahezu jeder Mikrocontroller unterstützt diese Art der seriellen Übertragung. Eine gekürzte Fassung der 40-seitigen Dokumentation dieses Projekts ist hier zu finden. Darin beschreibe ich meine Vorgehensweise und die vorhandenen Schwachstellen. Details wie Protokollmitschnitte und Schaltpläne habe ich der veröffentlichten Version entfernt. Journalisten sowie entsprechende Ministerien haben die Möglichkeit per Email die vollständige Dokumentation zu erhalten. Diese Version wird personalisiert und darf nicht weitergegeben werden. Eine Kontaktadresse befindet sich im Impressum.

Reaktionen

Vor der Veröffentlichung habe ich Kontakt mit CASIO, Texas Instruments und dem Ministerium für Schule und Weiterbildung NRW aufgenommen.

Texas Instruments

Von Texas Instruments habe ich keine Antwort auf meine Anfrage erhalten, wie sicher sie ihre Taschenrechner vor Manipulationen einstufen.

CASIO

CASIO teilte mir zunächst mit, dass die Rechner nur mit sehr großem Aufwand manipulierbar seien, was nahezu ausgeschlossen sei. Im Anschluss sendete ich CASIO ein 40-seitiges Dokument zu, in dem ich meine Vorgehensweise genau beschrieb.

Man reagierte überrascht und teilte mir mit, dass man meine Punkte an die Entwicklungsabteilung weiterleiten wolle. Gleichzeitig teilte man mir mit, dass eine derartige Manipulation dennoch abschreckend sei, da wohl nur wenige Schüler bereit wären die Gewährleistung durch den Einbau eines derartigen Moduls zu verlieren.

Ministerium für Schule und Weiterbildung NRW

Das Ministerium teilte mir zunächst mit, dass es technisch versierten Schülern durchaus möglich seien könne, die Rechner zu manipulieren. Man entkräftigte dies damit, dass Spicken bereits so alt sei wie die Schule selbst. Zudem stellten internetfähige Geräte ein deutlich größeres Risiko dar.

Des weiteren sei es geregelt, dass die Verwendung von Spickzetteln einen Täuschungsversuch darstelle und entsprechende Konsequenzen nach sich ziehe.

Nachdem ich dem Ministerium die selbe Dokumentation zuschickte, teilte man mir mit, dass der Standpunkt bestehen bleibe. Ich wollte zusätzlich noch eine konkrete Antwort und fragte explizit nach einer Bestätigung, dass man keinen Handlungsbedarf sehe. Darauf wurde erneut mit dem selben Text reagiert.

Meine Meinung

Die Reaktion der Firma CASIO war in meinen Augen absolut in Ordnung, auch wenn sich noch zeigen muss, ob entsprechende Konsequenzen gezogen werden. Aus diesem Grund betone ich nochmals ausdrücklich, dass sich dieser Artikel nicht gegen CASIO richtet.

Die Reaktion des Ministeriums für Schule und Weiterbildung NRW halte ich jedoch für falsch. Meine Anfrage wurde durchgängig von der Pressestelle bearbeitet und somit nicht von entsprechend Verantwortlichen. Auf alle neuartigen Probleme im Bezug auf die Verwendung von Spickzetteln in Klausuren wurde reagiert. So wird das Papier häufig von der Schule bereitgestellt und gestempelt. Handys müssen vor Klausuren abgegeben werden und mancherorts werden sogar Geräte zum Aufspüren eingeschalteter Handys eingesetzt. Toilettengänge werden protokolliert.

Lediglich bei Taschenrechnern, deren Manipulation oder Nutzung als Spickzettel unerwartet und wie oben beschrieben weder nachweisbar, noch ahndbar ist, wiegelt man bewusst ab. Wie derwesten.de schreibt, fordert Ministerin Löhrmann zudem den Einsatz von “täuschungs- und prüfungssicheren Lösungen”. Definitiv ein ernormer Kontrast zu dem hier vorgerstellten.

Meiner Meinung sind derartige Sicherheitslücken, egal ob in Schulnetzwerken oder Taschenrechnern nicht vermeidbar, jedoch sollte auf entsprechende Hinweise adäquat reagiert werden. Da dies in meinen Augen an dieser Stelle nicht gegeben ist, veröffentliche ich diese Informationen nun.

Ich Verfüge über das nötige Fachwissen, sowie Hard- und Software um ein Modul zu entwickeln, das nur noch an den vier beschriebenen Stellen angelötet werden müsste. Ich sehe es im Sinne der Hackerethik als Pflicht an dieses Modul nicht zu verwenden, sondern Veränderungen anzustreben, um derartige Manipulationen zu unterbinden.

Ich werde weder Schaltpläne noch die Software veröffentlichen. Dieser Artikel sollte daher als Informationsquelle betrachtet werden, die vor möglichen Manipulationen warnen soll. Auf diese Weise möchte ich Veränderungen erreichen, die zur zukünftigen Manipulationssicherheit beitragen.

 

Über das Thema kann gerne in den Kommentaren diskutiert werden. Ich stehe auch gerne für weitere Nachfragen zur Verfügung. Es sollte jedoch klar sein, dass ich auf technische Details nur begrenzt eingehen werde.

7 thoughts on “Manipulationssicherheit von grafikfähigen Taschenrechnern”

  1. Könnten Sie mir die spezifische Baud-Rate der FX-CG20 nennen? Haben Sie schonmal probiert das Projekt auf ein Attiny85 herunterzubrechen (mit SoftwareSerial)?
    Ich bin sehr beeindruckt, gerade von dem Ansatz und der strukturierten Beschreibung.
    Und ließe sich nicht sogar auch ein Modul bauen, welches direkt vor dem Löschen des Taschenrechners über die gleiche Serielle Schnittstelle die zu sichernden Daten empfängt und somit ohne Unterstützung eines Computers mobil funktioniert?

    1. Die Baudraten stehen doch schon in der Dokumentation. Die Verwendung kleinerer Controller scheitert eigentlich an der fehlenden seriellen Schnittstelle in Hardware. Der Taschenrechner schaltet von 9600 während der Kommunikation auf 115200 Baud hoch, wodurch eine Software Implementierung vermutlich an ihre Grenzen käme. Dazu kommt, dass es eigentlich keinen Sinn macht einen ATtiny zu verwenden. Auch ATmegas sind in SMD so klein, dass die locker im Taschenrechner Platz fänden.
      Was man jedoch nicht vergessen darf ist, dass der durch das Programm beschreibbare Speicherplatz (der EEPROM) bei den meisten Controllern sehr klein ist, und für meine Implementierung nicht ausreicht. Deshalb liegt die eigentliche Datei im Programmspeicher des Controllers, wodurch der Controller die Datei nicht selbst empfangen und abspeichern kann. Würde man aber ein anderes Speichermedium, wie eine SD Karte direkt am Controller oder zusätzlichen EEPROM vorsehen, dann könnte der Controller auch den Empfang selbstständig durchführen. Da es sich aber bei diesem Projekt nur um einen Prototypen handelt, der lediglich als Proof of Concept zu betrachten ist, habe ich dort nicht weiter angesetzt.

  2. Sehr interessanter Beitrag und eine wirklich enttäuschende Reaktion des Ministeriums. Das kann mn geradezu als Aufforderung verstehen.

    1. Bei uns an der Schule gab es auch eine enttäuschende Reaktion, auf die Frage, welche Taschenrechner denn verwendet werden darf bei der Prüfung? Da reichen die Antworten von, ‘diese Frage wurde uns noch nie gestellt, was ist der Unterschied?!’, bis hin zum ‘Nun ja, man kann doch kein ganzes Buch rein kopieren’. Aber die beste Antwort kam von den Mitschülern, ‘Waaasss! Darin kann man was speichern??

      1. Vergleichbar mit dem Informatiklehrer an meiner alten Schule, der mir mal eine mangelhafte Leistung attestierte. Ich habe ihn dan später mal gefragt, was er denn von der Sicherheit halte. Nachdem ich ihm meine Ergebnisse zugeschickt hatte, habe ich nie wieder etwas von ihm gehört…

  3. Wie sieht den die rechtliche Lage aus?
    Wir hatten jetzt den vorfall, dass eine schülerin in einem programm alle informationen aufschrieb. Ihr wurde nicht bescheid gegeben, dass sie das spezielle programm nicht nutzen darf. Der taschenrechner als ganzes wurde als hilfsmittel zu gelassen und nicht kontrolliert.
    Während der arbeit kontrollierte der lehrer unerwartet den taschenrechner der schülerin und unterstellte ihr betrug.
    Hat diese schülerin gespickt oder ihr hilfsmittel klug genutzt?

    1. Rechtlich kann ich das natürlich nicht wirklich bewerten. Ich würde aber das Vorgehen der Schülerin mit dem guten alten Spickzettel gleichsetzen. Immerhin wird auf dem ja auch das ganze Wissen des Schülers aufgeschrieben. Dennoch sehe ich in dem Fall auch eine Teilschuld beim Lehrer und der Schule. Immerhin hätte er sich auch mit dem neuen Rechner auseinandersetzen müssen oder zumindest über den Rechner informiert werden müssen. Leider ist es oft so, dass viele Lehrer sich mit dem Rechner nicht auseinandersetzen, vorallem, wenn er bei Lehrern eingesetzt wird, die eigentlich kein Mathe unterrichten.

Leave a Reply

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