Paano pinoprotektahan ng WindowsHelper ang iyong PC + ang iyong telepono, anong cryptography ang ginagamit namin, at kung ano ang tahasang hindi namin ipinagtatanggol. Huling na-update: 2026-04-25.
Email support@windowshelper.app may paksa [security]. Mangyaring huwag buksan ang mga pampublikong isyu sa GitHub — bigyan kami ng isang window upang magpadala ng isang pag-aayos bago ang pagbubunyag.
Ang pairing code ang nakabahaging lihim na pinagmumulan ng bawat iba pang crypto operation. Ang buong ikot ng buhay:
[ GUMAGAWA ang telepono ng random na code na 8 karakter ] ↓ [ ISINUSULAT ng telepono ang code + sessionId sa Firestore, sa dokumentong pc_connections ] ↓ [ IPINAPAKITA ng telepono ang code sa user sa screen ] ↓ [ BINABASA ng user ang code at ini-type ito sa input field ng Companion ] ↓ [ HINAHANAP ng Companion sa Firestore ang naghihintay na session na tumutugma sa code ] ↓ [ KINUKUHA ng magkabilang panig ang mga crypto key mula sa SHA-256(code, sessionId) ] ↓ [ NANANATILI ang code sa memory ng magkabilang panig; wala sa kanila ang nagsusulat nito sa Firestore ] ↓ [ BINUBURA ng pag-disconnect / muling pagpapares ang code sa magkabilang panig ]
Ang bawat command na ipinadala sa pamamagitan ng wire ay naka-encrypt gamit ang AES-256-GCM, isang authenticated-encryption mode.
SHA-256("WH_SECURE_{code}_{sessionId}_CMD_KEY").Random.secure() sa telepono o RandomNumberGenerator sa Companion.AESGCM:<nonce_b64>:<ciphertext_b64>:<tag_b64>Ang bawat command ay mayroon ding HMAC signature kaya ang teleponong hindi alam ang pairing code ay hindi makakapag-inject ng mga command kahit na maaari itong sumulat sa Firestore.
SHA-256("WH_SECURE_{code}_{sessionId}_HMAC_KEY"). Hiwalay sa encryption key.HMAC-SHA256(hmacKey, commandId | ciphertext | sentAtMillis). Ang mga tubo ay literal na mga character ng pipe, hindi mga delimiter - tatlong pinagsama-samang mga string.| pananakot | Katayuan | Mga Tala |
|---|---|---|
| Eavesdropper sa lokal na network | Pinagaan | Ang AES-GCM ciphertext ay opaque sa mga tagamasid ng MITM. |
| Eavesdropper sa mga server ng Firestore | Pinagaan | Nakikita ng Google ang mga blob na AESGCM:..., hindi mga utos. |
| Attacker na maaaring sumulat sa Firestore ngunit hindi alam ang code | Pinagaan | Bumagsak ang HMAC verification; nila-log ng Companion ang pagtanggi at hindi ito pinapatakbo. |
| Attacker na nag-crack / nag-phished ng code ng pagpapares | Nalalabi | Maaari silang mag-isyu ng mga utos na parang sila ang gumagamit. Pagbawas: i-rotate ang code mula sa tray menu. |
| I-replay ang isang naitala na utos | Nalalabi | Naka-bind sa HMAC ang sentAtMillis; hindi pa ipinapatupad ng Companion ang takdang panahon ng bisa. Magdaragdag ng petsa ng pag-expire ang isang susunod na pag-aayos. |
| Hindi na-authenticate na attacker ang LAN-mode | Pinagaan | Ang WebSocket pair handshake ay nagpapatunay sa code; HMAC + AES gate sa bawat kasunod na utos. |
| Nakompromiso ang teleponong may ninakaw na key ng pagpapares | Nalalabi | Hindi makilala sa "ang gumagamit mismo." Pagbawas: limitasyon sa rate (10 cmd/min) + mapanirang-utos na kumpirmasyon ay nangangailangan ng pag-click sa gilid ng PC. |
| Maling na-type na command mula sa phone app | Pinagaan | Hinaharangan ng allowlist sa panig ng telepono ang mga hindi kilalang prefix; hinaharangan ng pre-flight check sa panig ng Companion ang mga utos na nakatutok sa mga serbisyong wala naman. |
| Ang mapanirang utos ay tumakbo nang hindi sinasadya | Pinagaan | Isang window sa panig ng Companion ang humihingi ng pag-click ng user para aprubahan ang Remove-Item, Format-Volume, reg delete, shutdown /r, atbp. |
| Hung / runaway na proseso ng PowerShell | Pinagaan | May hangganan sa oras ang bawat utos — 5 minuto bilang default, 45 para sa mahabang ayos, 60 sa matigas na hangganan — at pinapatay ang buong process tree. |
| Companion .exe na pakikialam sa pagitan ng pag-download at pagtakbo | Pinagaan | Inilalathala ang SHA-256 sa companion-version.json; puwede itong suriin ng mga user. Nakaplano ang Authenticode signing bago ang paglulunsad. |
| Ang pag-crash ng Companion na tumutulo sa sensitibong estado | Pinagaan | Ang mga ulat ng pag-crash + Ang mga writeback ng error sa Firestore ay nag-sanitize %USERPROFILE% / %MACHINE% / %USER%. |
| Ninakaw na device, nagpatuloy sa pagpapares ng Registry key | Pinagaan | Ang patuloy na code ng pagpapares ay naka-encrypt gamit ang Windows DPAPI (bawat-account), kaya hindi ito mababasa mula sa isang kinopyang disk o ibang Windows account. |
Mga bagay na tahasang hindi ipinagtatanggol ng WindowsHelper:
[security].