كيف يحمي WindowsHelper جهاز الكمبيوتر الخاص بك + هاتفك، وما هو التشفير الذي نستخدمه، وما لا ندافع ضده صراحةً. آخر تحديث: 2026-04-25.
البريد الإلكتروني support@windowshelper.app مع الموضوع [security]. من فضلك لا تفتح مشكلات GitHub العامة — امنحنا فرصة لإرسال الإصلاح قبل الكشف عنها.
رمز الاقتران هو سر مشترك كل عملية تشفير أخرى مستمدة من. دورة الحياة الكاملة:
[ 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; بمجرد الاقتران، يبقى الرمز في الذاكرة حصريًا.يتم تشفير كل أمر يتم إرساله عبر السلك باستخدام AES-256-GCM، وهو وضع تشفير مصادق عليه.
SHA-256("WH_SECURE_{code}_{sessionId}_CMD_KEY").Random.secure() على الهاتف أو RandomNumberGenerator على رفيق.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 sees AESGCM:... blobs, not commands. |
| مهاجم يمكنه الكتابة إلى Firestore لكنه لا يعرف الرمز | مخففة | فشل التحقق من HMAC؛ رفيق يسجل الرفض + يرفض التنفيذ. |
| المهاجم الذي قام باختراق/تصيد رمز الاقتران | المتبقية | يمكنهم إصدار الأوامر كما لو كانوا المستخدم. التخفيف: قم بتدوير الكود من قائمة الدرج. |
| إعادة تشغيل أمر مسجل | المتبقية | sentAtMillis is HMAC-bound; companion doesn't yet enforce a freshness window. Future fix adds a TTL. |
| وضع LAN مهاجم غير مصادق عليه | مخففة | تعمل مصافحة زوج WebSocket على التحقق من صحة الكود؛ بوابة HMAC + AES لكل أمر لاحق. |
| هاتف مخترق مع مفتاح الاقتران المسروق | المتبقية | لا يمكن تمييزه عن "المستخدم نفسه". التخفيف: حد المعدل (10 سمد/دقيقة) + تأكيد الأمر المدمر يتطلب النقر على جانب الكمبيوتر. |
| أمر مكتوب بشكل خاطئ من تطبيق الهاتف | مخففة | تحظر القائمة المسموح بها على جانب الهاتف البادئات غير المعروفة؛ أوامر كتل ما قبل الرحلة من الجانب المصاحب والتي تستهدف الخدمات غير الموجودة. |
| تشغيل الأمر المدمر عن طريق الخطأ | مخففة | Companion-side modal requires user click to approve Remove-Item, Format-Volume, reg delete, shutdown /r, etc. |
| عملية PowerShell المعلقة/الهاربة | مخففة | تؤدي المهلة الصعبة البالغة 5 دقائق إلى قتل شجرة العملية بأكملها. |
| Companion العبث بملف .exe بين التنزيل والتشغيل | مخففة | SHA-256 published in companion-version.json; users can verify. Authenticode signing landing soon. |
| Companion عطل تسرب الحالة الحساسة | مخففة | تقارير الأعطال + تعقيم عمليات كتابة الأخطاء في Firestore %USERPROFILE% / %MACHINE% / %USER%. |
| جهاز مسروق، مفتاح إقران التسجيل المستمر | المتبقية | يمكن للمهاجم الذي لديه حق الوصول إلى القرص + تسجيل الدخول قراءة التعليمات البرمجية المستمرة. الإصلاح المستقبلي يغلفه بـ Windows DPAPI. |
الأشياء التي يفعلها WindowsHelper صراحةً لا الدفاع ضد:
[security].