Pages

Tuesday, 21 January 2014

Rejestracja istniejącego, lub jednoliterowego nicku [MyBB, phpBB]


Za namową Adama z Z3S postanowiłem opisać problem po polsku i przeprowadzić trochę więcej testów (dzięki za motywacje! :>).

Czym jest "zero width non jointer"
"zero width non jointer" jest znakiem o szerokości 0 pixeli, samodzielnie występuje jako niewidoczny znak. Więcej informacji: http://en.wikipedia.org/wiki/Zero-width_non-joiner

Znajdziemy go w tablicy znaków (Start > Wyszukaj "> "Tablica Znaków"),  zaznaczamy Widok zaawansowany i w wyszukiwanie wpisujemy "Zero Width Non-Joiner", naciskamy wybierz, a następnie kopiuj.




















Test popularnych for
Postanowiłem przetestować jak zadziała użycie go przy rejestracji na kilku popularnych forach.

  • Vbulletin&IpBoard 

Oba wydają się być bezpieczne,
‍‍‍Vbulletin przechodzi początkową walidacje, przy wpisywaniu, jednak po kliknięciu zarejestruj:








Podejście IpBoard bardziej mi się spododało, odrazu informuje, że można użyć tylko znaków a-zA-Z0-9





  • MyBB:

Potrzebujemy nicku 3 znakowego:






Teraz dodałem 2 znaki "zero width non jointer":






 Działa!









Ale rejestracja nicku jak 'a', może służyć jedynie zabawie, teraz spróbujmy zarejestrować istniejący nick, czemu by nie "admin" ?

Przed dodaniem znaku U+200c :




 

Po:












Zalogowano



Dodanie posta w temacie prawdziwego admina:
















Na następnym screenie, możemy zobaczyć 3 adminów i 2 użytkowników o nicku 'a':








Zgłosiłem już to do MyBB.

  • phpBB

Tym razem forum nie pozwala nam zarejestrować takiego samego, jednak nadal można nick jednoliterowy:







Zagrożenia:
Powiecie, że np. w MyBB "admin jest zielony i ma więcej gwiazdek", Prawda..., ale:
1. W prywatnej wiadomości, np z prośbą o nowe hasło, ludzie mogą tego nie zauważyć, szczególnie jeżeli użyjemy takiego samego avataru.
2. Możliwe jest stworzenie każdego nicku, więc atakujący może stworzyć konto o nicku zaufanego sprzedawcy, o takiej samej randze, a nabicie postów to nie problem.
3. Ludzie mogą popełnić błędy podczas wysyłania prywatnych wiadomości i wybrać nas, zamiast prawdziwego adresata.


Jak zaradzić:
Najlepszym sposobem, jest sposób zastowany przez IpBoard, czyli whitelist dla dozwolonych znaków, np. a-zA-Z0-9

Fix w MyBB stworzony przez Pawła Klebba:

Plik inc/datahandlers/user.php, linijka koło 73. Zamienić ją na:
$username = str_replace(array(unichr(160), unichr(173), unichr(0xCA), dec_to_utf8(8238), dec_to_utf8(8237), dec_to_utf8(8203), dec_to_utf8(8204) ), array(" ", "-", "", "", "", "", ""), $username);


3 comments:

  1. Habits die hard. So, if we are going to be slaves of our habits, lets at least have good habits. If we stretch this point, it is easy to see the case for money and financial education for school children.http://www.careerpanth.xyz/

    ReplyDelete
  2. The blog resembles a chocolate for me. I need to have it constantly.
    clash royale triche

    ReplyDelete
  3. How about you take a good look here for some good information about spyware application called mSpy

    ReplyDelete