Pamiętacie Dieselgate, skandal, w wyniku którego niektóre pojazdy z silnikiem Diesla wykrywały badanie emisji i jeździły ekologicznie, „oszukując” test? Traingate może po prostu spojrzeć na to z innej perspektywy. Opowiemy historię od początku, ale zapnij pasy i przygotuj się na dziką i zadziwiającą przejażdżkę. Wszystko zaczyna się od remontu technicznego polskich pociągów. Pociągi te zbudowała firma Newag, która ubiegała się o kontrakt na konserwację, ale kontrakt wygrała inna firma, SPS. Ten rodzaj remontu polega na rozbiciu każdego pociągu na części, sprawdzeniu, smarowaniu itp. i ponownym złożeniu wszystkiego w całość. Pierwszy pociąg przeszedł ten proces, został całkowicie zmontowany, a następnie odmówił jazdy. Po wyczerpaniu wszystkich konwencjonalnych metod rozwiązywania problemów firma SPS sprowadziła hakerów.
Dragon Sector to polska grupa badawcza, która zyskała światową sławę popracuj nad bezpieczeństwem BIOS-u laptopa Toshiba. I okazuje się, że to była idealna grupa do tego zadania. Od łączenia sprzętu po ulepszenie obsługi architektury Infineon TriCore przez firmę Ghidra – włożono wiele pracy, aby nawet uzyskać dostęp do systemów pociągu. Ale w końcu mogli zrobić zrzuty pamięci i porównać zepsuty pociąg z działającym. Istniał zestaw flag konfiguracyjnych, które wydawały się trzymać klucz. Ale ten konkretny pociąg był bardzo potrzebny w służbie. W końcu skontaktowano się z Newagiem, pierwotnym producentem, aby dokończyć konserwację i przywrócić pociąg do ruchu. Hakerzy nie są jednak niczym, jeśli nie są wytrwali. Po przeciągnięciu całonocnej imprezy i mając dosłownie kilka minut wolnego czasu, Dragon Sector był w stanie nadpisać pamięć zepsutego pociągu prawidłową konfiguracją i ponownie ożył.
Na razie nic tutaj nie wydaje się podejrzane. Kontrole rozruchowe po konserwacji mogą łatwo zakończyć się niepowodzeniem, prowadząc do tego rodzaju sytuacji. Ale Dragon Sector kopał dalej, udoskonalał swoje narzędzia i wydobywał kolejne sekrety z oprogramowania pociągu. A to, co odkryli, było zdumiewające. Na początek podano współrzędne GPS, odpowiadające każdej stacji kolejowej w Polsce, która jest w stanie przeprowadzić tego rodzaju remonty. Jeśli pociąg stał na terenie stacji obsługi technicznej innej niż Newag przez ponad 10 dni, flaga zostałaby uruchomiona i pociąg zostałby wyłączony. Trudno postrzegać tę „funkcję” inaczej niż rażącą próbę zamurowania pociągu, który nie wrócił do Newag w celu konserwacji. Ale czekaj, jest tego więcej.
Wymiana niektórych komponentów doprowadziłaby do podobnego uszkodzenia, dopóki nieudokumentowany kod do gry nie został wpisany do głównej konsoli komputera w pociągu. W innym przypadku pociąg zepsułby się po przejechaniu miliona kilometrów. W określonym dniu zaplanowano awarię innego pociągu z powodu wadliwej sprężarki, a błąd w programie opóźnił tę awarię na rok później. W sumie Dragon Sector obejrzał 29 pociągów w całej Polsce i w 24 z nich znalazł te wspaniałe niespodzianki. Za pośrednictwem polskiego CERT Polska o sprawie powiadomiono organy ścigania.
W odpowiedzi, Newag oskarżył Dragon Sector o pomówienia i przestępstwa komputerowe, a także stanowiące zagrożenie dla bezpieczeństwa kolei. Jedyne, co możemy powiedzieć, to to, że mamy nadzieję, że dokładne dochodzenie ustali prawdę w tej sprawie i pociągnie prawdziwych przestępców do odpowiedzialności.
Zawsze jest to DNS
Czy zastanawiałeś się kiedyś, w jaki sposób serwer DNS otrzymuje aktualizacje dotyczące nazw DNS? Okazuje się, że jest kilka sposobów. Jednym z nich jest bezpośrednie wysyłanie aktualizacji przez klientów, reklamowanie ich nazwy DNS i adresu IP. Dynamiczne aktualizacje DNS są obsługiwane na wielu serwerach DNS, w tym w usłudze Active Directory (AD), i prawie w każdej implementacji zapewnia to rozsądną implementację zabezpieczeń. Z drugiej strony w ramach żądania DHCP wysyłane są również aktualizacje DNS. I tych… mieć problemy.
Ten artykuł skupia się głównie na usłudze Active Directory, ale nie zdziwiłoby nas, gdybyśmy znaleźli podobny problem w innych serwerach DHCP. Mianowicie aktualizacja DNS nie jest uwierzytelniona. Każde urządzenie, któremu nadano adres IP, może jednocześnie zażądać nazwy DNS. Działa to w środowisku serwera Microsoft w ten sposób, że usługa DNS używa własnych poświadczeń w celu przekazania aktualizacji DNS do serwera DNS. Jeśli są to dwa oddzielne serwery, a nazwa jest już zarejestrowana bezpośrednio przez inny host, aktualizacja nie powiedzie się. Ale nieodebrana nazwa, a nawet sama nazwa serwera DHCP są do przejęcia. W przypadku usług DNS i DHCP działających na tym samym serwerze w grę wchodzi właściwie dowolna nazwa DNS. A w środowisku AD pozwala to na wszelkiego rodzaju dalsze ataki na uwierzytelnianie.
Problemy te zgłoszono firmie Microsoft, która uznała je za znane problemy, które nie zasługują na naprawę. Warto o nich wiedzieć budując sieć AD. Aby pomóc nam uniknąć kłopotów, napisał Akamai Wywołaj-DHCPCheckup jako narzędzie PowerShell do sprawdzania problemów.
Wykonaj slajd JMP
Istnieje technika używana podczas pisania exploitów, slajd NOP. Jest to seria poleceń braku operacji, po których następuje docelowy kod powłoki. Pomysł jest taki, że luka przeskoczy gdzieś w obszarze pamięci kontrolowanym przez osobę atakującą, ale dokładne miejsce docelowe może być różne. Jest to używane tak często, że bloki danych o rozmiarze 0x90 są jedną z oznak, że może to być złośliwe. występuje problem ze slajdem NOP, ponieważ przejście przez wszystkie instrukcje NOP do atrakcyjnego kodu powłoki może zająć więcej czasu. I właśnie tam w grę wchodzi slajd JMP.
Podstawą jest to, że wiemy, ile bajtów pozostało na slajdzie, dzięki czemu możemy użyć instrukcji JMP, aby przejść od razu do ładunku. To świetnie, z wyjątkiem wyrównania. Mianowicie kod maszynowy x86 swobodnie łączy instrukcje i argumenty. Jeśli nie wiesz dokładnie, gdzie instrukcja wyląduje w buforze, skąd wiesz, czy masz zamiar wykonać jmp, czy też wykonać przesunięcie jako instrukcję? Istnieje kilka oczywistych sposobów podejścia do tego, na przykład użycie wartości 0x90 jako argumentu dla JMP, po którym następuje znacznie mniejsza strefa przesuwania NOP w celu przechwycenia JMP.
To również stanowi pewne wyzwanie, ponieważ polecenie JMP opiera się na przesunięciach, które mogą być dodatnie lub ujemne, a 0x90 jest przesunięciem ujemnym. To może zadziałać, ale cały ładunek kodu powłoki musi zostać skonstruowany wstecz, aby nim zarządzać. Jest jeszcze jedna opcja, kody operacji JCC skoku warunkowego. Są to 0x70-0x7F w kodzie maszynowym, które mają dodatnie przesunięcia. Jedynym problemem jest to, że skoki te są uzależnione od wartości rejestru, która jest nieznana. Ostatecznym rozwiązaniem jest dwukrotne użycie kodu operacji Jump if Greater, a następnie dwukrotnie kodu operacji Jump if Less lub Equal. Obydwa mają dodatnie przesunięcia i obydwa czynią stały postęp, przechodząc przez slajd JMP, by w końcu wylądować na małym slajdzie NOP i w końcu uruchomić kod powłoki. Sprytny!
Bity i bajty
Po zwolnieniu może pojawić się pokusa, aby spalić za sobą mosty. Jeśli obejmuje to czyszczenie repozytoriów kodu, usuwanie plików dziennika, zabranie do domu zastrzeżonego kodu, kradzież służbowego laptopa i podszywanie się pod współpracowników… może nie. Inżynier oprogramowania z First Republic Bank po prostu nie mógł oprzeć się pokusie i odsiedzi dwa lata więzienia, trzy lata w zawieszeniu i zapłaci 529,000 XNUMX dolarów tytułem odszkodowania. Zdecydowanie nie warto.
A dla przypomnienia, dlaczego nie wszystko musi być podłączone do sieci lub Internetu, zobacz skutki cyberataku na Kyivstar na Ukrainie. Ten dostawca usług telefonicznych i internetowych został wyłączony we wtorek w wyniku prawdopodobnie niszczycielskiego ataku polegającego na wymazaniu danych. Banki i sklepy są zamknięte z powodu awarii przetwarzania płatności, a co najmniej jedno miasto musiało ręcznie odłączyć oświetlenie uliczne od sieci energetycznej, ponieważ kontroler oprogramowania został wyłączony w wyniku ataku. Może jednak stare mechaniczne liczniki czasu były lepsze.
- Dystrybucja treści i PR oparta na SEO. Uzyskaj wzmocnienie już dziś.
- PlatoData.Network Pionowe generatywne AI. Wzmocnij się. Dostęp tutaj.
- PlatoAiStream. Inteligencja Web3. Wiedza wzmocniona. Dostęp tutaj.
- PlatonESG. Węgiel Czysta technologia, Energia, Środowisko, Słoneczny, Gospodarowanie odpadami. Dostęp tutaj.
- Platon Zdrowie. Inteligencja w zakresie biotechnologii i badań klinicznych. Dostęp tutaj.
- Źródło: https://hackaday.com/2023/12/15/this-week-in-security-traingate-dns-and-jmp-slides/
- :ma
- :Jest
- :nie
- :Gdzie
- $W GÓRĘ
- 000
- 10
- 24
- 29
- a
- Zdolny
- O nas
- Konto
- oskarżony
- w poprzek
- aktywny
- Active Directory
- Ad
- sieć reklamowa
- adres
- Reklama
- Po
- ponownie
- agencje
- Akamai
- wyrównanie
- Wszystkie kategorie
- pozwala
- już
- również
- zawsze
- an
- i
- Inne
- każdy
- wszystko
- pojawia się
- podejście
- architektura
- SĄ
- POWIERZCHNIA
- argument
- argumenty
- AS
- At
- atakować
- Ataki
- próba
- Uwaga
- uwierzytelniony
- Uwierzytelnianie
- z powrotem
- Łazienka
- źle
- Bank
- Banki
- na podstawie
- podstawa
- BE
- bo
- być
- Początek
- jest
- Ulepsz Swój
- stawka
- Bit
- BleepingComputer
- Bloki
- obie
- przerwa
- awaria
- Przełamując
- mosty
- Złamany
- przyniósł
- bufor
- Budowanie
- wybudowany
- palić
- ale
- by
- oprawa ołowiana witrażu
- CAN
- zdolny
- walizka
- zapasy
- pewien
- wyzwanie
- ZOBACZ
- Wykrywanie urządzeń szpiegujących
- Miasto
- odkurzacz
- klientów
- zamknięte
- kod
- jak
- byliśmy spójni, od początku
- sukcesy firma
- porównać
- kompletny
- składniki
- komputer
- systemu
- połączony
- Rozważać
- Konsola
- umowa
- kontroler
- Konwencjonalny
- Odpowiedni
- mógłby
- Para
- Listy uwierzytelniające
- przestępcy
- Cyber atak
- dane
- Data
- Dni
- Zdecydowanie
- opóźniony
- miejsce przeznaczenia
- wykryć
- niszczycielski
- urządzenie
- diesel
- bezpośrednio
- niepełnosprawny
- dns
- do
- robi
- zrobić
- nie
- na dół
- smok
- z powodu
- dynamiczny
- każdy
- z łatwością
- emisje
- egzekwowanie
- inżynier
- Cały
- Środowisko
- równy
- błąd
- zapewniają
- itp
- Parzyste
- ostatecznie
- Każdy
- wszystko
- dokładnie
- Z wyjątkiem
- wykonać
- exploity
- FAIL
- fallout
- daleko
- Akta
- finał
- W końcu
- Znajdź
- zwolniony
- i terminów, a
- Fix
- Flagi
- koncentruje
- następnie
- W razie zamówieenia projektu
- Naprzód
- znaleziono
- swobodnie
- od
- w pełni
- dalej
- zdobyte
- otrzymać
- miejsce
- GitHub
- dany
- Go
- GPS
- chwytaków
- wspaniały
- większy
- Krata
- Zarządzanie
- hakerzy
- miał
- ręka
- dzieje
- Ciężko
- sprzęt komputerowy
- Have
- pomoc
- tutaj
- uderzanie
- przytrzymaj
- Strona główna
- nadzieję
- gospodarz
- W jaki sposób
- Jednak
- HTML
- HTTPS
- pomysł
- if
- realizacja
- poprawy
- in
- W innych
- obejmuje
- Włącznie z
- Infineon
- wewnątrz
- instrukcje
- Internet
- najnowszych
- śledztwo
- dotyczy
- IP
- Adres IP
- problemy
- IT
- JEGO
- samo
- Praca
- jpg
- skok
- skoki
- właśnie
- Trzymać
- trzymane
- Klawisz
- Wiedzieć
- Wiedząc
- znany
- Kraj
- laptopa
- później
- Prawo
- egzekwowanie prawa
- prowadzić
- prowadzący
- najmniej
- lewo
- mniej
- życie
- lubić
- dosłowny
- mało
- log
- dłużej
- wyglądał
- Partia
- maszyna
- Główny
- konserwacja
- robić
- zarządzanie
- zarządza
- ręcznie
- Producent
- wiele
- Może..
- może
- środków
- mechaniczny
- Pamięć
- Microsoft
- milion
- minuty
- miksy
- jeszcze
- ruch
- dużo
- wielokrotność
- Nazwa
- mianowicie
- Nazwy
- potrzebne
- wymagania
- ujemny
- sieć
- Nie
- nic
- oczywista
- of
- offset
- przesunięcia
- często
- Stary
- on
- pewnego razu
- ONE
- te
- tylko
- Kod operacji
- działanie
- Option
- or
- oryginalny
- Inne
- na zewnątrz
- koniec
- Remont
- własny
- część
- szczególny
- Zapłacić
- płatność
- przetwarzanie płatności
- doskonały
- telefon
- plato
- Analiza danych Platona
- PlatoDane
- Grać
- Polska
- Polski
- pozytywny
- power
- Sieć energetyczna
- PowerShell
- bardzo
- więzienie
- Problem
- wygląda tak
- przetwarzanie
- Programowanie
- Postęp
- własność
- dostawca
- ciągnięcie
- położyć
- Putting
- całkiem
- Kolej żelazna
- rozsądny
- rafinacja
- zarejestrować
- zarejestrowany
- przypomnienie
- Zgłoszone
- Republika
- zażądać
- Badania naukowe
- Grupa poszukiwawcza
- odpowiedź
- zmarszczka
- prawo
- run
- bieganie
- Bezpieczeństwo
- taki sam
- powiedzieć
- Skandal
- zaplanowane
- tajniki
- sektor
- bezpieczeństwo
- widzieć
- wydawało się
- wydaje
- wysłać
- wysłany
- oddzielny
- Serie
- służyć
- serwer
- serwery
- usługa
- Usługi
- zestaw
- podobny
- sytuacja
- suwak
- slajdy
- mały
- mniejszy
- So
- Tworzenie
- Software Engineer
- rozwiązanie
- kilka
- gdzieś
- sztywny
- rozpocznie
- startup
- stały
- sklep
- Historia
- ulica
- wsparcie
- Utrzymany
- niespodzianka
- niespodzianek
- podejrzliwy
- systemy
- Brać
- Zadania
- biorąc
- Podsłuchu
- cel
- technika
- powiedzieć
- mówi
- test
- niż
- że
- Połączenia
- ich
- Im
- następnie
- Tam.
- Te
- one
- to
- w tym tygodniu
- tych
- chociaż?
- zagrożenia
- trzy
- Przez
- czas
- do
- razem
- powiedział
- także
- narzędzie
- narzędzia
- Toshiba
- Pociąg
- pociągi
- wyzwalać
- kłopot
- prawdziwy
- Prawda
- Wtorek
- włącza
- Dwa razy
- drugiej
- nieznany
- aż do
- Aktualizacja
- Nowości
- na
- us
- posługiwać się
- używany
- zastosowania
- za pomocą
- ważny
- wartość
- Wartości
- Pojazdy
- początku.
- wrażliwość
- czekać
- chcieć
- była
- Droga..
- sposoby
- we
- tydzień
- DOBRZE
- poszedł
- były
- Co
- jeśli chodzi o komunikację i motywację
- który
- KIM
- dlaczego
- Dziki
- będzie
- wycieranie
- w
- Wygrał
- wspaniale
- Praca
- pracujący
- działa
- na calym swiecie
- wartość
- godny
- by
- pisanie
- napisany
- rok
- lat
- jeszcze
- ty
- Twój
- zefirnet