FlashDesk security
FlashDesk remote control کے لیے communication، connection approval، device verification، اور operational management کو محفوظ طریقے سے handle کرنے کے لیے designed ہے۔
ہر session کے لیے encryption
Screen video اور control data session شروع ہونے پر بننے والی keys سے encrypted ہوتے ہیں۔ Key exchange ECDH P-256 استعمال کرتا ہے، key derivation HKDF-SHA256 استعمال کرتا ہے، اور encryption AES-256-GCM استعمال کرتا ہے۔
ہر packet میں sequence number اور authentication tag ہوتا ہے، جس سے tampering اور پرانے replay packets detect ہو سکتے ہیں۔
پہلے P2P، ضرورت پر relay
Session کے دوران video اور control data جہاں ممکن ہو devices کے درمیان direct بھیجا جاتا ہے۔ Direct connection ممکن نہ ہو تو FlashDesk relay routing استعمال کرتا ہے، لیکن media اور control payload session key سے encrypted رہتے ہیں۔
Destination side پر واضح permission
Destination side پر access manual approval یا password-based authorization کے ذریعے allow کیا جا سکتا ہے۔ Manual approval connection کو صرف ایک بار یا منتخب وقت کے لیے allow کر سکتا ہے۔ Time-limited sessions وقت ختم ہونے پر automatically disconnect ہو جاتے ہیں۔
Device fingerprint verification
FlashDesk ہر installation کے لیے device identity key بناتا ہے اور public key سے fingerprint بناتا ہے۔ اگر پہلے trusted destination کا fingerprint بدل جائے تو FlashDesk warning دکھاتا ہے تاکہ آپ destination device check کر سکیں۔
Signaling اور license communication
FlashDesk connections شروع کرنے اور candidate information exchange کرنے کے لیے WebSocket over TLS (wss://) استعمال کرتا ہے۔ License verification جیسے API communication میں HTTPS استعمال ہوتا ہے۔ Signaling server connection شروع کرنے کے لیے ضروری information relay کرتا ہے، جبکہ media communication established encrypted session میں ہوتی ہے۔
بیرونی TLS سرٹیفکیٹ
FlashDesk کی signaling مواصلات HTTPS / TLS پر WebSocket استعمال کرتی ہے۔ نیچے دی گئی عوامی TLS سرٹیفکیٹ معلومات سرور سے حاصل کی جاتی ہیں اور سرٹیفکیٹ تبدیل ہونے پر خودکار طور پر اپ ڈیٹ ہوتی ہیں۔
- ڈومینز
- سرٹیفکیٹ معلومات لوڈ ہو رہی ہیں...
- جاری کنندہ
- سرٹیفکیٹ معلومات لوڈ ہو رہی ہیں...
- SHA-256 فنگرپرنٹ
- سرٹیفکیٹ معلومات لوڈ ہو رہی ہیں...
- میعاد ختم
- سرٹیفکیٹ معلومات لوڈ ہو رہی ہیں...
سرٹیفکیٹ معلومات عارضی طور پر دستیاب نہیں ہیں۔
بیرونی سیکیورٹی ٹیسٹنگ
FlashDesk نے OWASP ZAP کے ذریعے اپنی عوامی ویب سائٹ اور متعلقہ endpoints کی سیکیورٹی ٹیسٹنگ مکمل کر لی ہے۔ ہم نے Mozilla Observatory، SSL Labs اور Security Headers پر A یا اس سے زیادہ ریٹنگز کی بھی تصدیق کی ہے۔
OS permissions اور local protection
FlashDesk ہر OS کے permission flows follow کرتا ہے، جیسے macOS Screen Recording اور Accessibility permissions، اور Linux Wayland screen sharing permissions۔ Saved connection information اور passwords plaintext storage سے بچانے کے لیے process کیے جاتے ہیں۔
FlashDesk سرورز کے زیرِ عمل ڈیٹا
FlashDesk servers may handle the following information as needed for service operation, abuse prevention, support, billing, and team administration.
| Data | Purpose | Stored or temporary | Notes |
|---|---|---|---|
| FlashDesk ID / device identifier | Connection start, device lookup, license association | Stored where needed | Used to identify devices and route requests. |
| Device fingerprint public information | Device verification and ID binding | Stored as a hash where applicable | The server stores fingerprint-related hashes, not the private identity key. |
| App version and OS type | Compatibility, support, and operational analysis | Stored or updated with client status | Shown in admin and support contexts where applicable. |
| Connection status and path status | Connection maintenance, seat control, admin visibility | Temporary during sessions; selected audit records for Pro | Includes whether a session is direct, relay, or probing when reported. |
| IP address and network metadata | Service operation, abuse prevention, diagnostics | Stored in operational records where needed | May include last seen IP, download tracking, and WebSocket diagnostic metadata. |
| License / subscription status | License verification, billing, seat management | Stored where needed | Payment card details are handled by the payment provider, not by FlashDesk. |
| Error logs or operational logs | Support, outage investigation, abuse prevention | Stored as operational logs; server logs are automatically deleted after 30 days | WebSocket logs redact ssh_tunnel_data payloads; other metadata may be logged for diagnostics. |
| Admin console activity for Pro users | Team administration, license and session review | Stored as admin records | Includes organization, user, license, seat, and session audit records. |
وہ ڈیٹا جو FlashDesk سرورز محفوظ نہیں کرتے
FlashDesk servers do not store the following information during ordinary remote connections:
- remote screen video contents
- keyboard input contents
- mouse operation contents
- file transfer contents
- SSH tunnel payload contents handled as ssh_tunnel_data
- recorded session video contents
نیٹ ورک endpoints اور protocols
The following table summarizes communication that administrators may want to review before deployment.
| Purpose | Protocol | Port | Typical destination | Notes |
|---|---|---|---|---|
| Website / download | HTTPS | 443/TCP | FlashDesk official servers | Download pages show the version and SHA-256 checksum for official release files. |
| Signaling | WebSocket over TLS (wss://) | 443/TCP | flashdesk.io/ws | Used to start sessions and exchange candidate information. |
| API / license check | HTTPS | 443/TCP | flashdesk.io/api/license/verify | Used when checking a registered license key and seat status. |
| Update check | HTTPS | 443/TCP | flashdesk.io/data/latest.json and package paths | The app periodically checks the update manifest over HTTPS, downloads update packages from official servers, and verifies the expected SHA-256 hash before applying an update. |
| STUN / P2P candidate check | UDP | 3478/UDP | FlashDesk official servers | Used to discover a reachable network endpoint before attempting direct P2P. |
| Direct P2P connection | UDP media/control path | Dynamic UDP ports on peer devices | Peer device network endpoints | Direct connection is preferred when NAT/firewall conditions allow it. |
| Relay connection | Encrypted media/control payloads over the relay path | 40020/UDP in the current desktop app | FlashDesk relay server | Used when a direct device-to-device path is not available. SDK relayws responses use 443/TCP. |
Relay سرور کا رویہ
FlashDesk first attempts a direct device-to-device path. Because NAT, firewall, VPN, and mobile-network conditions can prevent direct UDP communication, sessions may continue through a relay path when needed.
When relay routing is used, the relay server forwards packets for the session. Media and control payloads continue to be encrypted with the per-session key, and packets include authentication data used to detect tampering or replayed old packets.
انسٹالیشن اور background behavior
FlashDesk can run in the background and can start automatically with the OS when the setting is enabled. The current default setting enables OS startup.
- Windows: startup is managed through a user logon scheduled task named FlashDesk_Autostart, with a legacy Run-key fallback check.
- macOS: startup is managed through a LaunchAgent plist.
- Linux: startup is managed through XDG Autostart.
OS permissions are requested only as needed for features. macOS may require Screen Recording for screen capture and Accessibility for remote input control. Linux Wayland sessions use the desktop portal / PipeWire screen-sharing flow. FlashDesk periodically checks an HTTPS update manifest, downloads update packages from official servers, and verifies the expected SHA-256 hash before applying an update.
Local settings are stored under the user's application data folder in FlashDesk/flashdesk_settings.json. Local app logs are written under the user's local application data folder in FlashDesk/logs with a 7-day retention setting in the current app code. Local screen recordings, when enabled by the user, are stored under FlashDesk/recording on the user's device.
فائل کی authenticity اور code signing
Download pages show the version and SHA-256 checksum for official release files. Before installation, users can compare the downloaded file's SHA-256 checksum with the value published on the download page.
- Windows: FlashDesk .exe files are signed with Authenticode. You can check the signature from file Properties > Digital Signatures, or run
Get-AuthenticodeSignature .\FlashDesk.exein PowerShell. - macOS: FlashDesk .pkg and .app distributions are signed with Apple Developer ID certificates and notarized by Apple.
- Linux: verify the published SHA-256 checksum for .deb, .rpm, and AppImage downloads.
Vulnerability reporting
سکیورٹی مسائل کے لیے Contact page استعمال کریں اور subject میں [Security] شامل کریں۔
Please include the affected version, OS, reproduction steps, logs if available, and screenshots if relevant.
Operational recommendations
Shared PCs پر saved passwords سے گریز کریں، غیر ضروری destinations delete کریں، نامعلوم fingerprint changes approve نہ کریں، اور long-running sessions کے لیے time limits یا automatic disconnect استعمال کریں۔