17:54
24/3/2015

Jeden z naszych czytelników, Daniel, opisał nam swoją przygodę z systemami teleinformatycznymi krakowskiego MPK (Miejskiego Przedsiębiorstwa Komunikacyjnego). Daniel, tworząc aplikację mobilną do obsługi krakowskich biletów natknął się na poważną w jego opinii lukę bezpieczeństwa — osoba znająca numer studenckiego indeksu jest w stanie pozyskać imię, nazwisko, numer telefonu i adres e-mail właściciela indeksu. Daniel podzielił się opisem “ataku” z MPK już miesiąc temu, ale luka wciąż nie została usunięta…

Na czym polega sprawdzanie biletów MPK w Krakowie?

Zacznijmy od tego, że MPK Kraków korzysta z 2 systemów do sprawdzania ważności biletu elektronicznego on-line.

1. http://www.mpk.krakow.pl/pl/sprawdz-waznosc-biletu
2. https://ebilet.kkm.krakow.pl/ebilet

Tak ich działanie opisuje Daniel:

Pierwszy i drugi system od posiadacza “zwykłej” KKM (Krakowskiej Karty Miejskiej), w celu weryfikacji wymagają podania numeru klienta i numeru karty (obie rzeczy zapisane są na fizycznej karcie). Ale w przypadku posiadacza ELS (Elektronicznej Legitymacji Studenta), czyli studenta, do autoryzacji używany jest numer indeksu (7 cyfr) i nazwa uczelni (zamieniana na jej dwucyfrowy ID), czyli razem 9 cyfr — dokładnie tyle, co numer klienta “zwykłej KKM”.

Na czym polega problem? Ano okazje się, że zalogowanie się w pierwszym systemie (na podstawie numeru indeksu ofiary) zwraca też w odpowiedzi dodatkowe identyfikatory klienta, np. numer karty KKM (do tej pory nie znany potencjalnemu “złodziejowi” danych).

Sprawdzanie ważności biletu

Sprawdzanie ważności biletu – podajemy znane (zielone) dostajemy nieznane – czerwone.

Teraz mając numer KKM, można skorzystać z drugiego serwisu (ebilet.mpk.krakow.pl), aby — po uwierzytelnieniu się w nim świeżopozyskanymi danymi — otrzymać kolejne informacje na temat “ofiary”. Nie jest jednak prosto, bo jak możemy zauważyć, logowanie dla studentów wymaga podania PESEL-u. Jeśli nie zgooglamy z wyników egzaminów tak chętnie publikowanych w internecie przez prowadzących zajęcia, to jest problem… Ale możemy sobie z nim łatwo poradzić — okazuje się bowiem, że studenta można także uwierzytelnić w trybie karty KKM (a nie tylko w trybie legitymacji ELS) — a wtedy nie ma już konieczności podania PESEL-u. Potrzebujemy jedynie numeru karty KKM i numeru legitymacji/albumu (obie informacje mamy z pierwszego systemu sprawdzającego ważność biletu).

Logowanie do drugiego systemu

Logowanie do drugiego systemu – wymaga danych podanych przez pierwszy

Innymi słowy, przy pomocy interfejsu do sprawdzenia ważności biletu, na podstawie posiadanego przez nas jedynie numeru indeksu studenta, pozyskujemy dane takie jak numer jego karty KKM i numer legitymacji biletowej (który nota bene jest numerem indeksu z doklejonymi 2 cyframi oznaczającymi daną krakowską uczelnie). Mając te dane, i korzystając z systemu krakowskiego ebiletu możemy pozyskać dodatkowe informacje na temat studenta:

  • Imię i nazwisko
  • Adres e-mail (jeśli kiedykolwiek zakupiono bilet online)
  • Numer telefonu (jeśli kiedykolwiek zakupiono bilet online)

Skąd je weźmiemy — ano po zalogowaniu do drugiego z systemów (danymi pozyskanymi z pierwszego systemu) naszym oczom ukazuje się m.in. formularz zakupu biletu z autouuzupełnionymi danymi właściciela biletu:

Widok formularza zakupu biletu ujawnia następujące dane

Widok formularza zakupu biletu ujawnia następujące dane

Co na to MPK?

Daniel zgłaszał błędy do MPK jeszcze w lutym, ale departament IT, o ile usunął jeden z błędów technicznych wymieniony w e-mailu od Daniela, to niestety z błędem logicznym póki co niczego nie zrobił. Dlaczego? Zapytaliśmy o to krakowskie MPK — oto wypowiedź rzecznika, Pana Marka Gancarczyka:

Witam,
Przede wszystkim chciałbym potwierdzić, że opisany przez Państwa problem jest nam znany. Podjęliśmy już działania, których celem jest jak najszybsze wprowadzenie dodatkowych ograniczeń w procedurze internetowego potwierdzania ważności biletu okresowego zapisanego na Elektronicznej Legitymacji Studenckiej. O tym, że tym problemem się zajmujemy informowaliśmy już osobę, która także nam ten temat zgłosiła. Mam nadzieję, że za kilka dni przygotowane przez nas rozwiązanie zacznie już funkcjonować.
Jednocześnie chciałbym potwierdzić, że bezpieczeństwo danych naszych pasażerów jest dla nas niezwykle ważne i przykładamy wielką wagę do tego, aby chroniły je najlepsze systemy i rozwiązania.

Czy jest się czego obawiać?

Powyższa “ścieżka ataku” to świetna ilustracja tego, jak na podstawie z pozoru nieistotnych danych (np. publikowanego w internecie numeru indeksu) uzyskać bardziej wartościowe dane, korzystając z kilku połączonych ze sobą systemów.

Tu warto przywołać podobną historię z Amazona, która umożliwiła przejęcie komputerów Apple jednego z dziennikarzy oraz historię Cloudflare, gdzie od włamania na skrzynkę prezesa atakujący doszedł do przejmowania kont użytkowników usługi.

Trzeba jednak podkreślić, że pozyskanie danych wymaga znajomości numer indeksu ofiary — a numer ten wcale nie jest tak łatwo zdobyć, jeśli chodzi o atak ukierunkowany na konkretną osobę (co innego, jeśli mówimy o atakach masowych). Dodatkowo, należy postawić pytanie o zasadność ataku — w końcu jeśli ktoś chce uzyskać numer telefonu uroczej studentki, to są na to milsze sposoby :-)

Problemu nie należy jednak lekceważyć. Daniel zauważa bowiem jeszcze jeden problem. Ktoś może napisać skrypt, który sprawdzi wszystkie możliwe numery indeksów dla wszystkich uczelni w Krakowie i za pomocą MPK wyciągnie dane studentów posiadających bilet “okresowy”, tworząc całkiem pokaźną i sprofilowaną bazę osób (studenci, podzieleni na konkretne uczelnie, podróżujący komunikacją miejską).

Podsumowując, dopóki MPK nie naprawi błedu, to jeśli jesteś krakowskim studentem — strzeż swojego indeksu. Jeśli jesteś projektantem systemów informatycznych — to zastanów się jakie dane systemy te muszą przetwarzać (a bez jakich się obędą) i rozważ co zwraca system po podaniu danego identyfikatora. Jeśli natomiast jesteś zwykłym internautą, zastosuj się do złotej rady:

podawaj jak najmniej informacji na swój temat w systemach online.

Jak widać, czasem na skutek niedoskonałości kilku systemów teleinformatycznych można z nich wyciągnąć o wiele za dużo, odpytując je na zmianę kolejno pozyskiwanymi danymi…

Przeczytaj także:

36 komentarzy

Dodaj komentarz
  1. “wymaga znajomości numer indeksu ofiary — a numer ten wcale nie jest tak łatwo zdobyć, jeśli chodzi o atak ukierunkowany na konkretną osobę”
    Dawnoście nie byli na uczelni, to i z pamięci niektóre cyrki wyleciały. Po egzaminach prowadzący potrafią wywiesić listę ocen w formie “Imię i nazwisko; nr. indeksu; ocena”. Alternatywnie: wystarczy usiąść obok ofiary na egzaminie — na wielu trzeba wpisać nr indeksu w nagłówku.

    • A jak uczelnie mają własny Moodle to i publikowane są całe XLSy z parami numer indeksu – ocena. Swoją drogą miałem sytuację (i wątpię, żebym był jedyny), że tuż obok był PDF: nazwisko-numer indeksu-sala.
      A żeby było jeszcze lepiej – sprytni prowadzący publikują nawet PESELe…

    • @Daniel: skąd prowadzący ma mieć PESEL studenta?

    • Nie wiem jak na innych uczelniach, ale w systemie pocztowym politechniki poznańskiej można bez problemu sprawdzić numer indeksu znając imię i nazwisko, albo na odwrót.

  2. Tak, wszyscy wiemy, że numery studenckich albumów mozna znaleźć w sieci. Niebezpiecznik nawet podlinkował w artykule odpowiedniego Google Dorka pod słowem “ataki masowe” :] Ale właśnie. Jak celnie zauważyli redaktorzy, o ile ataki masowe są możliwe, to niestety ciężko jest konkretną osobę w ten sposób zaatakować. Podoba mi się Aneta Koroczek z III roku na UJ. Czy któraś z osób twierdząca, że numery albumów są łatwo pozyskiwalne będzie w stanie mi podać jej numer? Wcale nie jest to takie łatwe. Challenge accepted?

    • Według USOS nie ma na uczelni takiej studentki kłamczuchu!

    • Przysięgam, że tak mi się przedstawiła na ostatniej imprezie u kolegi w slumsach. Może pomoże to, że to blondynka, raczej niewysoka. Studiuje prawo.

    • Jeśli ci się podoba, to do niej podejdź i zagadaj — nie tylko będzie dużo prościej, ale powinieneś pamiętać, że mało skuteczny jest podryw na “ej, mała… wynająłem kogoś, żeby wykradł mi twoje dane osobowe… mrauuu” ;).

      Sugerujesz, że na UJ nie podaje się na egzaminach nr-u albumu? Nigdy? Odgórne zarządzenie? Poważnie? Czy po prostu boisz się obok niej usiąść, żeby popdatrzyć numer albumu?

      Na UJ nie wywieszają już arkuszy ocen z nr-ami indeksów? Jeśli są, a bez nazwisk, to podpowiem: ogranicz numery indeksów do 3-go roku, a następnie z kilku arkuszy zbierz oceny. Porównaj z tymi, które ma. Wystarczy pogadać, zejść na temat ocen i będziesz miał dane porównawcze. Jeśli nie wskażą konkretnej osoby, to zostanie ci zbiór na tyle mały, że będziesz mógł przeszukać bazę danych MPK bez większego wysiłku i zwracania niczyjej uwagi.

      Jeżeli UJ nigdy nie wywiesza arkuszy z ocenami i nie wpisuje się nigdy nr-ów indeksów na egzaminach/kolosach/wejściówkach, a baaaardzo ci zależy, to zostań starostą grupy — będziesz zbierał indeksy. UJ nie ma już papierowych albumów? Załóż stronę z materiałami “dydaktycznymi”, aka składnica wywiadu studenckiego, i wymagaj logowania się loginem uczelnianym i nr-em indeksu jako hasłem przy pierwszym logowaniu. Jest tak dobra, że nie korzysta ze ściąg? Wykryj kilka dziur w uczelnianym systemie dla studentów i zgłoś się jako chętny do ich naprawiania — będziesz miał dostęp do bazy danych. Zawiodło? Bleh… “Ej! Wiecie o tym, że większość liczb zawiera w swoim zapisie cyfrę 3? Dajcie numery indeksów, sprawdzimy”.

      Wszystko już zawiodło? Pokaż jej ten artykuł i razem sprawdźcie swoje numery indeksów.

      Wszystkie powyższe metody wymagają od ciebie podjęcia kontaktu z nią, więc jest spora szansa, że stracisz powód do wykradania jej danych :D.

      Challenge not accepted, bo ani ciebie nie stać na zapłacenie komukolwiek tutaj za zostanie studentem 3-go roku wybranej uczelni w celu zdobycia czyichś danych, ani też nie będzie to niedługo działało, jeśli MPK dotrzyma obietnicy.

    • @mpan – co kończy dowód na to, że ataki ukierunkowane nie takie łatwe — i chyba udowodniłeś to metodą przez zaprzeczenie… swojego pierwszego posta ;-)

    • #mpan Jako studentka prawa na UJ mogę Ci powiedzieć, że nie korzystamy z indeksów, bo wszystko jest elektronicznie załatwiane, a ewentualne listy (o ile już są, bo większość wyników jest po prostu wpisywana do internetu) są albo nazwiskami, albo numerami PESEL.

    • @Piotr:
      Od kiedy to podanie listy przykładów ataku jest dowodem na jego trudność? Chyba że trudność ta leży w odezwaniu się lub siedzeniu obok koleżanki — to wtedy zgadzam się, że są trudne ;).

      W pierwszym poście twierdzę, że numery indeksów są łatwe do zdobycia w ogólnym przypadku. Są podawane na egzaminach, są wywieszane na listach, są wymieniane w rozmowach, są podawane w wewnętrznych stronach dla studentów, są dosłownie wszędzie. *Ogólnym*, czyli bez zagłębiania się, co dzieje się na wybranej, pojedynczej uczelni.

      W poście dalej odpowiadam już w kontekście tylko UJ. Ponieważ nie wiem, co dokładnie dzieje się na UJ, i wiem, że niektóre z rzeczy mogą nie mieć zastosowania, to daję dłuższą listę “a co, gdy nie działa”. Jeżeli jesteś w stanie pokazać, że wszystkie wskazane zabiegi zawodzą na UJ, to zgodzę się… na UJ atak na wybraną osobę jest trudniejszy. Co mówi tylko o UJ, a nie o przypadku ogólnym, o którym mówię w pierwszym poście. Uff… wyjasnione?

      @StudentkaUJ
      A pozostałe drogi? Patrz: odp. dla Piotra.

    • @Studentka UJ Większość, ale na pierwszym piętrze Larischa raz na jakiś czas pojawiają się kartki z numerami indeksów.
      Najłatwiej dodać się do facebookowych grup wszystkich lat danego kierunku i czatować na to, aż ktoś wrzuci zdjęcia z wynikami egzaminu – albo przeszukać grupę w poszukiwaniu poprzednich.

    • No akurat jeśli o UJ chodzi to większość sposobów zawiedzie, bo praktycznie wszyscy (rzadko zdarzają się jednostki publikujące listę) korzystają z USOS, można tam “wywiesić” wyniki egzaminów w zdefiniowanym sprawdzianie, albo po prostu wpisać ocenę do indeksu, natomiast sale do egzaminów wywieszane są najczęściej w zamkniętym systemie Pegaz, albo po prostu w mailach grupowych. Przynajmniej na moim wydziale. Co innego osoba wewnątrz UJ-tu, bo przez USOS można znaleźć dane osobowe każdego studenta m.in. po ich numerze indeksu ;).

    • @Piotr Konieczny – przecież jak ktoś napisze taki skrypt jak opisany w artykule to potem atak ukierunkowany to tylko odpowiednie zapytanie do bazy… (chciałem podać SQLa w komentarzu, ale admin strony jest leniwy i zamiast nie pozwolić na wykonanie skryptu blokuje SQLa w komentach ;p).

    • @klh
      To na tej zasadzie każdy atak jest “ukierunkowany” ;).

      Niemniej sądzę, że komentarze innych potwierdzają to, co napisałem: nr-y albumów latają wszędzie i są jeszcze bardziej publiczne niż nr-y PESEL. Na jednej uczelni część metod pozyskania nie działa, na innej działa trochę więcej, ale ogólnie to nie są wartości trudnodostępne.

    • Nie możecie namierzyć na UJ tej Anety Koroczek, bo ona pewnie figuruje w bazie danych jako Andrzej Koroczek – zmiana imienia/nazwiska trwa o wiele dłużej, niż operacje plastyczne/zmiany płci… :P

  3. Nr karty można sczytać przez nfc.
    A podmienić na taki sam nie problem.

  4. #mpan Jako studentka prawa na UJ mogę Ci powiedzieć, że nie korzystamy z indeksów, bo wszystko jest elektronicznie załatwiane, a ewentualne listy (o ile już są, bo większość wyników jest po prostu wpisywana do internetu) są albo nazwiskami, albo numerami PESEL.

    • Cześć, a podasz mi swój numer indeksu? Jak go podasz, zadzwonię:D

  5. Ojej, a na Wydziale Elektroniki i Technik Informacyjnych Politechniki Warszawskiej, w od 10 lat niezmienianym elektronicznym dziekanacie, który wygląda, jakby był zrobiony na zaliczenie projektu, jest specjalna zakładka z listami osób, które są zapisane na wszystkie przedmioty . Na każdej liście podany jest nr indeksu, oba imiona i nazwisko, grupa dziekańska i specjalizacja … Listy te są oczywiście publicznie dostępne, nie tylko dla studentów.

    • Raczej od 20 :)
      Pod koniec lat 90-tych ERES2 rządził i nowością nie był.
      Krążyła wtedy plotka, że autorem jest pewna osoba z władz wydziału.

    • Nieśmiertelny ERES :)
      System ma tyle lat co ja, a dodatkowo pisany był jeszcze w Fortranie i faktycznie były to prace dyplomowe, w tym dwóch obecnych doktorów wydziału :)

    • co prawda zajęło mi 4 lata obczajenie jak działa ERES (ale dzięki temu miałem dyplom mgr z wyróżnieniem ;) ). anyway – lepszy ERES niż USOS z czasów, kiedy moja ukochana studiowała na UW. A autorem ERESa był chyba jakiś student/później pracownik. Tylko jego dane były gdzieś w systemie dostępne.

  6. Profesorów to można informować i prosić, będą to mieli gdzieś. A dla tych starszej daty, komputery to jakaś magia. Tak, to na AGH.

  7. Większość prowadzących podając oceny całej grupy, podaje tylko indeks – ocena. Czasem nawet nie chcieli podawać inaczej niż osobiście bo oceny są danymi prywatnymi czy jakoś tak. Nie pamiętam zeby kiedykolwiek podali nr albumu obok imienia i nazwiska

  8. Hmm, ja się nie mogę zalogować na https://ebilet.kkm.krakow.pl/ebilet/Logowanie , zarówno uwierzytelniając się swoim nrem indeksu i nr KKMu pobranego z http://www.mpk.krakow.pl/pl/sprawdz-waznosc-biletu jak i nrem indeksu i PESELem…

  9. “podawaj jak najmniej informacji na swój temat w systemach online.” – W tych czasach gdzie powoli wszystko można “online”, niezałożenie konta gdzieśtam oznacza że albo musisz ganiać po jakichś urzędach/dziekanatach/itp. po kilka razy, albo co gorsza wogóle nic nie zdziałasz. No i dane pewnie trzeba będzie kiedyś jakoś potwierdzić – a nawet jeżeli nie (bo nawet jeżeli każą przyjść z dowodem osobistym, to nikt chyba nie weryfikuje np. numeru telefonu), to jak będzie trzeba to się do ciebie nie dodzwonią. Te dane po coś w końcu tam są. Użytkownik takich systemów wtedy skazany na łaskę programisty/administratora/projektanta oprogramowania. Albo podasz poprawne dane – i efektywnie udostępnisz je każdemu – albo nic nie załatwisz.

  10. To sobie tak tam wisi od co najmniej sześciu-siedmiu lat :) Gdy dawno temu przed skończeniem studiów wydali nam te “wynalazki” w postaci legitymacji studenckich zintegrowanych z KKM, otwierałem oczy z zdumienia ile informacji można uzyskać tylko po numerze albumu.

  11. Posiadacze zwykłej KKM mają chyba jeszcze gorzej.
    Jak ktoś zapomni kwitku z automatu po zapisaniu biletu na kartę to oba numery do logowania w systemie mogą wpaść w niepowołane ręce.

    Tylko pierwsze logowanie trzeba potwierdzić numerem pesel.

  12. U mnie uczelnia wyświetla na stronie imiona, nazwiska i nr indeksu osób wzywanych do dziekanatu.

  13. U mnie na kierunku zdobycie nr indeksu konkretnej osoby nie było trudne. Mieliśmy jeszcze zwykłe indeksy i własne forum. Zawsze był na nim jakiś ślad np. po poprawkowych egzaminach, dzięki któremu można było powiązać użytkownika z indeksem. Kilka razy dochodziłem w ten sposób do tego kto został do zdawania 3 terminu.
    Za to mój dziekanat GGiOŚ na AGH dawał nie raz popis. Raz ujawnił e-maile nie zamieszczając ich w polu UDW. Ostatni wyczyn to lista wszystkich ludzi w Excelu (Imię, Nazwisko, Kierunek, Grupa), którzy poszli na magisterkę.

  14. Juz mialem zaczac to ‘testowac’ zanim przeczytalem:

    “Daniel zauważa bowiem jeszcze jeden problem. Ktoś może napisać skrypt, który sprawdzi wszystkie możliwe numery indeksów dla wszystkich uczelni w Krakowie i za pomocą MPK wyciągnie dane studentów”

    … i caly misterny plan w diabli wzieli :(

  15. Typowe teksty biurokratów: “bezpieczeństwo danych naszych pasażerów (klientów, pracowników itp – wstaw odpowiedni wyraz zależny od kontekstu) jest dla nas niezwykle ważne”. A jednocześnie olewają totalnie sprawę i nic nie naprawiają w systemie.

  16. System systemem, ale prawdziwym guanem jest fakt, że mając kupkę nieznaczących danych można robić fraudy, jak np. te legendarne kredyty w guanobankach…

    Prawda jest taka:
    – nr indeksu zna KAŻDY chcący (listy ocen, zapisów, podłażenie z indeksem);
    – nr PESEL podajesz niemalże w KAŻDEJ poważniejszej instytucji I NIE TYLKO, ponadto dużo cyferek PESEL to data urodzenia;
    – adres jak wyżej + każdy, od kogo dostałeś p-kartkę na święta;
    – datę urodzenia zna każdy, kto złożył ci życzenia/był na osiemnastce i nie tylko oni;
    – nazwiska rodziców nie są top secret dla bliższych znajomych/rodziny i gdy macie konta na FB;
    – zdjęcie można ściągnąć z dowolnej profilówki, ale najczęściej przy fake-dowodach stosują własne.

    Tak więc w pewnym sensie nikt normalnie żyjący nie jest w 100% bezpieczny…

  17. Tu macie więcej. Nie tylko Kraków. Sprawa złego przetwarzania danych (wycieku z uczelni) zdaje się być powszechna. https://www.google.pl/search?q=imi%EA+nazwisko+numer+albumu+filetype%3Axls

  18. Wpisałem byle jaki numer indexu zaczynający się cyframi 27…. i wyskoczyły dane, więc……

Twój komentarz

Zamieszczając komentarz akceptujesz regulamin dodawania komentarzy. Przez moderację nie przejdą: wycieczki osobiste, komentarze nie na temat, wulgaryzmy.