FlashDesk 安全

FlashDesk 旨在安全處理遠端控制所需的通訊、連線核准、裝置驗證與營運管理。螢幕影像與控制資料依工作階段加密,目標端存取可透過手動核准或密碼控制。

依工作階段加密

FlashDesk 的媒體通訊與控制資料使用工作階段開始時產生的金鑰加密。金鑰交換使用 ECDH P-256,金鑰衍生使用 HKDF-SHA256,加密使用 AES-256-GCM。
每個封包包含序號與驗證標籤,可偵測竄改與舊封包重送。

優先 P2P,必要時中繼

工作階段期間,影像與控制資料會盡可能在裝置之間直接傳輸。如果網路無法直接連線,FlashDesk 會切換到中繼路由,同時 payload 仍保持加密。

目標端明確授權

目標端可透過手動核准或密碼授權允許存取。手動核准可只允許一次連線,也可允許在選定時間內連線,限時工作階段會自動中斷。

裝置指紋驗證

FlashDesk 會為每次安裝建立裝置身分金鑰,並從公開金鑰產生指紋。如果已信任目標的指紋變化,FlashDesk 會提醒你確認目標裝置是否已變更。

信令與授權通訊

FlashDesk 使用 WebSocket over TLS (wss://) 啟動連線,並使用 HTTPS 進行授權驗證等 API 通訊。媒體通訊在建立後由加密工作階段處理。

外部 TLS 憑證

FlashDesk 的 signaling 通訊使用 HTTPS / TLS 上的 WebSocket。以下公開 TLS 憑證資訊由伺服器取得,並會在憑證變更時自動更新。

目標網域
正在載入憑證資訊...
簽發者
正在載入憑證資訊...
SHA-256 指紋
正在載入憑證資訊...
有效期限
正在載入憑證資訊...

暫時無法取得憑證資訊。

外部安全測試

FlashDesk 已使用 OWASP ZAP 對公開網站及相關 endpoints 完成安全測試。我們也已確認 Mozilla Observatory、SSL Labs 和 Security Headers 均達到 A 或更高評級。

系統權限與本機保護

FlashDesk 遵循 macOS、Linux Wayland 等系統要求的權限流程。儲存的連線資訊與密碼會經過處理,以避免明文儲存。

FlashDesk 伺服器處理的資料

FlashDesk 伺服器可能會在服務運作、防止濫用、支援、計費和團隊管理所需範圍內處理以下資訊。

資料用途儲存或暫時說明
FlashDesk ID / 裝置識別碼連線啟動、裝置查找、授權關聯依需要儲存用於識別裝置並路由請求。
裝置 fingerprint 公開資訊裝置驗證和 ID 綁定適用時以 hash 形式儲存伺服器保存 fingerprint 相關 hash,不保存私人身分金鑰。
應用程式版本和 OS 類型相容性、支援和營運分析隨用戶端狀態儲存或更新在適用的管理和支援情境中顯示。
連線狀態和路徑狀態連線維護、seat 控制、管理可見性工作階段期間暫時處理;Pro 可保存選定稽核記錄回報時可能包含 direct、relay 或 probing 狀態。
IP 位址和網路中繼資料服務運作、防止濫用、診斷依需要存入營運記錄可能包含 last seen IP、下載統計和 WebSocket 診斷中繼資料。
授權 / 訂閱狀態授權驗證、計費、seat 管理依需要儲存支付卡詳細資料由支付服務商處理,不由 FlashDesk 保存。
錯誤記錄或營運記錄支援、故障調查、防止濫用作為營運記錄保存;伺服器記錄 30 天後自動刪除WebSocket 記錄會遮蔽 ssh_tunnel_data payload;其他中繼資料可能用於診斷記錄。
Pro 使用者的管理控制台活動團隊管理、授權和工作階段審查作為管理記錄保存包含組織、使用者、授權、seat 和工作階段稽核記錄。

FlashDesk 伺服器不儲存的資料

在一般遠端連線中,FlashDesk 伺服器不會儲存以下資訊:

  • 遠端螢幕影像內容
  • 鍵盤輸入內容
  • 滑鼠操作內容
  • 檔案傳輸內容
  • 作為 ssh_tunnel_data 處理的 SSH tunnel payload 內容
  • 錄製的工作階段影像內容

網路端點與通訊協定

下表彙整管理員在部署前可能需要確認的通訊。

用途通訊協定連接埠主要通訊目標說明
網站 / 下載HTTPS443/TCPFlashDesk 官方伺服器下載頁面顯示官方發行檔案的版本和 SHA-256 checksum。
信令WebSocket over TLS (wss://)443/TCPflashdesk.io/ws用於啟動工作階段並交換 candidate 資訊。
API / 授權檢查HTTPS443/TCPflashdesk.io/api/license/verify用於檢查已註冊授權金鑰和 seat 狀態。
更新檢查HTTPS443/TCPflashdesk.io/data/latest.json 和套件路徑應用程式定期透過 HTTPS 檢查更新 manifest,從官方伺服器下載更新套件,並在套用前驗證預期 SHA-256 hash。
STUN / P2P candidate 檢查UDP3478/UDPFlashDesk 官方伺服器在嘗試直接 P2P 前發現可到達的網路 endpoint。
直接 P2P 連線UDP media/control path對端裝置上的動態 UDP 連接埠對端裝置網路 endpoint當 NAT/firewall 條件允許時優先使用直接連線。
Relay 連線透過 relay 路徑傳輸的加密 media/control payload目前 desktop app 使用 40020/UDPFlashDesk relay server當裝置間直接路徑不可用時使用。SDK relayws 回應使用 443/TCP。

Relay 伺服器行為

FlashDesk 會先嘗試裝置之間的直接路徑。由於 NAT、防火牆、VPN 和行動網路可能阻止直接 UDP 通訊,必要時工作階段會透過 relay 路徑繼續。

使用 relay routing 時,relay 伺服器會轉送工作階段 packet。media/control payload 仍以每個工作階段的金鑰加密,packet 包含用於偵測竄改或舊 packet 重放的驗證資料。

安裝與背景行為

FlashDesk 可在背景執行,並在設定啟用時隨 OS 自動啟動。目前預設設定會啟用 OS 啟動。

  • 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 權限。macOS 可能需要 Screen Recording 和 Accessibility。Linux Wayland 使用 desktop portal / PipeWire。FlashDesk 會定期檢查 HTTPS 更新 manifest,從官方伺服器下載更新套件,並在套用前驗證預期 SHA-256 hash。

本機設定儲存在使用者應用程式資料資料夾的 FlashDesk/flashdesk_settings.json。本機應用程式記錄寫入 FlashDesk/logs,目前程式碼保留 7 天。本機螢幕錄製在使用者啟用時儲存在 FlashDesk/recording。

檔案真實性與程式碼簽署

下載頁面會顯示官方發行檔案的版本和 SHA-256 checksum。安裝前,使用者可以將下載檔案的 SHA-256 與頁面公布值比較。

  • Windows: FlashDesk .exe 檔案使用 Authenticode 簽署。可在檔案內容 > 數位簽章中檢查,或在 PowerShell 執行 Get-AuthenticodeSignature .\FlashDesk.exe
  • macOS: FlashDesk .pkg 和 .app 發行檔使用 Apple Developer ID 憑證簽署,並已由 Apple notarized。
  • Linux: 請驗證 .deb、.rpm 和 AppImage 下載的公開 SHA-256 checksum。

漏洞回報

安全問題請使用聯絡頁面,並在主旨加入 [Security]

請包含受影響版本、OS、重現步驟、可用記錄和相關截圖。

營運建議

建議不要在共用電腦上儲存密碼,刪除不再需要的目標,不核准無法辨識的指紋變更,並為長時間工作階段使用時間限制。