- Shipped
- 24 września 2026 01:31 UTC
- Author
- Kamo
- Commit
- 46191c4
15 miejsc hak otwiera STOMP / SockJS połączenie z MediaService (media. < domain > / ws) lub EmailService (poprzez przepisywanie / email- ws) umieszczał w łańcuchu zapytań pierwotny identyfikator sesji 128- char * * * - Dziennik dostępu Traefika trzymał go w klartexcie tak długo, jak go trzyma. Ten dowód to: nie można już odczytać ze skryptu strony (aplikacja / lib / session), więc wartość była I tak znikną z tych haczyków. Hak zamiast tego miesza klucz jednokrotny: Nie, nie, nie. POST / api / generate- otk? cel = ws (klucz 64- heks- char, 30 s TTL) i przekazuje go do stompjs klienta 'beforConnect', który stompjs czeka przed każdym połączeniem i każdym ponownym połączeniem - więc haczyk, który Godzinę później rekonesansują świeży klucz, zamiast odtwarzać go na nowo. Każdy webSocketFactory czyta najnowszy klucz w chwili, gdy buduje URL SockJS ('? otk = < key >'); a nieudany mięta nadal próbuje połączyć bez klucza, którego backend odmawia, i stompjs ponownie próbuje po ponownym połączeniu Delay. Istniejące "jest sesja w ogóle" bramy są nietknięte - kilka haków nadal czytać SessionStorage bezpośrednio do tego sprawdzenia prawdziwości, który jest w porządku i niezwiązane z wartość na drucie. * * * * * * * * * * * * * * * * * teraz nie udaje się także w żadnym pliku klienta (testy są wyłączone - nazywają go zakaz) który nadal buduje adres URL z '* * * =', wskazując na mintWsKey. Znalazł dokładnie te 15 miejsca pochodzenia / głównego; nikt nie pozostaje, a przywrócenie jednego starego haka zmienia go na czerwony. MediaService (b0e08ac2) i EmailService (279723a4) już akceptują '? otk =' - sprawdzone najpierw i nie zużyty, nieznany klucz odmówił bezpośrednio, dziedzictwo '? * * * = "nadal akceptowane dla starszych klientów - i obydwa uruchamiają te zobowiązania. Testy: wsSessionAuth.test.ts, * * * * * * * * * * * * * * * * * * * * * * * * (Vitest teraz zbiera app / hacks / * * / _ _ tests _ _); typy / @ stomp _ _ stompjs.d.ts deklaruje przed Connect.
