Bảo mật FlashDesk
FlashDesk được thiết kế để xử lý giao tiếp, phê duyệt kết nối, xác minh thiết bị và quản lý vận hành cần thiết cho remote control.
Mã hóa theo từng phiên
Dữ liệu màn hình và điều khiển được mã hóa bằng khóa tạo khi phiên bắt đầu. Key exchange dùng ECDH P-256, key derivation dùng HKDF-SHA256, và mã hóa dùng AES-256-GCM.
Mỗi packet có sequence number và authentication tag để phát hiện sửa đổi hoặc replay packet cũ.
Ưu tiên P2P, dùng relay khi cần
Trong phiên, video và control data được gửi trực tiếp giữa các thiết bị khi có thể. Nếu mạng không cho phép kết nối trực tiếp, FlashDesk chuyển sang relay routing, trong khi media và control payload vẫn được mã hóa bằng session key.
Cần cho phép rõ ràng ở phía đích
Ở phía đích, access có thể được cho phép bằng manual approval hoặc password authorization. Manual approval có thể cho phép một lần hoặc trong thời gian đã chọn. Phiên giới hạn thời gian sẽ tự ngắt khi hết hạn.
Xác minh device fingerprint
FlashDesk tạo device identity key cho mỗi cài đặt và lấy fingerprint từ public key. Nếu fingerprint của đích đã tin cậy thay đổi, FlashDesk cảnh báo để bạn kiểm tra thiết bị đích.
Signaling và giao tiếp license
FlashDesk dùng WebSocket over TLS (wss://) để bắt đầu kết nối và trao đổi candidate information. API communication như license verification dùng HTTPS. Signaling server chuyển tiếp thông tin cần để bắt đầu kết nối, còn media communication dùng phiên đã mã hóa sau khi thiết lập.
Chứng chỉ TLS bên ngoài
Giao tiếp signaling của FlashDesk sử dụng WebSocket trên HTTPS / TLS. Thông tin chứng chỉ TLS công khai bên dưới được lấy từ máy chủ và tự động cập nhật khi chứng chỉ thay đổi.
- Tên miền
- Đang tải thông tin chứng chỉ...
- Bên phát hành
- Đang tải thông tin chứng chỉ...
- Dấu vân tay SHA-256
- Đang tải thông tin chứng chỉ...
- Hết hạn
- Đang tải thông tin chứng chỉ...
Thông tin chứng chỉ tạm thời không khả dụng.
Kiểm thử bảo mật bên ngoài
FlashDesk đã hoàn tất kiểm thử bảo mật cho website công khai và các endpoint liên quan bằng OWASP ZAP. Chúng tôi cũng đã xác nhận xếp hạng A trở lên trên Mozilla Observatory, SSL Labs và Security Headers.
Quyền OS và bảo vệ cục bộ
FlashDesk tuân theo luồng cấp quyền của từng OS, như Screen Recording và Accessibility trên macOS, và quyền screen sharing trên Linux Wayland. Thông tin kết nối và mật khẩu đã lưu được xử lý để tránh lưu trữ dạng plaintext.
Dữ liệu do máy chủ FlashDesk xử lý
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. |
Dữ liệu không được máy chủ FlashDesk lưu trữ
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
Điểm cuối mạng và giao thức
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. |
Hành vi của máy chủ 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.
Cài đặt và hoạt động nền
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.
Tính xác thực tệp và ký mã
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.
Báo cáo lỗ hổng
Đối với vấn đề bảo mật, hãy dùng trang liên hệ với [Security] trong tiêu đề.
Please include the affected version, OS, reproduction steps, logs if available, and screenshots if relevant.
Khuyến nghị vận hành
Nên tránh lưu mật khẩu trên PC dùng chung, xóa các đích không còn cần thiết, không chấp nhận thay đổi fingerprint không nhận ra, và dùng giới hạn thời gian hoặc tự động ngắt cho các phiên dài.