Zalogowany jako: gość

Forum

Wątek: Nowe reguły i polityka bezpieczeństwa

Wróć do listy wątków

1 z 1

1 z 20: pajper

Pierwsza część wpisu będzie informacją dla wszystkich użytkowników, druga technicznymi szczególikami na wypadek, gdyby kiedyś ktoś chciał poprogramować przy Eltenie.

Od 24 września 2019r, czyli miesiąc po wydaniu Eltena 2.3, wchodzi w życie nowa polityka zabezpieczeń na Eltenie. Uniemożliwi ona bez odpowiedniej zgody logowanie się do naszego konta z zewnętrznych (niepodpisanych przeze mnie) aplikacji oraz starszych wersji Eltena.
Na miesiąc po wydaniu kolejnej wersji, poprzednia przestanie być uprawnioną do logowania się na naszym koncie.
To samo dotyczy się zewnętrznych, niewydanych przeze mnie aplikacji korzystających z serwisu Elten Network.
Restrykcje te będzie można wyłączyć w ustawieniach naszego konta, umożliwiając ponowne logowanie się na nie ze wszystkich wersji programu i zewnętrznych aplikacji.

Także zmieni się polityka autologowania, nie będzie generowany token przekazywany do serwera, ze względów bezpieczeństwa (obecnie by przejąć czyjeś konto, wystarczy skopiować plik login.ini z jego komputera). Od Eltena 2.3, autologowanie będzie oparte o klucz kryptograficzny. Stara forma autologowania przestanie być obsługiwana także 24 września.


A teraz szczegóły techniczne:
1. Identyfikacja wersji aplikacji
Każda wersja otrzyma swój własny, symetryczny klucz kryptograficzny, którym będzie musiała zakodować zapytania do serwera. Serwer odrzuci wszystkie nieznane lub niezakodowane rządania chyba, że w ustawieniach konta zabezpieczenie to zostanie wyłączone.
2. Nowe tokeny autologowania
Także tu posłuży klucz symetryczny, którym kodowana będzie odpowiednia informacja o dacie (era Unixa) i wersji. Tak zakodowana informacja będzie podawana do serwera jako token przy każdym zapytaniu.
Dzięki temu informacje będą bezpieczniejsze (klucz będzie szyfrowany przez HWID), a za razem nie będzie wymagane odnawianie tokenów.

Z pozdrowieniami,
Dawid Pieper
#StandWithUkraine Shoot for the Moon. Even if you miss, you'll land among the stars.
09.08.2019 09:17

2 z 20: nuno69

A jak będzie z uzyskaniem takiego podpisu appki zewnętrznej?
- "Intelligence and wisdom is like jam. The less you have, the harder you're trying to spread it arround." - French proverb
10.08.2019 12:39

3 z 20: pajper

Każdy wypadek będę rozpatrywał indywidualnie. Trzeba tu jednak zauważyć, że z zasady licencja Eltena nie zezwala na tworzenie klientów pochodnych prócz wypadku ich samodzielnej budowy jako patchowanie kodu. Tu sprawa wygląda podobnie, użytkownik będzie mógł samodzielnie i na własne ryzyko ustawić zgodę na logowanie się do jego konta z zewnętrznych aplikacji. Wyjątkiem byłaby np. sytuacja, gdyby ktoś chciał napisać aplikację niepowielającą istniejących funkcji, np. grę audio wykorzystującą konta Eltenowiczów, ewentualnie napisał np. program do wymiany wiadomości prywatnych dla Maca lub Androida (tylko do czasu ukazania się aplikacji oficjalnej, potem autoryzacja byłaby cofnięta]
#StandWithUkraine Shoot for the Moon. Even if you miss, you'll land among the stars.
10.08.2019 12:46

4 z 20: nuno69

Czyli jestem bezpieczny...
- "Intelligence and wisdom is like jam. The less you have, the harder you're trying to spread it arround." - French proverb
10.08.2019 13:57

5 z 20: zywek

Ehh, Elten to na nic nie zezwala, a potem się dziwią, że nikt nie chce Dawidowi pomagać.

10.08.2019 17:54

6 z 20: mikolajholysz

Elten w tzw. technicznym długu (technical debt) już tonie po uszy i może się z niego nigdy nie wydostać, ale to jest, moim zdaniem, kolejna w łańcuszku złych decyzji, które jeszcze bardziej go w nim pogrążają. Tu jest za dużo własnych rozwiązań, pod wieloma względami gorszych od tego, co przyjęło się za standard, a z tego wychodzą problemy. Na razie mamy problemy spowodowane silnikiem RGSS i niestandardowymi kontrolkami, o których ostrzegałem Dawida z resztą gdzieś przy początku projektu, ale wtedy wszyscy parli do przodu, nie zważając na otoczenie,, a głosu rozsądku nikt nie słuchał. Teraz to wychodzi. Podobnie będzie moim zdaniem z tą decyzją. Nie dość, że moim zdaniem ruch zupełnie bez sensu, to jeszcze w dodatku jest to odkrywanie koła na nowo. Istnieje już od wielu lat protokuł oAuth, który służy mniej więcej do tego samego, ale działa znacznie, znacznie lepiej i sensowniej. To standard na rynku, z tego korzystają Twitter, Facebook, Google, Spotify i w sumie prawie każde liczące się API. Służy on właśnie do tego, co Dawid zamierza, a pozwala na więcej. Zaletą oAuth jest to, że zewnętrzne aplikacje autoryzujemy np. jednorazowym PINem albo linkiem, a nie dajemy im hasła, co jest znacznie bezpieczniejsze. OAuth posiada już gotowe implementacje w większości języków programowania, w tym w używanym przez Eltena Ruby, co ułatwiłoby pracę i Dawidowi i ewentualnym przyszłym twórcom. Ponadto, jeżeli serwis to implementuje, możemy przyznawać im dostęp tylko do jakieś części danych, o które poproszą. Dla przykładu, aplikacja typu powiadamiacz o wiadomościach od Amel owszem, powinna mieć możliwość odczytywania naszych wiadomości, ale uprawnień do wrzucania posta na bloga już nie. Na razie nie ma sensu tego implementować, tak jak i nie ma sensu implementować wielkiej strony do oAuth. Jak będzie potrzeba dodać nową appkę, może zrobić to Dawid w bazie, tak, jak będzie to wyglądało z jego rozwiązaniem. OAuth jednak taką możliwość daje, pomysł Dawida nie, a też wymaga pracy. Bezpieczeństwa to nie zmniejjsza w żaden sposób. Komunikacja między użytkownikiem a Eltenem jest i tak szyfrowana dzięki protokołowi HTTPS, więc nikt po drodze jej nie przechwyci. Druga warstwa szyfrowania wiele tu nie pomoże, a doda pracy. Jeżeli chcemy zabezpieczyć się przed tym, aby użytkownicy poznali działanie API, elten nie powinien być otwarty, bo to można najłatwiej wyczytać z kodu. Jeżeli chcemy zabezpieczyć się przed tym, żeby użytkownik podejrzał tajne kody klienta, należy użyć tzw. techniki certificate pinning. Sprawia ona, że nie ważne, co użytkownik zrobi w systemie, Elten nie pozwoli mu tak łatwo odszyfrować swojej komunikacji i w niej poszperać. Właśnie na oAuthu i takiej technice bazuje większość dużych API i działa to dobrze. Takich własnych, dziwnych i niedorobionych rozwiązań w sieci jeszcze nie widziałem.
w związku z przesiadką na Maca, prawie mnie tutaj nie ma. Inne sposoby kontaktu w wizytówce.
13.08.2019 00:18

7 z 20: pajper

Oauth nie jest tu, Mikołaju, odpowiedzią ze względu na to, że Elten jest Open-Source i posiada konsolę.
Wykradnięcie klucza byłoby banalnie proste.

A ja jakoś obecnie nie widzę żadnych problemów kontrolek, ale nie będę wracał do tej dyskusji.
#StandWithUkraine Shoot for the Moon. Even if you miss, you'll land among the stars.
13.08.2019 01:24

8 z 20: cinkciarzpl

Oj, przydałby się tu zewnętrzny pentest.
____________Panu się zdaje, że życie polega na tym, żeby dorosnąć. Co? Być dorosłym; zdać egzamin; zadośćuczynić normom. A co to jest norma? Czy pan, jako psychiatra może mi odpowiedzieć? Co to jest norma? Nie może pan, bo to jest g**no.
13.08.2019 12:38

9 z 20: midzi

@Pajper - programista ze mnie żaden, ale otwartość kodu nie ma tu raczej nic do rzeczy, ktoś już to rozkminiał:
https://stackoverflow.com/questions/4616553/using-oauth-in-free-open-source-software

13.08.2019 13:45

10 z 20: pajper

@midzi tu problem jest szerszy, niż tylko otwartość kodu, bo po prostu Elten ma i musi mieć konsolę.
Wystarczy więc przechwycić klucz w ten sposób, a znając kod, wiadomo dokładnie, jak to sprawdzić.
#StandWithUkraine Shoot for the Moon. Even if you miss, you'll land among the stars.
13.08.2019 13:58

11 z 20: mikolajholysz

Co stoi na przeszkodzie przechwycenia klucza w twojej metodzie i dla czego nie może to być użyte do przechwycenia klucza w oAuth?

Tak czy inaczej, security through obscurity nie działało, nie działa i nie będzie. Jeżeli użytkownik ma łączyć się z Eltenem używając klucza, to będzie miał dostęp do tego klucza, kwestia tylko, kto będzie inteligentniejszy, ty chowając czy on szukając. Z racji, że ty jesteś jeden, a ich wielu, wynik tego wyścigu można dość łatwo przewidzieć. Klucze Twittera i innych podobnych appek też krążą w Internecie, ale tam problem rozwiązuje się po pierwsze na poziomie licencyjnym, po drugie na poziomie systemów anti abuse, które wykrywają np. ruch z oficjalnego klucza klienta na Androida, który nie wygląda jak ruch z oficjalnego klienta na androida.
w związku z przesiadką na Maca, prawie mnie tutaj nie ma. Inne sposoby kontaktu w wizytówce.
13.08.2019 15:18

12 z 20: pajper

Znowu zakładasz, że połowa Eltenowiczów to hakerzy grzebiący się w Asemblerze. :)
Nie istnieją zabezpieczenia nie do obejścia, ale istnieją takie, które mogą zniechęcić. A klucz skompilowany, niedostępny dla użytkownika, a wyłącznie jako funkcja podpisująca wiadomość obecną datą jest takim czynnikiem.
#StandWithUkraine Shoot for the Moon. Even if you miss, you'll land among the stars.
13.08.2019 15:25

13 z 20: midzi

@Pajper: Połowa nie jest potrzebna, starczy 1, a zdeterminowany. A konsekwencje wycieku w przypadku Eltena imho mogą być nawet poważniejsze niż te w przypadku FB, choć na znacznie mniejszą skalę, ale właśnie z tej skali wynikające.

13.08.2019 15:30

14 z 20: pajper

Ale wyciek klucza Eltena nie jest groźny dla prywatności, przynajmniej sam wyciek klucza.
Może on być groźny, jeśli prócz klucza odnaleziono jakąś lukę w zabezpieczeniach, ale na to niewiele można poradzić, prócz ciągłego sprawdzania kodu. Ale nikt nie jest nieomylny.
#StandWithUkraine Shoot for the Moon. Even if you miss, you'll land among the stars.
13.08.2019 15:31

15 z 20: cinkciarzpl

Już sobie wyobrażam te szantarze. W naszym mikrośrodowisku to wcale nie jest taki odjechany temat.
____________Panu się zdaje, że życie polega na tym, żeby dorosnąć. Co? Być dorosłym; zdać egzamin; zadośćuczynić normom. A co to jest norma? Czy pan, jako psychiatra może mi odpowiedzieć? Co to jest norma? Nie może pan, bo to jest g**no.
13.08.2019 16:59

16 z 20: tomecki

Jak cię Pajperze lubię, tak jakoś dziwnie argumentujesz. Najpierw piszesz, że klucz jest baardzo ważny i musi to być super bezpieczne. Na logikę brzmi nieźle. Mikołaj piszę, że ta twoja metoda z jakichś przyczyn nie jest najlepsza, na co mówisz, że ee tam przecież hakierów u nas nie ma więc w zasadzie olać. Midzi na to, że wystarczy jeden a porządny i będzie taniec z szablami, na co z kolei znowu twierdzisz, że tak w zasadzie klucz to jeszcze nic, bo jeszcze luki trzeba. No to jak to z tym jest? Mikołąj dobrze pisze czy źle, bo na to nie odpowiedziałeś? no i jak to z tym kluczem? trzeba się o to bać czy nie?
A swoją drogą jak to jest, że np. Twitter pozwala na pisanie klientó zewnętrznych i dziua w niebie się nie dzieje? Pamiętaj też, że FB na to nie pozwala i my, niewidomi mięliśmy, a niektózy mają nadal problem, bo to tak sobie dostępne na niektóych platformach. Może jednak da się tego Eltena otworzyć i mieć spokój zwłszcza w kontekście założonego niedawno przez Mikołaja wątku?

13.08.2019 17:06

17 z 20: pajper

To zależy od pytania i klucza, bo temat jest szeroki. Klucz nie pozwoli bez zgody się logować na konto z nieznanych aplikacji, co jest elementem bezpieczeństwa, ale jego przejęcie samo w sobie nie musi być niebezpieczne. To element także zwiększający bezpieczeństwo konta i Eltena, ale nie element niezbędny.
#StandWithUkraine Shoot for the Moon. Even if you miss, you'll land among the stars.
13.08.2019 17:09

18 z 20: mikolajholysz

@cinkciarzpl Inaczej. Posiadanie klucza nie sprawi, że będziemy mogli magicznie logować się ludziom na konta. Wprost przeciwnie, pozwoli on logować się nam na nasze własne, jako oficjalny klient Eltena. Różnica jest taka, że bez klucza, jako zewnętrzny deweloper musimy prosić Dawida o łaskę i uświęcenie naszego klucza, mając taki wyciągnięty robimy, co chcemy. Z włamywaniem się na czyjeś konta nie ma to nic wspólnego.

@pajper czemu klucz oAuth nie może być dostępny w takiej formie? Funkcja zamiast szyfrować wykonuje po prostu od razu request, dodając mu, gdzie trzeba, secret.
w związku z przesiadką na Maca, prawie mnie tutaj nie ma. Inne sposoby kontaktu w wizytówce.
14.08.2019 00:47

19 z 20: lukasz1993258

No to czy wiadomo, co z tą nową polityką?

25.09.2019 16:31

20 z 20: Monia01

Przypis moderacji: usunęłam wpisy dotyczące tego, jak pisać poprawnie
*** ?? ??
27.09.2019 14:26

Wróć do listy wątków

1 z 1


Nawigacja


Copyright (©) 2014-2024, Dawid Pieper