15.07.2012 | 23:12

Adam Haertle

Błąd w Minecrafcie umożliwiał logowanie na konto dowolnego użytkownika

W ciągu ostatnich dni niektórzy administratorzy serwerów Minecrafta zaobserwowali dziwne sesje – na ich maszyny logował się twórca gry Notch, lub ktoś, kto przejął jego sesję.

Szczegóły błędu zostały opublikowane dopiero kilka godzin temu w serwisie GitHub. Dwóch odkrywców błędu, Alex Vanderpot i Keegan Novik z Team Avolition odkryło nieprawidłową obsługę sesji w mechanizmie uwierzytelnienia użytkowników, którzy zmigrowali swoje konta do platformy Mojang. Choć błąd został przez nich odkryty 26go czerwca, zdecydowali się na jego publikację (bez powiadamiania zespołu odpowiedzialnego za bezpieczeństwo gry) dopiero wczoraj w nocy. Na sposób i czas publikacji informacji o błędzie ciekawie zareagował Notch, twórca Minecrafta.


Komentarz z Twittera Notch’a

Nieprawidłowa obsługa sesji – szkolny błąd

Błąd, popełniony przez autorów modułu uwierzytelniającego użytkowników, był nad wyraz trywialny. Okazało się, że skrypt joinServer.jsp akceptował dowolny, poprawny klucz sesji. Dowolnego użytkownika. Wystarczyło zalogować się na swoje konto, zapisać klucz sesji i użyć go następnie do logowania na dowolne inne konto poprzez zmianę nazwy użytkownika. Błąd, którego unikania zapewne uczą programistów już w przedszkolach.

Możliwe konsekwencje

Jako że z powodu błędu mogło dojść do przejęcia konta użytkownika o wyższych uprawnieniach, włamywacze mogli w najgorszym wypadku uzyskać dostęp do:

  • Plików z mapami serwera
  • Plików systemu operacyjnego
  • Danych graczy
  • Bazy danych serwera
  • Modyfikacji serwera i kodu źródłowego

Podsumowanie

Tak trywialne błędy nie powinny pojawiać się nie tylko w dużych, popularnych systemach, ale nawet w małych aplikacjach, pisanych na własne potrzeby. Na szczęście Mojang zareagował bardzo szybko, usuwając błąd w ciągu kilku godzin. Pozostaje jeszcze pytanie, kto znał błąd kilka dni przed jego publikacją i do jakich danych dzięki temu uzyskał nieautoryzowany dostęp. Być może odkrywcy błędu podzielą się również tymi informacjami.

Powrót

Komentarz

  • 2012.07.16 12:55 listonosz

    1. „avolition” nie „volition”, i to nie oni odkryli błąd, jedynie go dokładnie opisali
    2. nie dowolnego użytkownika, tylko dowolnego użytkownika posiadającego „zmigrowane” konto mojang account.
    3. przejęcie sesji innego gracza pozwala co najwyżej na zalogowanie się do gry na serwerze, dostęp do jakichkolwiek plików byłby możliwy tylko w sytuacji gdy na serwerze zainstalowany byłby plugin który na to zezwala.

    Odpowiedz

Zostaw odpowiedź

Jeśli chcesz zwrócić uwagę na literówkę lub inny błąd techniczny, zapraszamy do formularza kontaktowego. Reagujemy równie szybko.

Błąd w Minecrafcie umożliwiał logowanie na konto dowolnego użytkownika

Komentarze