Polnische NEWAG-Züge sperren sich nach Reparaturen in Drittwerkstätten
(social.hackerspace.pl)- Bei den polnischen NEWAG Impuls EMU-Zügen, die nach Wartungen in Drittwerkstätten ausfielen, haben drei Forscher etwa ein Jahr lang den PLC-Code rückentwickelt
- Der Hersteller machte Wartungsfehler verantwortlich und pochte auf die eigene Instandhaltung, doch im Code steckte eine Logik, die die Züge unter bestimmten Bedingungen mit fingierten Fehlern sperrte
- Einige Controller-Versionen versuchten, Drittwerkstätten über GPS-Koordinaten zu erkennen, und die Sperre ließ sich mit einer nicht dokumentierten Tastenkombination im Führerstand aufheben
- In späterer PLC-Software verschwand die Entsperrung per Tastenkombination, die Sperrlogik blieb jedoch erhalten, und nach bestimmten Updates zeigte das HMI sogar Warnungen wegen Urheberrechtsverletzungen an
- Das GSM-Telemetriegerät des Zuges übermittelte Sperrbedingungen; in einigen Fällen deutete alles sogar auf eine mögliche Fernsperrung hin
Rückentwicklung des PLC-Codes der NEWAG Impuls EMU
- q3k, redford und mrtick haben etwa ein Jahr lang den PLC-Code der NEWAG Impuls EMU rückentwickelt
- Die betroffenen Züge zeigten das Symptom, sich nach einer Wartung in Drittwerkstätten aus beliebigen Gründen zu sperren
- Der Hersteller behauptete, Wartungsfehler der Drittwerkstätten seien die Ursache, und die Wartung müsse nicht von Dritten, sondern vom Hersteller selbst durchgeführt werden
In den Code eingebaute Sperrbedingungen
- Der PLC-Code enthielt eine Logik, die den Zug zusammen mit fingierten Fehlercodes sperrte
- Die Sperre konnte nach einem bestimmten Datum ausgelöst werden
- Sie konnte auch greifen, wenn der Zug eine gewisse Zeit nicht gefahren war
- In einer Controller-Version waren GPS-Koordinaten hinterlegt, die dazu dienten, dieses Verhalten auf Drittwerkstätten zu beschränken
Nicht dokumentierte Entsperrung und spätere Änderungen
- Durch eine bestimmte Tastenkombination an den Bedienelementen im Führerstand konnte die Zugsperre aufgehoben werden
- Diese Entsperrmethode war nicht dokumentiert
- In neueren PLC-Softwareversionen wurde die Entsperrung per Tastenkombination entfernt, die Sperrlogik blieb jedoch unverändert bestehen
HMI-Warnung und GSM-Telemetrie
- Nach bestimmten Updates von NEWAG zeigte das Bedienpanel im Führerstand eine Warnmeldung zu einer Urheberrechtsverletzung an
- Die Meldung erschien, wenn das HMI einige Bedingungen erkannte, unter denen eine Sperre hätte aktiv sein sollen, der Zug aber weiter in Betrieb war
- Der Zug verfügte über ein GSM-Telemetriegerät
- Dieses Gerät übermittelte die Sperrbedingungen
- In einigen Fällen sah es so aus, als könne der Zug aus der Ferne gesperrt werden
1 Kommentare
Hacker-News-Kommentare
Diese Züge werden in Polen exklusiv von recht vielen regionalen Eisenbahngesellschaften eingesetzt. Es gibt fünf Instandhaltungsstufen, von P1 bis zur komplexesten Stufe P5. Früher übernahmen nur große Anbieter Arbeiten ab P3, doch seit die European Union Agency For Railways den Markt vor einigen Jahren geöffnet hat, begannen kleinere Wettbewerber, Ausschreibungen zu deutlich niedrigeren Preisen zu gewinnen.
Der Fall begann damit, dass vier von SPS Mieczkowski gewartete Züge nicht einmal mehr starteten; das Unternehmen musste eine Strafe von 500.000 € zahlen, und die Züge gingen zurück an Newag. Gleichzeitig wurden auch Züge anderer Unternehmen fahruntüchtig, die gar nicht in der Wartung gewesen waren, sondern lediglich zu lange an einem Ort gestanden hatten. Schließlich beauftragte SPS Mieczkowski Dragon Sector mit einer Untersuchung, und es wurden mehrere separate Routinen entdeckt, die die Züge deaktivierten.
Der Fall wird vom polnischen Central Anti-Corruption Bureau untersucht, aber es ist fraglich, ob Newag dadurch ernsthaft Schaden nehmen wird. Das polnische Office of Rail Transport ist eine Behörde, die schon bei kleinen Fehlern im Fahrplan Beschwerden häufen und Anordnungen erlassen konnte, hat sich bei diesem Fall aber aus der Beteiligung zurückgezogen. Zudem sind die Vergabeverfahren beim Zugkauf sehr streng, sodass die Eisenbahngesellschaften kaum Handlungsspielraum haben.
https://sip.lex.pl/akty-prawne/dzu-dziennik-ustaw/kodeks-kar...
Es gibt unglaublich viele Beweise dafür, was passiert ist, sodass die Chancen, da herauszukommen, minimal sind. Trotzdem versuchen sie offenbar, sich mit der Behauptung herauszureden, sie seien gehackt worden. Sinngemäß sollen Hacker die Firmware der von einem Konkurrenten gewarteten Züge geflasht und die Züge dadurch gebrickt haben; dabei waren die GPS-Koordinaten konkurrierender Bahnstrecken buchstäblich hardcodiert.
Allerdings wollte Newag weiter nach Italien expandieren, daher würde ich vermuten, dass sie diese Züge nicht ebenfalls sabotiert haben. Natürlich könnten sie auch gedacht haben, dass es in Ordnung ist, sogar neue Kunden zu verbrennen.
In den Kommentaren sind ein längerer Artikel und Links mit zusätzlichen Details vergraben.
Polnisch:
https://zaufanatrzeciastrona.pl/post/o-trzech-takich-co-zhak...
https://wiadomosci.onet.pl/kraj/awarie-pociagow-newagu-haker...
Englisch:
https://zaufanatrzeciastrona-pl.translate.goog/post/o-trzech...
https://wiadomosci-onet-pl.translate.goog/kraj/awarie-pociag...
Als Hintergrund: Polen ist in 16 Woiwodschaften eingeteilt, und seit den Reformen Anfang der 2000er hat praktisch jede Region ihre eigene regionale Eisenbahngesellschaft, die mit den anderen zusammenarbeitet. Dass mit den Newag-Zügen etwas Verdächtiges los war, war seit über einem Jahr im Grunde allgemein bekannt. Bei Zügen mehrerer Unternehmen kam es immer wieder zu Ausfällen, und diese hatten nicht Newag, sondern Drittanbieter für die Wartung genutzt. Deshalb beauftragte der Wartungsanbieter Hacker, und per Reverse Engineering herauszufinden, was genau passierte, dauerte einige Zeit.
https://en.wikipedia.org/wiki/Voivodeship
Ich musste an den AARD-„Crash“ denken, den Microsoft früher eingesetzt hat, um die Konkurrenz durch DR-DOS praktisch kaputtzumachen.
Der AARD-Code war ein Codefragment in der Beta-Version von Microsoft Windows 3.1. Er sollte erkennen, ob Windows nicht auf MS-DOS oder PC DOS lief, sondern auf einem konkurrierenden kompatiblen Produkt wie DR-DOS, und in diesem Fall eine kryptische Fehlermeldung ausgeben. Dieser XOR-verschlüsselte, selbstmodifizierende und absichtlich obfuskierte Maschinencode nutzte mehrere undokumentierte DOS-Strukturen und -Funktionen.
https://en.wikipedia.org/wiki/AARD_code
https://www.geoffchappell.com/notes/windows/archive/aard/drd...
https://news.ycombinator.com/item?id=36042213
Am Ende sind es Menschen, die verhindern, dass gute Dinge lange Bestand haben. OS/2 Warp war ein hervorragendes Betriebssystem.
Nebenbei: DR-DOS war schon zum Zeitpunkt der Veröffentlichung eine Sackgasse. Es war allzu offensichtlich, dass Menschen und OEMs nicht zwei Betriebssysteme zusammen kaufen würden: ein grafisches Betriebssystem und ein DOS, das wie der Bootloader dieses grafischen Betriebssystems fungierte. Die Vorstellung, dass es über einen relevanten Zeitraum einen eigenständigen, rein textbasierten 16-Bit-DOS-Markt geben würde, war reine Fantasie, und auch bei den Verkaufszahlen war DR-DOS nicht relevant. Selbst wenn der AARD-Code tatsächlich in den finalen Windows-3.x-Versionen gelandet wäre, hätte das nichts geändert.
Dass ein Zug deaktiviert wird, wenn man ihn „zu lange“ abstellt – ich vermute, Microsoft hätte seine Plattform auch gern in diesem Ausmaß kontrolliert.
Nachdem der Beitrag erschienen war, ist der Kurs von Newag ziemlich gefallen. Ist das der erste Fall einer Kurskorrektur ausgelöst durch Mastodon?
https://g.co/kgs/WVku4C
Am 21. November 2022 gab es eine ziemlich absurde Situation, in der eine andere Zugeinheit, die nicht einmal im Betrieb war, den Dienst verweigerte. Der Computer meldete einen Kompressorschaden, aber als die Mechaniker nachsahen, war mit dem Kompressor alles in Ordnung. Trotzdem hob der Zug den Pantografen nicht, und bei der Analyse des Computercodes fand man eine Bedingung, die den Fehler erzwang.
Sinngemäß: Wenn der Tag mindestens der 21. ist, der Monat mindestens November und das Jahr mindestens 2021, dann melde einen Kompressorschaden.
> 2021-11-21verwendet zu haben.Hat dieser Hersteller nicht faktisch kritische Infrastruktur lahmgelegt und Polen im wörtlichen Sinne als Geisel genommen? Das ist ein unglaublich dreistes Verbrechen, und ich bin mir nicht sicher, ob sie damit einfach davonkommen werden.
Die Welt ist klein. Ich öffne HN und sehe eine filmreife Geschichte über Züge, mit denen ich schon mehrfach gefahren bin. Es ist gut möglich, dass ich sogar in einem der tatsächlich stillgelegten Züge unterwegs war.
Jedenfalls bedeutet das, dass es entweder kein Code Review gab oder dass die Reviewer es aus irgendeinem Grund akzeptiert haben. Ich weiß nicht, welche Variante beängstigender ist.
Das scheint vom Zughersteller beabsichtigt gewesen zu sein, und es wirkt ziemlich eindeutig so, als hätte der Hersteller die Erstellung dieses Codes angeordnet. Es sieht nicht danach aus, als hätte ein Hacker das heimlich und ohne Wissen der Verantwortlichen eingebaut. Ich frage mich, wer da welches Code Review machen sollte.
Nachdem ich andere Kommentare gelesen habe, scheint der Artikel oben auf HN ausgetauscht worden zu sein, und einige Kommentare wurden offenbar zu einem Artikel geschrieben, der deutlich weniger Informationen enthielt. Deshalb waren die Kommentare wohl verwirrend.
Leider sind Newag-Züge qualitativ ziemlich viel besser als die des anderen polnischen Herstellers Pesa. Offenbar waren sie so zuverlässig, dass man künstliche Ausfälle erzeugen musste.
Ich frage mich, wer diese bösartigen Bedingungen programmiert hat und wer davon wusste. Hat niemand an Whistleblowing gedacht?
Zur Info: Es gibt eine Seite mit anonymen Mitarbeiterbewertungen des Unternehmens: https://www.gowork.pl/opinie_czytaj,19587
Sieht nach einem ziemlich toxischen Arbeitsumfeld aus.
Interessant wird sein, wie sich diese Situation auf den Vertrag mit dem europäischen Bahn-Serviceunternehmen Akiem auswirkt. Akiem hat mit Newag einen Vertrag über 164 Millionen Euro für Services und Züge für Frankreich abgeschlossen.
[1] https://biznes.pap.pl/pl/news/all/info/3509606,newag-inks-eu...