W sprawie pociągów Newagu widzimy w internecie sporo pytań i opinii, które często nie mają wiele wspólnego z rzeczywistością. Czas spróbować wyjaśnić najważniejsze aspekty tej afery i wytłumaczyć, co się stało, a co nie miało miejsca.
Gdy we wtorek jako pierwsi ujawniliśmy problemy z oprogramowaniem niektórych pociągów Newagu i to, jak je rozwiązano, w dyskusjach na ten temat zaczęło się przewijać sporo różnych dziwnych teorii. Wśród ponad 400 komentarzy do naszego artykułu ponad 15% jest autorstwa jednego użytkownika, który konsekwentnie pokazuje w najlepszym razie brak zrozumienia sytuacji (przy jednocześnie rzekomo dużej wiedzy na temat całej sprawy, od etapu przetargu na zakup pociągów aż po realizację samego serwisu), a w najgorszym – brak rzetelności i manipulację. Czas rozwiać ewentualne wątpliwości czytelników. Spróbujemy po kolei odpowiedzieć na najważniejsze pytania dotyczące tej ważnej historii.
Czy hakerzy zmodyfikowali oprogramowanie pociągów?
To jeden z najpoważniejszych zarzutów pojawiających się w komentarzach, więc od niego zaczniemy. Impulsami, uruchomionymi przez zespół badaczy, możecie śmiało jeździć bez żadnych obaw – ich oprogramowanie jest w 100% identyczne jak to, które otrzymały od producenta. Badacze nie musieli go w ogóle modyfikować – a co najważniejsze, nie chcieli tego robić, zdając sobie sprawę z konsekwencji takiego działania. W końcu zajmują się zawodowo bezpieczeństwem.
Jak zatem uruchomili pociągi, nie modyfikując oprogramowania? Tu ukryte jest całe piękno ich pomysłu. Oprogramowanie pociągów, posiadające funkcje nakładania blokad, miało także funkcje usuwania blokad – ten, kto chciał, by pociągi się blokowały, chciał także, by można je było odblokować. Początkowo odblokowanie było możliwe po wykonaniu serii odpowiednich ruchów na pulpicie sterowniczym pociągu, jednak ta opcja została z oprogramowania usunięta. Nastąpiło to wkrótce po tym, gdy po branży rozeszła się informacja, że serwisowi udało się uruchomić zablokowane Impulsy. Modyfikacja pojawiała się po wizycie pociągu w Newagu lub wizycie serwisanta Newagu. W kodzie oprogramowania została jednak funkcja zdejmująca blokady, stworzona przez tego samego autora, co funkcja blokady zakładająca. To, co robi narzędzie opracowane przez badaczy, to uruchomienie „firmowej” funkcji zdejmowania blokady, istniejącej w kodzie komputera pociągu – tak samo, jak zrobiłby to ten, kto te blokady stworzył, w momencie gdy chciałby je zdjąć. Kod komputera pociągu nie jest ani o jeden bajt zmieniany.
No zaraz, powie ktoś, ale przecież zmieniają się zapisy w pociągu, czyli w miejsce jedynek pojawiają się zera i na odwrót. Tak, zdjęcie blokady zmienia zapis w pamięci pociągu – ale to pamięć „robocza”, gdzie przechowywane są np. rejestry niektórych zdarzeń czy właśnie konfiguracja pociągu, w tym jego blokad. To inny obszar pamięci niż ten, który przechowuje program komputera. Tak samo jak zablokowanie pociągu powoduje zapisanie nowej konfiguracji, tak samo konfigurację (w zakresie blokad) zmienia jego odblokowanie. Wszystko to dzieje się z użyciem programu, w który wyposażony jest komputer pociągu – sam program nie wymagał żadnej modyfikacji.
Ale przecież zhakowali pociąg!
Tak, zhakowali – ale bardzo sprytnie. Ich „hakowanie” sprowadziło się do:
- znalezienia sposobu odczytania kodu komputera i jego pamięci,
- przeanalizowania tego kodu,
- zrozumienia, jak działa komputer i skąd biorą się blokady,
- znalezienia bezinwazyjnego sposobu namówienia komputera do zdjęcia blokad.
Tylko tyle – i aż tyle.
Ale tak nie wolno!
Otóż wolno. Artykuł 75 prawa autorskiego mówi między innymi, iż:
Nie wymaga zezwolenia uprawnionego […] obserwowanie, badanie i testowanie funkcjonowania programu komputerowego w celu poznania jego idei i zasad przez osobę posiadającą prawo korzystania z egzemplarza programu komputerowego, jeżeli, będąc do tych czynności upoważniona, dokonuje ona tego w trakcie wprowadzania, wyświetlania, stosowania, przekazywania lub przechowywania programu komputerowego.
Podobnie wskazują wyroki Trybunału Sprawiedliwości Unii Europejskiej, mówiące na przykład:
Poprawianie błędów mających wpływ na funkcjonowanie programu komputerowego wymaga w większości przypadków dotarcia do oryginalnego kodu źródłowego lub, w jego braku, do quasi‑kodu źródłowego, zwłaszcza gdy polega ono na wyłączeniu funkcji zakłócającej prawidłowe funkcjonowanie aplikacji, której program ten jest częścią.
Nie ma tu zatem żadnych wątpliwości – badanie programu w celu jego naprawy (a w końcu pociąg, który nie jedzie, wymaga naprawy) jest prawnie dozwolone.
Ale serwis nie miał dokumentacji pociągu!
Serwis miał pełną dokumentację pociągu. Zarzut, jakoby jej nie posiadał, jest niezwykle absurdalny, ponieważ wystarczy spojrzeć do opisu przetargu, od którego zaczęła się afera, gdzie możemy przeczytać, że:
Przedmiotem zamówienia jest świadczenie usługi polegającej na wykonaniu obsługi technicznej poziomu utrzymania P3/2, w tym legalizacja licznika w jedenastu pojazdach typu 45WE, zgodnie z Dokumentacją Systemu Utrzymania, Dokumentacją techniczno-ruchową […].
Towarzyszy temu nawet link do pobrania DSU, której według komentatorów naszego artykułu SPS nie posiadał. We wstępie tego dokumentu możemy przeczytać, że:
Dokumentacja systemu utrzymania elektrycznego zespołu trakcyjnego 45WE zawiera całokształt zagadnień obejmujących zakresy przeglądów i napraw występujących podczas eksploatacji elektrycznego zespołu trakcyjnego. Opracowanie to obejmuje zakresy wykonywanych czynności przy poziomach 1, 2, 3 utrzymania pojazdu kolejowego (przeglądy kontrolne i przeglądy okresowe), jak również przy poziomach 4, 5 utrzymania pojazdu kolejowego (naprawa rewizyjna i główna) wraz z czasookresem ich wykonywania.
Także w dokumentacji przetargowej w momencie zamawiania pociągów Koleje Dolnośląskie wyraźnie wskazały wprost, że jednym z obowiązków dostawcy jest zapewnienie Dokumentacji Techniczno-Ruchowej oraz Dokumentacji Systemu Utrzymania (oraz licznych innych dokumentów). W umowie znajduje się także zapis wprost zezwalający Kolejom Dolnośląskim na wykorzystanie tej dokumentacji do prowadzenia przeglądów:
Wykonawca przekaże przekazuje Zamawiającemu dokumentację techniczną zgodnie z Załącznikiem nr 4 do Umowy – Zawartość dokumentacji technicznej. Zamawiający nabędzie nabywa, a Wykonawca przekazuje Zamawiającemu uprawnienia do wykorzystywania dokumentacji do obsługi poziomów utrzymania 1-4.
Kto dodał kod blokad do pociągów?
To chyba najważniejsze pytanie – odpowiedź na nie określa odpowiedzialność zarówno za straty przewoźników, jak i reputację producenta pociągów, serwisu, który je naprawiał oraz samych badaczy. Ustalmy zatem, co wiadomo na ten temat:
- Oprogramowania komputera pociągów nie da się aktualizować zdalnie – wymaga to fizycznego dostępu do pociągu, odpowiedniego sprzętu i czasu potrzebnego na wgranie aktualizacji.
- Dodanie kodu nakładającego i zdejmującego blokady nie jest trywialne. O ile dekompilacja fragmentów kodu była trudnym zadaniem (jednym z najlepszych specjalistów w tym zakresie na świecie zajęła wiele tygodni), to dodanie nowych funkcji, bez dogłębnej znajomości platformy, jest o kilka rzędów wielkości trudniejsze, czyli praktycznie niewykonalne w skończonym czasie. Do tego jeszcze badacze znaleźli około 20 różnych wersji oprogramowania z blokadami (różniących się w sporym zakresie funkcjonalnym), zatem prawdopodobieństwo, że ktoś to zrobił bez dostępu do kodu źródłowego zmierza do zera.
- Jedynym w praktyce wykonalnym sposobem rozbudowania funkcji programu jest dodanie odpowiednich fragmentów do kodu źródłowego programu przed jego kompilacją i umieszczeniem w komputerze pociągu. W tym celu należy dysponować kodem źródłowym, dokumentacją i doświadczeniem, by kod w ogóle zadziałał.
- Nawet gdyby natchniony geniusz był w stanie dodać działający kod, nie posiadając dostępu do kodu źródłowego, to działanie takie widoczne byłoby na pierwszy rzut oka – dodatkowy kod nie byłby zintegrowany z kodem istniejącym. Świetnie ten problem wyjaśnia na swoim blogu Gynvael.
- W swoim oświadczeniu z lipca 2022 Koleje Dolnośląskie wskazują, że jeden z pociągów, w którym wystąpiła blokada o nieznanych przyczynach, został przez Newag naprawiony, jednocześnie bez wskazania dokładnych przyczyn awarii („Pojazdy 45WE-019 i 45WE-029 ze stacji Wrocław Główny zostały dostarczone do producenta, czyli do firmy NEWAG, celem naprawy (usunięcia awarii). Awaria polegająca na niemożności uruchomienia napędu została usunięta w pojeździe 45WE-019, ale do dziś NEWAG nie przekazał precyzyjnych informacji o przyczynach jej wystąpienia.”). Ktoś zatem był w stanie blokadę zdjąć.
- Badacze wykonywali także kopie pamięci komputerów pociągów przed ich wysłaniem do Newagu i bezpośrednio po powrocie z Newagu. Różnice w oprogramowaniu wskazywały na modyfikacje systemu blokad (np. wydłużenie czasu postoju powodującego uruchomienie blokady z 10 do 21 dni). Ktoś zatem wiedział o blokadzie i modyfikował sposób jej działania.
Podsumujmy zatem powyższe ustalenia: ktoś, kto dysponował kodem źródłowym programu sterującego, doświadczeniem pozwalającym na jego rozbudowę/modyfikację i dostępem fizycznym także w trakcie, gdy pociąg podróżował do i z Newagu, wgrywał i modyfikował w komputerach 24 pociągów zróżnicowany kod blokad. Newag o tym kodzie nie wiedział, przez ponad rok nie zauważył modyfikacji swojego oprogramowania w obsługiwanych pociągach, ale potrafił je aktualizować (zachowując fragmenty kodu powodujące blokady), a w razie potrzeby także blokady zdejmować. Jedyną zagadką pozostaje odpowiedź na pytanie, kto mógł stać za tym spiskiem.
Ale to Newag zawiadomił ABW!
Według Polskiej Agencji Prasowej Newag zawiadomił ABW już 3 kwietnia 2022 roku. Czego dotyczyło zawiadomienie? Według prezesa Newagu jego skutkiem jest postępowanie prowadzone przez Prokuraturę Okręgową w Nowym Sączu w sprawie przestępstw z art. 269 par. 1 kk oraz 286 par 1. kk. Są to odpowiednio przepisy dotyczące niszczenia, uszkadzania, usuwania lub zmieniania danych informatycznych o szczególnym znaczeniu dla obronności kraju, bezpieczeństwa w komunikacji oraz przepisy o oszustwie.
Tymczasem oświadczenie Newagu z lipca 2022 (linkujemy do archive.org, ponieważ strona Newagu, podobnie jak cała jego infrastruktura IT, nie jest dostępna z internetu od piątkowego wieczoru), wspomina o artykule 306a kk, dotyczącym tzw. „kręcenia liczników”. Oświadczenia Newagu i jego prezesa wskazują zatem na to, że zawiadomienia złożone przez Newag w kwietniu (do ABW, SKW i UTK) oraz lipcu 2022 (do prokuratury) dotyczą innego aspektu całej sprawy.
Czego zatem dotyczyć może postępowanie prowadzone przez Prokuraturę Okręgową w Nowym Sączu? Tu wyjaśnienia można szukać pośrednio w powyżej cytowanym tweecie Stanisława Żaryna, jak i w wypowiedzi Janusza Cieszyńskiego dla Onetu, w której poinformował, że w maju 2023 odbyło się poświęcone temu tematowi Kolegium ds. Cyberbezpieczeństwa, w którym udział wzięli także szefowie służb lub ich przedstawiciele. Podczas tego spotkania przedstawiciel zespołu badaczy opisał ustalenia swoje i swoich kolegów. To właśnie ABW zawiadomiło Prokuraturę Okręgową w Nowym Sączu, co wskazuje, że przedmiotem zawiadomienia mogą być ustalenia badaczy. Sugeruje to także zakres przedmiotowy postępowania oraz jego lokalizacja.
Kto zatem ma rację?
To oczywiście oceni sąd, jeśli sprawa na ten etap postępowania trafi (a zapewne prędzej czy później do tego dojdzie). Gdyby ktoś prowadził zakłady w tej sprawie, to postawilibyśmy sporą kwotę na prawdziwość ustaleń badaczy, odkrywców przyczyny usterek. Trudno sobie wyobrazić, by jedni z najlepszych na świecie specjalistów (tak, to jest stratosfera umiejętności w świecie bezpieczeństwa) mieli brać udział w wielowarstwowym, rozbudowanym spisku, angażującym liczne podmioty, media i organy ścigania i mającym na celu… no właśnie, co? Uratowanie reputacji i budżetu niedużego zakładu serwisowego?
Kto zatem zlecił wprowadzenie procedury blokad do komputerów pociągów? Nie wiemy, ale się domyślamy. A jeśli wy wiecie, to tu są nasze dane kontaktowe, a tu dane kontaktowe Prokuratury Okręgowej w Nowym Sączu. My (na mocy prawa prasowego) gwarantujemy całkowitą anonimowość naszym źródłom.
Dodatkowa lektura, gdyby ktoś chciał poszerzyć swoje rozumienie tej sprawy (szczególnie polecamy najnowsze stanowisko Newagu):
- Stanowisko Newagu z lipca 2022
- Stanowisko KD z lipca 2022
- Stanowisko Newagu z grudnia 2023
- Artykuł OKO.press
Aktualizacja 2023-12-10 21:37
Uzupełniliśmy opis tego, w jaki sposób aktualizacja oprogramowania była instalowana w pociągach.
Komentarze
No i pięknie wyjaśnione!
Podobno Newag wynajął agencję PRową dla wyciszenia tej katastrofy w mediach.
W tym, w cenie zapewne są trole piszące w komentarzach i na Twiterze, żeby zasiewać wątpliwości.
Z dużej chmury, mały deszcz. Gdybym była akcjonariuszką Newagu, byłabym zadowolona takim działaniem spółki, bo dzięki temu moja inwestycja w akcje, przynosiłaby zyski, zatem takie działanie uznać należy za pożądane i etyczne. Bardziej interesujące jest to kto miał wpływ na zakup tych pociągów akurat przez tych klientów. Przecież Newag mógł sprzedać pociągi po zaniżonej cenie dzięki czemu wygrał przetarg i liczyć na zapewnienie stałego dochodu z napraw, eliminując konkurencję z rynku (z uwagi na kary w opóźnieniach serwisu). Moje zlecenie na zakup akcji Newag SA już czeka na otwarcie sesji w poniedziałek. To będzie udana inwestycja.
Twój dziadek był pewnie akcjonariuszem IG Farben do 1945.
Dokładnie. Wszyscy wiemy doskonale kto to zrobił. Przyjaciele ZZA ODRY.
Gdybyś była akcjonariuszką (bo żadną nie jesteś, wszyscy to tu wiemy), to wartość twoich akcji po przeprowadzeniu postępowania upadłościowego spółki wynosiła by zero.
No średnio trafiona inwestycja.
10/10
Zadowolona z działania na szkodę spółki? Spółka nie ma pompować wartości akcji za wszelką cenę, ale zapewniać dobre funkcjonowanie i warunki rozwoju teraz i w przyszłości.
Takie nieetyczne praktyki są niezgodne z prawem i niszczą zaufanie do marki.
Bardzo fajnie, że dostajemy od agencji PR aktualizację nt. tego czego zarząd Newagu obawia się najbardziej.
Postępowanie karne jest już w toku i PRem tego się nie zatrzyma. Nie da się napsuć krwi przewoźnikom przez wstrzymanie eksploatacji pociągów. Nie da się wystraszyć pasażerów, bo pociągi nie mają żadnych modyfikacji.
Czyli obecnie największym ryzykiem są duzi inwestorzy, którzy najwyraźniej mają podstawy do pociągnięcia zarządu do odpowiedzialności. Ciekawe dla ilu akcjonariuszy wystarczy pieniędzy po wypłacie odszkodowań przewoźnikom.
@A9n35, czy możesz nam bardziej szczegółowo opisać z jakich artykułów nie pozwałabyś zarządu Newagu bo uważasz ich postępowanie za etyczne?
To co napisałaś jest tak głupie że aż nie mogę uwierzyć że pojawia się tu pod rzeczowym artykułem. Sio na Twittera.
Ano tak, bo to przecież rzadkość, żeby akcjonariusze pozywali spółkę o odszkodowanie kiedy jej nieetyczne działania powodują spadek wartości akcji :) Z serii nie wiem ale się wypowiem :D
nie wiem jak pożądane i etyczne skoro w przetargu mieli wpisane że nabywca może sobie sam serwisować, coś się pokręciło?
:D powodzenia. Jest super, a Newag sra po gaciach dla rekreacji. Dzięki takiemu etycznemu działaniu zapewne łatwiej im będzie pozyskać kontrakty, w końcu każdy marzy, żeby mu sprzęt za parę baniek przestał działać tuż po gwarancji.
Jesteś idiotką? Nie, nie będę pytał tylko stwierdzę – jesteś idiotką. A wyjaśnienie takie że dziecko że średniaków w przedszkolu zrozumie. Dzięki.
Z całym szacunkiem, ale w interesie akcjonariuszy, w tym głównego, nie było takie zachowanie Zarządu. Należy zwolnić Zarząd, pozwać o straty i przyznać się do niecnych praktyk. No chyba, że Zarząd działał w porozumieniu z głównym akcjonariuszem. W co wątpię.
Akcje zapewne spadną o więcej niż początkowe 17% z piątku. Ale to szansa na wyjście spółki z twarzą. Dopiero wtedy będzie warto składać zlecenia na zakup.
Napiszę tylko tak: dajecie się trollować naczelnemu trolowi grupy PPBiT o nazwie Agnes Pandora. :-)
„byłabym zadowolona takim działaniem spółki”
„Zadowolona takim działaniem” – zamiast prawidłowo: „zadowolona z takiego działania” – to kalka z języka rosyjskiego („довольна такой деятельностью”).
Ciekawe. Przytomna uwaga.
„byłabym zadowolona takim działaniem spółki, bo dzięki temu moja inwestycja w akcje, przynosiłaby zyski, zatem takie działanie uznać należy za pożądane i etyczne”
Jak można z własnej woli napisać tak głupie zdanie?
Etyczne???? Chciałbym poznać twoją definicję np. moralności :)
Czyli jeśli spółka działa niemoralnie, na granicy prawa ( czy poza granicami to już oceni sąd ) to dobrze? Co następne? Spółki które wyzyskują pracowników bo to przynosi większe zyski?
wygląda na to że wynajął kiepską agencję – ich teksty brzmią tak topornie i sztucznie że nawet model ocenia je na niewiarygodne
Agencjo H..e, zatrudnijcie kogoś bardziej kumatego bo od waszych komentarzy aż oczy bolą.
Newag już nie tylko blokuje własne pociągi ale też własną stronę? Bo coś od rana nie idzie na nią wejść.
„Adam Haertle dodał 10 grudnia 2023 o 13:38” – o minutę za późno ;-)
Logika podpowiada, że to dość prosta odpowiedź, kto to zlecił…producent.
W dzisiejszym świece biznesu największe pieniądze zarabia się na częściach i serwisie.
Skoro „obce” serwisy nie dawały rady, płaciły kary to cały rynek przejmował producent.
I to jest odpowiedź.
tu cudzysłów powinien być przy „nie dawały rady”
nie dawały rady „john deere style”
is fecit, cui prodest
Stare przysłowie mówi: „zrobił to ten, któremu się to opłacało”.
Kto był beneficjentem takiego obrotu spraw? Nie wiem choć się domyślam.
Świetnie się to czyta. Jak kryminał. Z niecierpliwością czekam na ciąg dalszy :)
Producent zdaje się w dość nieudolny sposób tłumaczyć – poprzez oczernianie wszystkich wkolo. Juz nie tyko badaczy ale też SPS. Szkoda ze kolei dolnośląskich jeszcze nie. Nawet podpisów cyfrowych nie stosują do swoich fw. Jeśli dojdzie do jakichś przeszukan lub podobnych interwencji to speawa zdaje się być prosta – sprawdzic commity.
Poza tym, zastanawia jeszcze jedna kwestia. Oryginalny artykuł wspomina że chłopaki z DS identyfikowali w pociągach urządzenie które było podpięte do modemu GSM. Ciekawe czy ktoś pociągnie ten temat…
+1
O to to! Też nie łapię tego kawałka. Newag mógł czy nie mógł aktualizować soft OTA? Czy może w międzyczasie pociąg był na jakiejś planowanej aktualizacji softu i przy okazji to zmienili?
Albo pociąg był w Newagu albo serwis Newagu był w pociągu.
Z prezentacji live wynikało, że Newag nie mógł na ten moment robić update OTA. Dodatkowe urządzenie było podpięte ale zdawało się nie działać. To mogło być przygotowane na kolejne etapy „psucia”, znaczy zdalnego „supportu” przez producenta (może jakieś testy zostawione na produkcji?)
Ciągle mnie zastanawia w jaki to sposób kombinacja przycisków do odblokowania przestała działać we wszystkich pociągach skoro nie można było robić zdalnych operacji po GSM? Przecież samo nie przestawało to działać ot tak. Wszystkie pociągi były w tym samym czasie w serwisie Newaga?
Dobre pytanie. Jeśli aktualizacja kodu zdalnie nie była możliwa, w jaki sposób ktoś zdalnie zdjął możliwość odblokowania pociągu? Coś się w tym artykule nie klei.
Ekipa Dragon Sector zrzuca pamięć komputera -> skład idzie na „naprawę” do newagu -> Dragon Sector zrzuca oprogramowanie po powrocie.
Z porównania stanu przed i po wynika zmiana w zakresie blokad.
No ale to się nadal nie klei.
To po co opracowywali narzędzie do odblokowania pociągów skoro i tak wszystkie leciały do newaga? Piszą że 25 pojechało do newaga, a 30 odblokowali bez pomocy newaga? To ile tych pociągów jeździ po torach? Trochę nieścisłości tu jest, ale może z czasem pokaże się całokształt.
A skąd wyczytałeś te liczby?? Bo nigdzie nie napisano, że taka ilość składów pojechała finalnie na serwis do NEWAG-u. Napisano wyraźnie, że zmianę kodu odkryto w tych jednostkach które pojechały na serwis, ale było to już po informacji, że DS odczytało z oprogramowania kod odblokowujący czyli pomogli serwisom uruchomić zablokowane pociągi.
Nie zrobili tego zdalnie. Dość często mieli do nich dostęp i po prostu fizycznie wgrywali nową wersję, jak akurat jakiś pojazd był u nich.
To ci bujna wyobraźnia tych hakerów i całej reszty. Normalnie matrix. Czyli nie było żadnych usterek tylko blokady wpisane w oprogramowanie? Czekam z dziką niecierpliwością na opinie biegłych sądowych. Twarde dowody, że były jakieś blokady. Pasjonujące
Ej chłopaki z agencji PR wynajętej przez Newagm tutaj nie ma leszczy którzy by łykali Wasze kity. Zmieńcie płytę, bo ta się chyba zacięła.
Macie nas czytelników za idiotów? 90% z nas to hakerzy, rozumiemy doskonale o czym jest ten artykuł.
Z przyjnoscia podejmę rękawicę,
Oho, marionetka Newagu się poruszyła :D
Ej, typki z agencji PR. Jak wam sie udaje namówić babcie na zakup proszku to już myślicie, że jesteście demiurgami świadomości. Nie, tutaj jest techniczne forum specjalistów od cyberbezpieczeństwa.
Takich leszczy jak Wy tu się rozpoznaje po pierwszym zdaniu i klasyfikuje w tym samym kubełku co nigeryjscy książeta i fejkowi sprzedawcy.
A czym się różni fizyczna usterka falownika od odpowiednio zmodyfikowanego firmware powodującego błędne działanie lub blokadę falownika? Niczym. Skutek jest ten sam.
A mnie nadal zastanawia w jaki sposób został odczytany kod z komputera sterującego. Praktycznie każdy programowalny układ scalony ma możliwość założenia blokad odczytu kodu. Dowiedziałem się że rzekomo pamięć programu nie była zablokowana. Bardzo ciekawe. Ktoś wsadził do kodu funkcje wrednie blokujące pojazd ale jednocześnie samego kodu nie zablokował?
Zapisz się do zespołu to się wszystkiego dowiesz. W ciepłych kapciach z garnuszkiem ciepłej herbaty siorbiąc chcesz prowadzić śledztwo? Informatycy nie mają obowiązku tłumaczyć jak dobierają się do kodu.
Natomiast sam fakt blokad jest znany z USA gdzie Louis Rossmann walczył o „prawo do naprawy” aby wielkie koncerny tego nie blokowały (John Deere, Apple, itp.).
Procesor w środku Selectron CPU831 nie umożliwia zablokowania odczytu.
@Maciek. Mylisz się. Z większości zabezpieczonych MCU wsad da się odczytać (sprawdzone). Wysyłasz procek do Chin, potem po wpłaceniu pierwszej raty np. 1700$ wysyłają ci dwa sklonowane procesory. Jeżeli wszystko działa to wpłacasz drugą ratę i dostajesz zawartość pamięci na maila. Najtaniej wychodzą 8 bitowe AVR-ki, czy inne PICe, ale już 32 bitowe ARMy idą w tysiące USD. Owszem istnieją procesory tzw. bezpieczne które na obecną chwilę są nie do ruszenia i gdyby właśnie takich użyli, nie byłoby afery. Ale jak słyszę, że nawet te nie były zabezpieczone to śmiać mi się chce- amatorzy:)
Dokonania badaczy/hakerów, którzy wykazali nieuczciwe i przestępcze działania Newagu, wyniosą ich ze stratosfery w daleki kosmos!
Zasłużyli sobie na najwyższe uznanie!
A za jakiś czas, zostaną opisane w jakieś ciekawej książce, takiej jak „Odliczając do dnia zero”. Czego im życzę!
Nie mogę się doczekać, kiedy Newag uklęknie i przeprosi…
To był PLC ale pewności nie mam czy poza tym coś jeszcze było. Było wspomniane o kodzie drabinkowym co jest jednym z języków programowania PLC. To jest zupełnie inny świat niż IT, jest wiele PLCków na fabrykach gdzie wystarczy fizyczny dostęp i można nawet zgrać kod źródłowy. Tutaj chyba nie było to możliwe ale jeśli chodzi o commity, zależy od producenta PLC, w wielu do tej pory coś takiego jak wersjonowanie kodu i git praktycznie nie istnieje.
Dokładnie, PLC programuje się zupełnie inaczej. Tam się klika makrocele i definiuje parametry. To nie jest „pisanie kodu” takie jak podczas normalnego programowania. Kompilacja też odbywa się wewnątrz samego sterownika. Orzechy przeciwko dolarom że to sterowniki PCL firmy … nomen-omen SiemenS.
Nope, to są Selectron CPU831 i nie zapisują w środku kodu źródłowego wgrywanej aplikacji. Tam leci: bloczki PLC -> codegen do C -> gcc-tricore.
Newag w swoim stanowisku z grudnia wspomina, że im się takie praktyki po prostu nie opłacają bo to raptem 5% ich przychodu. Oczywiście to brednie, % też pewnie zaniżony ale nawet zakładając że serwis tych zestawów mógłby stanowić 15% dochodów, na miejscu posiadaczy innych produktów tej firmy zaczął bym się zastanawiać nad strategią na wypadek awarii.
Ich 5% to kogoś 100% więc tym bardziej opłaca im się wyciąć konkurencję :) Chyba sami na siebie działa wytaczają takimi tekstami.
Oj skończy się trzepaniem przez Urząd Skarbowy, powinni im zaglądnąć w księgowane koszty.
Słowo klucz to przychód! Jako producent fizycznego towaru, jakim jest pociąg, mają spore koszta związane z zakupem materiału i energii. Serwis natomiast to usługa, a tej można nadać niebotyczną marżę.
Mam nadzieje ze juz nikt nie kupi ani jednej maszyny od tego Janusza. Niech zabiera juz te swoje miliony i zacznie sobie kupowac pampersy, stary ubek
a mi się nasuwa inna myśl (zwłaszcza po lekturze Mitnicka)… badanie wykonane przez „hackerów” będą podważane bo to „hackerzy”. Nie wiem czy żurnaliści nie zrobili krzywdy chłopakom i całej sprawie tym terminem.
w stanach takie coś działa bo argumentujesz przed radą przysięgłych i to są zwykli ludzie, którzy mogą być podatni na semantykę. U nas jednak trudniej bo argumentujesz przed zespołem sędziów
> Nie ma tu zatem żadnych wątpliwości – badanie programu w celu jego naprawy (a w końcu pociąg, który nie jedzie, wymaga naprawy) jest prawnie dozwolone.
czy usuwanie DRM, w szczególności DRM spowalniającego działanie bądź uniemożliwiającego uruchomienie, podpada pod naprawę?
oczywiście zdaję sobie sprawę z różnicy między samodzielnym badaniem i modyfikacją a pobraniem zmodyfikowanej wersji, gdzie w wypadku oprogramowania nie obowiązuje nawet „już udostępniony”
ale tutaj nie usunięto DRM-a tylko wykorzystano zainstalowaną w DRMie funkcjonalność która pozwala na zdjęcie blokady bez żadnej modyfikacji w kodzie DRM’a
generalnie przyjęte jest za dopuszczalne modyfikowanie kodu programu na własne potrzeby jeśli jest to konieczne do jego uruchomienia jak i do naprawy
czy wolne działanie wymaga naprawy? nie wiadomo, nikt nigdy nie wyciągał z tego konsekwencji, ale nie znaczy to automatycznie, że gdyby ktoś się uparł i pozwał ambitnego hackera to by się dobrze skończyło
Tutaj DRM (o ile można to tak nazwać) nie był częścią umowy na pociąg – wręcz przeciwnie, był wprost wbrew warunkom przeprowadzonego przetargu, a więc wątpię, że Newag by chciał pójść taką ścieżką sądową.
A mnie się wydaje że te kombinacje zrobił ktoś na własna rękę u producenta. Na dodatek nieudolnie. W jednym pociągu taka blokada a w drugim inna, jeszcze w trzecim i kolejnych co innego. Ktoś z informatyków tworzących oprogramowanie od podstaw w obawie o przyszłe zyski po prostu „namieszał” bez wiedzy swoich przełożonych. Takie numery to nie jest robota „smarkacza” ale też żaden fachowiec wysokich lotów by na to nie poszedł, zwłaszcza ze tu chodzi i bezpieczeństwo transportu. Proponuję poszukać pośród twórców programu kogo wyautowano z projektu. To wygląda tak jakby się ktoś chciał zemścić.
Uhmm i serwisant Newag korzystał z tej nieudokumentowanej funkcjonalności gdy chciał na szybko uruchomić skład. Seems legit.
Randomizacja zachowań proszę pana. Jakby wszystkie składy miały takie same warunki to łatwiej użytkownicy mogliby ustalić sytuacje, które prowadzą do blokady. A tak w jednym to, w innym sio, co tu się dzieje? Wygląda na zaplanowaną akcję, nie robotę kreta-amatora-mściciela. Informatyk w życiu by takiego warunku samodzielnie nie wrzucił, bo jego pensja nie zależy od usług serwisowych taboru kolejowego. Poza tym każdy programista pozostawia po sobie łatwy do przejrzenia kod i wpis w systemach wersjonowania kto i kiedy go dodał, narażając się na odszkodowania i może nawet odsiadkę (działanie na szkodę, sabotaż itd). Nie, to zaplanowana akcja, działanie za zgodą i w porozumieniu. Pytanie kto w firmie wiedział jest otwarte, ale jak się dobiorą programistom do dupy to zacznie się sypanie kto zlecił. Po nitce do kłębka… Ciekawe, czy w firmie nie mają teraz miejsca czyszczenie kodu, „palenie” dysków, awarie macierzy, z utratą archiwalnych danych itp…
Tia, już widzę jak w takim przedsiębiorstwie jeden samotny, zły „informatyk” implementuje takie fikołki w oprogramowaniu PLC.
Tutaj nasuwa się pytanie – gdzie jest QA, gdzie kontrola jakości w tak ważnym obszarze, gdzie testy security, audyty… No nie chcę drążyć dalej, po co kopać leżącego – znów wyszłoby, że Newag to zwykły Januszex.
A jest jeszcze gorzej, bo to Januszex do potęgi, działający niejawnie na szkodę innych przedsiębiorstw, kłamiący w żywe oczy i implementujący backdoory w swoich sterownikach.
Zamiast wziąć to na klatę, to próbują robić ze specjalistów idiotów.
No oby nie tym razem. Pomimo, że to polskie przedsiębiorstwo, to mi nawet nie szkoda, wręcz jest po prostu WSTYD.
Być może różnice w zastosowanych warunkach biorą się z tego, że dla każdego podtypu pojazdu dla poszczególnych przewoźników używano odrębnych gałęzi kodu i stosowne zmiany były przenoszone pomiędzy nimi.
Tak, a w Volkswagenie to jeden inżynier był zaniepokojony emisjami CO2, i zrobił wszystko na własną rękę.
Czy ktoś wie jaki mikrokontroler był zastosowany w sterownikach Newagu?
okaże się, że N faktycznie nie wprowadzał blokad w „swoim” oprogramowaniu tylko zewnętrzna firma której N zlecał pisanie systemu?
cytat ze strony tejże:
„Firma I DS S.A. jest częścią grupy kapitałowej N S.A. – jednego z najstarszych polskich producentów taboru kolejowego. Działalnością Spółki jest projektowanie i produkcja systemów sterowania pojazdami TCMS, urządzeń energoelektronicznych oraz aparatury rozdzielczej WN i NN przeznaczonych dla pojazdów trakcyjnych, a także dla pojazdów spalinowych i hybrydowych.”
Jaka jest geolokalizacja IP 15% komentarzy? :D
Nie, ze zdjęć nie wygląda mi to na żaden znany sterownik Siemensa! Obadam jeszcze temat jutro. Tak, istnieje możliwość ściągnięcia kodu źródłowego ze sterownika PLC, o ile nie jest zablokowany OEMLockiem. Z dotychczas ujawnionych informacji w necie nie da się tego wywnioskować – no chyba że coś więcej było ujawnione na tej konferencji.
Nie, to nie Siemens, tylko Selectron CPU831.
Z większości jak nie ze wszystkich PLC można ściągnąć już skompilowany kod. Co często się wykorzystuje do robienia backupu przed wrzuceniem nowej wersji ;)
Często jest tak, że nikt nie wie gdzie jest ostatnia wersja tego pieprzonego kodu lub która to jest ta aktualna – kod_v2_final_poprawiony_final2.zip
W takiej sytuacji aktualizacja kodu na PLC zaczyna się od ściągnięcia z niego tego, co działa ;)
No czasami to ściąganie nie idzie tak jak zaplanowaliśmy.
Ja kiedyś położyłem sterownik Siemensa robiąc compare’a! Do tej pory nie mam pojęcia czemu – cały RAM się wyzerował! Został tylko OB1, tyle że pusty :-(
Cała linia stanęła! Trzeba było na szybko wgrać co było na pendrivie bez pytania czy to aktualne!
Tak, też już znalazłem że to Selectron.
Nie pracowałem na tych Selectronach i mam pytanko: czy w tych sterownikach nie da się ściągnąć programu (upload) jak w zwykłych PLC? Trzeba aż do pamięci się dobierać bezpośrednio? Czy to jest aż taki problem kupić soft od producenta i po prostu ściągnąć kod ze sterownika? Ja rozumiem że starsze sterowniki nie przechowują kodu źródłowego z komentarzami, ale wszystkie na których do tej pory pracowałem pozwalały ściągnąć oryginalny kod (drabinkę, IL, FBD, czy co tam jeszcze siedziało) o ile sterownik nie był zahasłowany.
Ten konkretny nie zapamiętuje źródeł (Selectron CPU831), a oryginalne oprogramowanie producenta nie pozwala nawet na zgranie kodu maszynowego. Trzeba zrobić własny tooling na bazie protokołu używanego przez ten soft.
Na giełdzie grał bym na spdek cen akcji :D, na spadkach cen akcji tez można sporo zarobić. A zastanawiam sie czy akcjonariusze mogą za tą aferę pozwać zarząd?
Przypuszczam, że ABW oraz inne trzyliterowe służby już dotrły do wszystkich byłych i obecnych programistów i serwisantów pracujących dla, lub na zlecenie Newag. Tych commitujących istotne wersje nie było raczej zbyt wielu. Teraz istotna jest tylko kwestia, jak daleko pogrąży się Pan Prezes? Idę po popcorn ;)
Chłopaki to przekozaki, jak znajdziemy kiedyś rozbite UFO to oni je naprawią i odpalą na nim dooma.
„Dokumentacja bez pisemnej zgody autora nie może być powielana, odstępowana i sprzedawana osobom trzecim (podstawa prawna – tekst jednolity: Dz. U. z 2019 r., poz. 1231.).
Dokumentacja przekazana Użytkownikowi może być wykorzystana i powielana do obsługi, utrzymania, przeglądów, napraw i modernizacji pojazdów będących w jego eksploatacji i utrzymaniu.
Wykorzystywanie do innych celów możliwe jest jedynie na podstawie pisemnej zgody autora”
To ze strony 3 dokumentacji, którą wrzuciliście. @z3s jesteście pewni że możecie ją tu zamieszczać?
Nie zamieściliśmy żadnej dokumentacji.
Coś jak IDDQD i IDKFA 😉
Stuxnet też nie zmienił ani bajta kodu sterowników PLC tylko modyfikował parametry …
Na stronach Newag pojawiła się „Biała Księga NEWAG S.A. ws. nielegalnych działań hakerów” z obszernymi wyjaśnieniami.
M.in. jacy Ci hakerzy są źli ;)
Na stornie onetu pojawil sie artykul na ile prawdomowny jest Newag ktory nie panuje nad swoim cierpware:
https://wiadomosci.onet.pl/kraj/skandal-na-kolei-pociag-newagu-stanal-bo-znowu-nadszedl-21-grudnia/41mdspf
Warto dodać że Newag pozwał hakerów z Dragon Sektor ii SPS o naruszenie praw autorskich