← Torna a WindowsHelper

Modello di sicurezza

In che modo WindowsHelper protegge il tuo PC e il tuo telefono, quale crittografia utilizziamo e da cosa non ci difendiamo esplicitamente. Ultimo aggiornamento: 25-04-2026.

segnalare una vulnerabilità

E-mail support@windowshelper.app con soggetto [security]. Per favore non aprire problemi pubblici su GitHub: dacci una finestra per inviare una correzione prima della divulgazione.

Ciclo di vita del codice di abbinamento

Il codice di abbinamento è il segreto condiviso da cui deriva ogni altra operazione crittografica. L'intero ciclo di vita:

[ Phone GENERATES random 8-char code ]
   ↓
[ Phone WRITES code + sessionId to Firestore in pc_connections doc ]
   ↓
[ Phone DISPLAYS code to user on screen ]
   ↓
[ User READS code, types it into companion's input field ]
   ↓
[ Companion QUERIES Firestore for waiting session matching the code ]
   ↓
[ Both sides DERIVE crypto keys from SHA-256(code, sessionId) ]
   ↓
[ Code STAYS in memory on both sides; never written to Firestore by either ]
   ↓
[ Disconnect / re-pair WIPES the code from both sides ]

Crittografia

AES-256-GCM (riservatezza dei comandi + integrità)

Ogni comando inviato via cavo viene crittografato con AES-256-GCM, una modalità di crittografia autenticata.

HMAC-SHA256 (autenticità del comando)

Ogni comando porta anche una firma HMAC, quindi un telefono che non conosce il codice di accoppiamento non può inviare comandi anche se può scrivere su Firestore.

Modello di minaccia

MinacciaStatoNote
Intercettatore della rete localeMitigatoIl testo cifrato AES-GCM è opaco per gli osservatori MITM.
Intercettatore sui server FirestoreMitigatoGoogle sees AESGCM:... blobs, not commands.
Aggressore che può scrivere su Firestore ma non conosce il codiceMitigatoLa verifica HMAC fallisce; il compagno registra il rifiuto + rifiuta l'esecuzione.
Aggressore che ha violato/phishing il codice di accoppiamentoResiduoPossono impartire comandi come se fossero l'utente. Mitigazione: ruotare il codice dal menu della barra delle applicazioni.
Riproduzione di un comando registratoResiduosentAtMillis is HMAC-bound; companion doesn't yet enforce a freshness window. Future fix adds a TTL.
Aggressore non autenticato in modalità LANMitigatoL'handshake della coppia WebSocket convalida il codice; HMAC + AES gate ogni comando successivo.
Telefono compromesso con chiave di accoppiamento rubataResiduoIndistinguibile da "l'utente stesso". Mitigazione: il limite di velocità (10 cmd/min) + la conferma del comando distruttivo richiedono un clic dal lato PC.
Comando digitato in modo errato dall'app del telefonoMitigatoLa lista consentita lato telefono blocca i prefissi non riconosciuti; il pre-flight lato compagno blocca i comandi destinati a servizi inesistenti.
Comando distruttivo eseguito accidentalmenteMitigatoCompanion-side modal requires user click to approve Remove-Item, Format-Volume, reg delete, shutdown /r, etc.
Processo PowerShell bloccato/incontrollatoMitigatoIl timeout rigido di 5 minuti uccide l'intero albero del processo.
Companion Manomissione del file .exe tra il download e l'esecuzioneMitigatoSHA-256 published in companion-version.json; users can verify. Authenticode signing landing soon.
Companion arresto anomalo che perde lo stato sensibileMitigatoReport sugli arresti anomali + ripristini degli errori di Firestore disinfettati %USERPROFILE% / %MACHINE% / %USER%.
Dispositivo rubato, chiave di accoppiamento del registro persistenteResiduoUn utente malintenzionato con accesso al disco + accesso potrebbe leggere il codice persistente. La correzione futura lo avvolge con Windows DPAPI.

Fuori portata

Cose che WindowsHelper fa esplicitamente no difendersi da:

Divulgazione