Włamał się do aplikacji obsługującej znane na całym świecie polskie urządzenie. Dla... piwa

Robert Kędzierski
Polska firma stworzyła jedno z najbardziej przełomowych urządzeń służących do bezprzewodowej interakcji z konsumentem. Polski programista znalazł sposób, by je przechytrzyć. Mógłby "w nagrodę" wypić morze darmowego piwa. Postanowił jednak podzielić się wiedzą z innymi. Tak robią hakerzy z prawdziwego zdarzenia.

Polski programista ogłosił na swoim blogu, że znalazł sposób na przełamanie zabezpieczeń aplikacji obsługującej polski beacon Estimote. Dzięki stworzonej przez siebie procedurze mógłby już nigdy nie płacić za piwo. Zacznijmy jednak od początku.

Beacony Estimote

Za tą dość tajemniczą nazwą kryje się jedna z największych polskich innowacji ostatnich lat. Beacony to niewielkie urządzenia nadawczo-odbiorcze działające podobnie jak router WiFi. Są jednak mniejsze i nie wymagają dużo energii - wystarczy im bateria. Można je zamontować w dowolnym miejscu sklepu, restauracji czy centrum handlowego. Stworzyła je firma Estimote - założona przez Polaków (tu więcej o jej sukcesie komercyjnym)

Jak działają Beacony? Kliknij, aby powiększyć (grafika Paweł Płaza)Jak działają Beacony? Kliknij, aby powiększyć (grafika Paweł Płaza) Jak działają Beacony? Kliknij, aby powiększyć (grafika Paweł Płaza)

Beacony wykorzystywane są na wiele sposobów, bo są bardzo otwarte i elastyczne. Mogą służyć do zliczania osób wchodzących do sklepu, "rozsyłać" ofertę reklamową. Służą też do "meldowania się" w określonych miejscach.

I właśnie tę ostatnią z funkcji beacona postanowił złamać Kuba Gretzky - programista z Polski. Wziął na warsztat beacon znajdujący się w jednej z restauracji.

Służył w niej do obsługi programu lojalnościowego. Klient zamiast nosić ze sobą wizytówkę, na której kelner po zakupie każdego piwa przybija pieczątkę, korzystał z beacona. Aplikacja obsługująca program dopuszczała dwie możliwe formy potwierdzenia zakupu: zbliżenie do beacona, albo wpisanie kodu. 

Otwarte standardy czyli darmowe piwo

Gretzky postanowił stworzyć system, który pozwoli na nieautoryzowane naliczanie darmowych punktów. Szybko odkrył, że urządzenie, które działa w restauracji wykorzystuje publiczny numer UUID. To rodzaj identyfikatora przypisanego do wielu tego tupu urządzeń. 

Programista odniósł sukces. Wystarczyło, by wszedł do restauracji i przechwycił identyfikator UUID rozsyłany przez beacon. Po jego zapisaniu, już w domu, musiał uruchomić aplikację obsługującą program lojalnościowy i napisany przez siebie kod. Zamiast potwierdzenia zakupu piwa przez zbliżenie musiał wskazać metodę PINu. Stworzony przez niego system sprawił, że mógł wpisać dowolny kod, a aplikacja uznała go za prawidłowy i naliczyła sprzedaż. W ten sposób Gretzky, mógłby pić darmowe piwo tak długo, aż obsługa nie zorientowałaby się, że coś jest nie tak. Oczywiste jest jednak, że intencją polskiego programisty było znalezienie luki w oprogramowaniu, a nie schłodzony napój.

Estimote: ta dziura jest już załatana

Jakub Krzych, Steve Cheney, Łukasz Kostka - założyciele EstimoteJakub Krzych, Steve Cheney, Łukasz Kostka - założyciele Estimote Fot. Estimote

Jakub Krzych, prezes i współzałożyciel Estimote, wyjaśnił nam, że problem jest znany.  Firma opublikowała odpowiednie aktualizacje dla oprogramowania beaconów w zeszłym roku. 

Trochę niefortunne w przypadku tego klienta i tej aplikacji była sama implementacja, która wykorzystywała publiczny numer beacona zgodny z protokołem Apple iBeacon (tzw. numery UUID, Major i Minor). Ponieważ są to publiczne informacje dostępne dla każdego z natury rzeczy nie powinny być wykorzystywane do autentykacji transakcji. Rozwiązaniem, które my rekomendujemy wszystkim klientom jest pionierska i opatentowana przez Estimote technologia tzw. Secure UUID dla urządzeń Apple. Dzięki tej technologii numery beacona dynamicznie się zmieniają i nie są łatwe do podrobienia. Dostępna jest też wydana kilka miesięcy temu technologia Eddystone-EID opracowana wspólnie z Google, która również zabezpiecza aplikacja na Androida w jeszcze bardziej wyrafinowany sposób i można jej używać zarówno na obu platformach.
embed

Jednocześnie podziękował, za naszym pośrednictwem, za zwrócenie uwagi, iż w tej konkretnej restauracji zabezpieczenia udało się złamać.

Opisana przez sprytnego inżyniera w artykule metoda jest dość złożona i żmudna, stąd trudno sobie wyobrazić, aby stwarzała duże ryzyko dla klienta lub jego partnerów. Nie mniej jednak jesteśmy wdzięczni wszystkim, którzy przyczyniają się do bezpieczeństwa naszych technologii oraz wdrożeń naszych klientów.

- napisał pan Krzych w przesłanym nam oświadczeniu.

Sytuacja jest dowodem na to, że każdy system wymaga zabezpieczeń i testów "terenowych", bo programiści nie są w stanie przewidzieć wszystkich zagrożeń i wad produktu. Dobrze, że polski programista wykazał się zapałem. Dowiódł tego, że stosowanie przestarzałego oprogramowania nie jest bezpieczne. 

Więcej o:
Komentarze (23)
Włamał się aplikacji obsługującej znane na całym świecie polskie urządzenie. Dla piwa
Zaloguj się
  • derp973

    Oceniono 11 razy 3

    artykuł sponsorowany. polecam :D
    southpark.cc.com/full-episodes/s19e08-sponsored-content

  • 2db627a1

    Oceniono 2 razy 2

    "Opisana przez sprytnego inżyniera w artykule metoda jest dość złożona i żmudna, stąd trudno sobie wyobrazić, aby stwarzała duże ryzyko dla klienta lub jego partnerów." - a jednak komuś się chciało

  • zamaszysty.cios.w.krocze

    Oceniono 1 raz 1

    Hollywood nakręci o tym film. Co za historia.

  • kaczan11

    Oceniono 1 raz 1

    Nie pić piwo za darmo, tylko kraść piwo. Jest duża różnica w tym stwierdzeniu.

  • zimochm

    Oceniono 11 razy 1

    Panie Rober Kędzierski, proszę zajrzeć do słownika bo po takim tekście z tyloma błędami i literówkami to bym Cię wyj#$ał z pracy w trybie natychmiastowym.
    #pseudodziennikarz

  • yosemitesam

    Oceniono 11 razy 1

    Ale jajca Walduś, kurde ! Musimy tera znaleźć tego hachera !

  • lisa2

    0

    A wszystko przez brak wrodzonej uczciwości.
    Uczciwy nie szuka rozwiązań zdobycia czegoś niż w sposób przewidywany. Stąd wiele rozwiązań ma luki, bo nie jest możliwe przewidzenie wszelkich dróg dostępu do założonych funkcji. Często istnieje granica, która sprawia nieopłacalność systemu dostępu. Granicą jest opłacalność - koszty zabezpieczeń i straty spowodowane nieprzewidzianym dostępem.

    Taka jest informatyka i dlatego największy system operacyjny i wszystkie inne - mają luki przez które można dostać się na każdy komputer z tym systemem.

    Tylko uczciwość może wykluczyć szkodliwe działania używając informatycznych narzędzi.

  • wicipinski

    Oceniono 2 razy 0

    Brawo, zachował się jak przystało na prawdziwego Polaka. Użył całego swojego sprytu, intelektu i wiedzy, żeby kogoś okraść. Jest z tego dumny, a inny sprytny polak opisał jego wyczyn w gazecie, robiąc z niego bohatera.

    Art. 286 § 1. Kto, w celu osiągnięcia korzyści majątkowej, doprowadza inną osobę do niekorzystnego rozporządzenia własnym lub cudzym mieniem za pomocą wprowadzenia jej w błąd albo wyzyskania błędu lub niezdolności do należytego pojmowania przedsiębranego działania, podlega karze pozbawienia wolności od 6 miesięcy do lat 8.

Aby ocenić zaloguj się lub zarejestrujX