← Powrót do WindowsHelper

Model bezpieczeństwa

W jaki sposób WindowsHelper chroni Twój komputer i telefon, jakiej kryptografii używamy i przed czym wyraźnie się nie bronimy. Ostatnia aktualizacja: 25.04.2026.

zgłaszanie luki

E-mail support@windowshelper.app z tematem [security]. Nie otwieraj publicznych problemów w GitHubie — daj nam czas na przesłanie poprawki przed ujawnieniem.

Cykl życia kodu parowania

Kod parowania to wspólny sekret, z którego wywodzi się każda inna operacja kryptograficzna. Pełny cykl życia:

[ Telefon TWORZY losowy 8-znakowy kod ]
   ↓
[ Telefon ZAPISUJE kod + sessionId w Firestore, w dokumencie pc_connections ]
   ↓
[ Telefon WYŚWIETLA kod użytkownikowi na ekranie ]
   ↓
[ Użytkownik ODCZYTUJE kod i wpisuje go w pole Companiona ]
   ↓
[ Companion WYSZUKUJE w Firestore oczekującą sesję pasującą do kodu ]
   ↓
[ Obie strony WYPROWADZAJĄ klucze szyfrujące z SHA-256(kod, sessionId) ]
   ↓
[ Kod POZOSTAJE w pamięci po obu stronach; żadna nie zapisuje go w Firestore ]
   ↓
[ Rozłączenie / ponowne parowanie USUWA kod po obu stronach ]

Kryptografia

AES-256-GCM (poufność poleceń + integralność)

Każde polecenie wysyłane przewodem jest szyfrowane przy użyciu AES-256-GCM, trybu szyfrowania uwierzytelnionego.

HMAC-SHA256 (autentyczność poleceń)

Każde polecenie zawiera również podpis HMAC, więc telefon, który nie zna kodu parowania, nie może wstrzykiwać poleceń, nawet jeśli może pisać do Firestore.

Model zagrożenia

ZagrożenieStanNotatki
Podsłuchiwacz w sieci lokalnejZłagodzonyTekst zaszyfrowany AES-GCM jest nieprzezroczysty dla obserwatorów MITM.
Podsłuchiwacz na serwerach FirestoreZłagodzonyGoogle widzi bloki AESGCM:..., a nie polecenia.
Atakujący, który może pisać do Firestore, ale nie zna koduZłagodzonyWeryfikacja HMAC się nie udaje; Companion zapisuje odrzucenie i odmawia wykonania.
Osoba atakująca, która złamała/wyłudziła kod parowaniaPozostałyMogą wydawać polecenia tak, jakby byli użytkownikiem. Łagodzenie: obróć kod z menu zasobnika.
Powtórka nagranego poleceniaPozostałysentAtMillis jest powiązany z HMAC; Companion nie wymusza jeszcze okna ważności. Przyszła poprawka doda termin ważności.
Nieuwierzytelniony atakujący w trybie LANZłagodzonyUzgadnianie pary protokołu WebSocket sprawdza poprawność kodu; Bramka HMAC + AES przy każdym kolejnym poleceniu.
Zhakowany telefon ze skradzionym kluczem do parowaniaPozostałyNie do odróżnienia od „samego użytkownika”. Ograniczanie: limit szybkości (10 cmd/min) + potwierdzenie polecenia niszczącego wymaga kliknięcia po stronie komputera.
Błędnie wpisane polecenie z aplikacji na telefonZłagodzonyLista dozwolonych po stronie telefonu blokuje nieznane prefiksy; kontrola wstępna po stronie Companion blokuje polecenia kierowane do nieistniejących usług.
Destrukcyjne polecenie zostało uruchomione przypadkowoZłagodzonyOkno po stronie aplikacji Companion wymaga kliknięcia użytkownika, aby zatwierdzić Remove-Item, Format-Volume, reg delete, shutdown /r itp.
Zawieszony/niekontrolowany proces PowerShellZłagodzonyKażde polecenie ma limit czasu — domyślnie 5 minut, 45 dla długiej naprawy, 60 przy twardym suficie — i kończone jest całe drzewo procesów.
Companion Manipulowanie plikiem .exe pomiędzy pobieraniem i uruchamianiemZłagodzonySHA-256 publikowany w companion-version.json; użytkownicy mogą go sprawdzić. Podpis Authenticode jest zaplanowany przed premierą.
Companion awaria, wyciek, stan wrażliwyZłagodzonyRaporty o awariach + zapisywanie zwrotne błędów Firestore oczyszczają %USERPROFILE% / %MACHINE% / %USER%.
Skradzione urządzenie, zachowany klucz parowania rejestruZłagodzonyUtrwalony kod parowania jest szyfrowany za pomocą Windows DPAPI (na konto), więc nie można go odczytać ze skopiowanego dysku ani innego konta Windows.

Poza zakresem

Rzeczy, przed którymi WindowsHelper wyraźnie nie chroni:

Ujawnienie