Zgłosił błąd w dziurawym systemie biletów miejskich, został zatrzymany

Czasem na rynku pojawiają się aplikacje, których miejsce jest w kolejce do testów, a nie we wdrożeniu na produkcji. Świetnym przykładem takiej sytuacji może być system miejskich biletów, wdrożony niedawno w Budapeszcie.

Gdy goni termin i zespół odpowiedzialny za wdrożenie poddawany jest różnym naciskom, dzieją się rzeczy, o których filozofom się nie śniło. Architekt bezpieczeństwa nie ma nic do powiedzenia, deweloperzy idą na skróty, testy skracane są do weryfikacji czy system się uruchamia i ogłaszane jest zwycięstwo. Niestety skutki takich działań prędzej czy później okazują się opłakane.

Szybkie wdrożenie

Laszlo Marai opisuje smutną historię budapesztańskiego systemu biletu miejskiego, wdrożonego przez miejską spółkę transportową wspólnie z firmą T-Systems Hungary. System ruszył pierwszego dnia mistrzostw świata w pływaniu, które odbywały się w Budapeszcie. Jego premiera była zaskoczeniem – nikt nie słyszał o żadnych wcześniejszych testach. System został oparty o witrynę WWW – rozwiązanie przyjazne użytkownikom, ale będące dużym wyzwaniem dla twórców aplikacji z punktu widzenia bezpieczeństwa. Nie będzie chyba dla Was zaskoczeniem, że już w pierwszych dniach działania nowego systemu znaleziono w nim trochę błędów.  Niestety słowo „trochę” jest tutaj dużym niedomówieniem, ponieważ okazało się, że:

  • system przechowuje hasła użytkowników otwartym tekstem i odsyła je emailem w procesie odzyskiwania hasła,

Some background info: FINA 2017 just began in Budapest, the local transport authority had a hard deadline to roll out the e-tickets/passes.

  • manipulacja parametrami wywoływanych linków pozwalała na wyświetlanie danych innych użytkowników takich jak imię, nazwisko, adres i numer dokumentu tożsamości,
  • wejście na stronę shop.bkk.hu nie skutkowało jej wczytaniem, bo ktoś zapomniał ustawić przekierowanie http -> https,
  • hasło administratora systemu zostało szybko ustalone, ponieważ brzmiało adminadmin,
  • kupione bilety można było bez problemu kopiować między urządzeniami i okazywać do kontroli,
  • serwis korzysta z CAPTCHA, które można zwyczajnie odczytać programowo.

I would like to congratulate the devs / ticket controllers of @bkkbudapest on the rollout of the new e-ticket system. Very secure CAPTCHA! pic.twitter.com/TbkZKaHLwX

I would like to thank the devs for following modern web standards and making it easy to programatically solve CAPTCHA. No need for scraping! pic.twitter.com/JPSbdmlRxB

Zobacz obraz na Twitterze

Brzmi jak spektakularna katastrofa, prawda? Ale to nie koniec, ponieważ pewien 18-letni uczeń odkrył, że jeśli zmodyfikuje żądanie do serwera WWW podmieniając np. cenę kupowanego biletu miesięcznego z 9500 forintów na 50 forintów, to bilet otrzyma, tylko dużo taniej. Uczeń zgłosił swoje odkrycie właścicielowi systemu i w odpowiedzi dowiedział się, że kupiony w ten sposób bilet został unieważniony. Na tym jednak korespondencja się zakończyła. Kiedy – pewnie za sprawą odkrywcy – historia trafiła do prasy, zaczął się prawdziwy cyrk.

Also, a local news portal have been told (and got a screenshot) that pass price can be modified on the client side. http://index.hu/tech/2017/07/14/meghekkelheto_a_bkk_rendszere_barmennyiert_lehet_jegyet_venni/ 

Meghekkelhető a BKK rendszere, bármennyiért lehet jegyet venni

Szakértők elképesztően durva hibát találtak a jegyeladó rendszerben. A BKK azt mondja, a rendszerük kiszűri a visszaéléseket.

index.hu

Spółka zarządzająca systemem transportowym wraz z wykonawcą systemu ogłosiły, że system padł ofiarą ataków hakerów (a firewall zatrzyma wiele z nich), oskarżyli społeczeństwo o niedojrzałe zachowanie oraz poinformowali, że każdy system może zostać zhakowany a ich nie jest wyjątkiem. Twórca systemu na konferencji prasowej poinformował, że chętnie przyjmuje zgłoszenia o błędach oraz że jeden z przypadków włamania został zgłoszony organom ścigania. Niestety okazało się, że dotyczyło to przypadku wspomnianego wcześniej 18-latka. Odkrywca błędu został zatrzymany przez policję i dopiero po kilku godzinach wypuszczony. Społeczeństwo zareagowało wystawiając spółce transportowej niskie oceny na Facebooku, z których każda ma w opisie tę samą historię 18-latka, który chciał tylko zgłosić błąd.

Sprawa jest świeża, zatem nie znamy jeszcze dalszych losów odkrywcy błędu. Pozostaje mieć nadzieję, że ktoś pójdzie po rozum do głowy i błędy naprawi, a badaczy je wskazujących potraktuje jako pomocników, a nie wrogów. Na szczęście w Polsce przynajmniej od strony przepisów problem ten wygląda nieco lepiej.

Wszystkie opisane powyżej błędy – oraz wiele więcej omawiamy na naszych szkoleniach z atakowania i obrony aplikacji WWW. Najbliższy termin już na początku września w Warszawie.

Dodaj komentarz

Twój adres email nie zostanie opublikowany. Pola, których wypełnienie jest wymagane, są oznaczone symbolem *