Hoe WindowsHelper uw pc en uw telefoon beschermt, welke cryptografie we gebruiken en waar we ons expliciet niet tegen verdedigen. Laatst bijgewerkt: 25-04-2026.
E-mail support@windowshelper.app met onderwerp [security]. Open alstublieft geen openbare GitHub-problemen; geef ons de tijd om een oplossing te verzenden voordat deze openbaar wordt gemaakt.
De koppelingscode is de gedeeld geheim elke andere crypto-operatie komt voort uit. De volledige levenscyclus:
[ 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 ]
pairingCode; eenmaal gekoppeld blijft de code uitsluitend in het geheugen.Elke opdracht die via de draad wordt verzonden, wordt gecodeerd met AES-256-GCM, een geverifieerde coderingsmodus.
SHA-256("WH_SECURE_{code}_{sessionId}_CMD_KEY").Random.secure() op telefoon of RandomNumberGenerator op metgezel.AESGCM:<nonce_b64>:<ciphertext_b64>:<tag_b64>Elke opdracht heeft ook een HMAC-handtekening, zodat een telefoon die de koppelingscode niet kent, geen opdrachten kan injecteren, zelfs als deze naar Firestore kan schrijven.
SHA-256("WH_SECURE_{code}_{sessionId}_HMAC_KEY"). Los van de coderingssleutel.HMAC-SHA256(hmacKey, commandId | ciphertext | sentAtMillis). De pijpen zijn letterlijke pijptekens, geen scheidingstekens: drie aaneengeschakelde strings.| Bedreiging | Status | Opmerkingen |
|---|---|---|
| Afluisteraar op het lokale netwerk | Verzacht | AES-GCM-cijfertekst is ondoorzichtig voor MITM-waarnemers. |
| Afluisteraar op Firestore-servers | Verzacht | Google sees AESGCM:... blobs, not commands. |
| Aanvaller die naar Firestore kan schrijven maar de code niet kent | Verzacht | HMAC-verificatie mislukt; metgezel registreert de afwijzing + weigert uitvoering. |
| Aanvaller die de koppelingscode heeft gekraakt/phished | Resterend | Zij kunnen opdrachten geven alsof zij de gebruiker zijn. Oplossing: roteer de code vanuit het lademenu. |
| Herhaling van een opgenomen commando | Resterend | sentAtMillis is HMAC-bound; companion doesn't yet enforce a freshness window. Future fix adds a TTL. |
| Niet-geverifieerde aanvaller in LAN-modus | Verzacht | WebSocket-paarhandshake valideert de code; HMAC + AES-poort elke volgende opdracht. |
| Gecompromitteerde telefoon met gestolen koppelingssleutel | Resterend | Niet te onderscheiden van ‘de gebruiker zelf’. Beperking: snelheidslimiet (10 cmd/min) + bevestiging van destructieve opdracht vereist klikken op de pc. |
| Verkeerd getypte opdracht uit de telefoonapp | Verzacht | De toelatingslijst aan de telefoonzijde blokkeert niet-herkende voorvoegsels; begeleidende pre-flight blokkeert opdrachten die gericht zijn op niet-bestaande services. |
| Destructieve opdracht wordt per ongeluk uitgevoerd | Verzacht | Companion-side modal requires user click to approve Remove-Item, Format-Volume, reg delete, shutdown /r, etc. |
| Vastgelopen/op hol geslagen PowerShell-proces | Verzacht | Een harde time-out van 5 minuten doodt de hele procesboom. |
| Companion Er wordt geknoeid met .exe tussen downloaden en uitvoeren | Verzacht | SHA-256 published in companion-version.json; users can verify. Authenticode signing landing soon. |
| Companion crash lekt gevoelige status | Verzacht | Crashrapporten + terugschrijven van Firestore-fouten wordt opgeschoond %USERPROFILE% / %MACHINE% / %USER%. |
| Gestolen apparaat, registratiesleutel blijft bestaan | Resterend | Een aanvaller met schijf- en inlogtoegang zou de persistente code kunnen lezen. Bij een toekomstige oplossing wordt dit omhuld met Windows DPAPI. |
Dingen die WindowsHelper expliciet doet niet verdedigen tegen:
[security].