Πώς το WindowsHelper προστατεύει τον υπολογιστή σας + το τηλέφωνό σας, ποια κρυπτογραφία χρησιμοποιούμε και από τι δεν υπερασπιζόμαστε ρητά. Τελευταία ενημέρωση: 25-04-2026.
E-αλληλογραφίας support@windowshelper.app με θέμα [security]. Μην ανοίγετε δημόσια ζητήματα του GitHub — δώστε μας ένα παράθυρο για να στείλουμε μια επιδιόρθωση πριν από την αποκάλυψη.
Ο κωδικός ζεύξης είναι το κοινό μυστικό από το οποίο προέρχεται κάθε άλλη λειτουργία κρυπτογράφησης. Ο πλήρης κύκλος ζωής:
[ Το τηλέφωνο ΔΗΜΙΟΥΡΓΕΙ τυχαίο κωδικό 8 χαρακτήρων ] ↓ [ Το τηλέφωνο ΓΡΑΦΕΙ τον κωδικό + sessionId στο Firestore, στο έγγραφο pc_connections ] ↓ [ Το τηλέφωνο ΕΜΦΑΝΙΖΕΙ τον κωδικό στον χρήστη στην οθόνη ] ↓ [ Ο χρήστης ΔΙΑΒΑΖΕΙ τον κωδικό και τον πληκτρολογεί στο πεδίο του Companion ] ↓ [ Το Companion ΑΝΑΖΗΤΑ στο Firestore τη συνεδρία σε αναμονή που ταιριάζει με τον κωδικό ] ↓ [ Και οι δύο πλευρές ΠΑΡΑΓΟΥΝ κρυπτογραφικά κλειδιά από SHA-256(κωδικός, sessionId) ] ↓ [ Ο κωδικός ΠΑΡΑΜΕΝΕΙ στη μνήμη και στις δύο πλευρές· καμία δεν τον γράφει στο Firestore ] ↓ [ Η αποσύνδεση / νέα σύζευξη ΣΒΗΝΕΙ τον κωδικό και από τις δύο πλευρές ]
Κάθε εντολή που αποστέλλεται μέσω του καλωδίου είναι κρυπτογραφημένη με AES-256-GCM, μια λειτουργία κρυπτογράφησης με έλεγχο ταυτότητας.
SHA-256("WH_SECURE_{code}_{sessionId}_CMD_KEY").Random.secure() στο τηλέφωνο ή RandomNumberGenerator στο Companion.AESGCM:<nonce_b64>:<ciphertext_b64>:<tag_b64>Κάθε εντολή φέρει επίσης μια υπογραφή HMAC, έτσι ώστε ένα τηλέφωνο που δεν γνωρίζει τον κωδικό σύζευξης δεν μπορεί να εισάγει εντολές ακόμα κι αν μπορεί να γράψει στο Firestore.
SHA-256("WH_SECURE_{code}_{sessionId}_HMAC_KEY"). Διαχωρίστε από το κλειδί κρυπτογράφησης.HMAC-SHA256(hmacKey, commandId | ciphertext | sentAtMillis). Οι σωλήνες είναι κυριολεκτικοί χαρακτήρες σωλήνων, όχι οριοθέτες — τρεις συνδυασμένες χορδές.| Απειλή | Κατάσταση | Σημειώσεις |
|---|---|---|
| Υποκλοπής στο τοπικό δίκτυο | Μετριασμένος | Το κρυπτογραφημένο κείμενο AES-GCM είναι αδιαφανές για τους παρατηρητές MITM. |
| Υποκλοπής σε διακομιστές Firestore | Μετριασμένος | Η Google βλέπει μπλοκ AESGCM:..., όχι εντολές. |
| Επιτιθέμενος που μπορεί να γράψει στο Firestore αλλά δεν γνωρίζει τον κωδικό | Μετριασμένος | Η επαλήθευση HMAC αποτυγχάνει· το Companion καταγράφει την απόρριψη και αρνείται την εκτέλεση. |
| Επιτιθέμενος που έσπασε/ψάρεψε τον κωδικό σύζευξης | Υπολειμματικό | Μπορούν να εκδώσουν εντολές σαν να ήταν ο χρήστης. Μετριασμός: περιστρέψτε τον κωδικό από το μενού του δίσκου. |
| Επανάληψη μιας ηχογραφημένης εντολής | Υπολειμματικό | Το sentAtMillis είναι δεσμευμένο με HMAC· το Companion δεν επιβάλλει ακόμη παράθυρο εγκυρότητας. Μελλοντική διόρθωση θα προσθέσει χρόνο λήξης. |
| Επιτιθέμενος χωρίς έλεγχο ταυτότητας σε λειτουργία LAN | Μετριασμένος | Η χειραψία ζεύγους WebSocket επικυρώνει τον κώδικα. HMAC + AES πύλη κάθε επόμενη εντολή. |
| Παραβιασμένο τηλέφωνο με κλεμμένο κλειδί σύζευξης | Υπολειμματικό | Δεν διακρίνεται από το "ο ίδιος ο χρήστης". Μετριασμός: όριο ταχύτητας (10 cmd/min) + επιβεβαίωση καταστροφικής εντολής απαιτεί κλικ από την πλευρά του υπολογιστή. |
| Εσφαλμένη πληκτρολόγηση εντολής από την εφαρμογή τηλεφώνου | Μετριασμένος | Η λίστα επιτρεπόμενων στην πλευρά του κινητού μπλοκάρει άγνωστα προθέματα· ο προέλεγχος στην πλευρά του Companion μπλοκάρει εντολές προς ανύπαρκτες υπηρεσίες. |
| Η καταστροφική εντολή εκτελείται κατά λάθος | Μετριασμένος | Ένα παράθυρο στην πλευρά του Companion απαιτεί κλικ του χρήστη για την έγκριση των Remove-Item, Format-Volume, reg delete, shutdown /r κ.λπ. |
| Αναρτημένη / φυγή διαδικασία PowerShell | Μετριασμένος | Κάθε εντολή έχει χρονικό όριο — 5 λεπτά από προεπιλογή, 45 για μια διόρθωση μεγάλης διάρκειας, 60 στο σκληρό όριο — και τερματίζεται ολόκληρο το δέντρο διεργασιών. |
| Companion .exe παραβίαση μεταξύ λήψης και εκτέλεσης | Μετριασμένος | Το SHA-256 δημοσιεύεται στο companion-version.json· οι χρήστες μπορούν να το ελέγξουν. Η υπογραφή Authenticode έχει προγραμματιστεί πριν από την κυκλοφορία. |
| Companion ευαίσθητη κατάσταση λόγω διαρροής | Μετριασμένος | Αναφορές σφαλμάτων + Εγγραφές σφαλμάτων Firestore απολυμάνουν %USERPROFILE% / %MACHINE% / %USER%. |
| Κλεμμένη συσκευή, συνεχές κλειδί σύζευξης μητρώου | Μετριασμένος | Ο συνεχιζόμενος κώδικας σύζευξης είναι κρυπτογραφημένος με Windows DPAPI (ανά λογαριασμό), επομένως δεν μπορεί να διαβαστεί από έναν αντιγραμμένο δίσκο ή από διαφορετικό λογαριασμό Windows. |
Πράγματα από τα οποία το WindowsHelper ρητά δεν προστατεύει:
[security].