RustDesk Auth Proof Uses Server-Controlled Salt/Challenge and Fast Double-SHA256, Enabling Offline Brute-Force
Key facts
- Attack vector
- Local
- Privileges required
- Low
- User interaction
- None
- Attack complexity
- Low
- Attack requirements
- Present
- Impact type
- —
- Confidentiality · integrity · availability
- High · None · None
- Fix status
- No fix listed
Attack profile from CVSS 4.0 · CNA. Fix status from CNA.
Summary
Use of Password Hash With Insufficient Computational Effort, Improper Restriction of Excessive Authentication Attempts vulnerability in rustdesk-client RustDesk Client rustdesk-client on Windows, MacOS, Linux, iOS, Android (Client login, peer authentication modules) allows Password Brute Forcing. The authentication proof is SHA256(SHA256(password + salt) + challenge), where both the salt and the challenge are generated entirely by the server with no client-side nonce, and the hash uses no slow key-derivation function. A rogue or on-path API/relay server (see CVE-2026-30794 / CVE-2026-30797) can issue a chosen salt and challenge, capture the resulting proof, and recover the password offline. The capture-replay claim (CWE-294) is withdrawn: the challenge is regenerated per connection (challenge = Config::get_auto_password(6)), so a captured proof is not replayable against the legitimate server. The 1.4.7 OTP brute-force limiter and the existing LOGIN_FAILURES counter constrain only ONLINE attempts and do not address offline recovery. This vulnerability is associated with program files src/client.rs and program routines handle_hash(), handle_login_from_ui() (login proof construction). This issue affects RustDesk Client: through 1.4.8.
Why it matters now
SSVC decision points
CISA ADP · SSVC 2.0.3
- Exploitation
- Poc
- Automatable
- Yes
- Technical impact
- Total
The decision (Track, Attend, Act) also depends on your mission and well-being impact; see CISA's SSVC guide.
Affected products
| Vendor | Product | Affected versions | Fixed in | Status | Source |
|---|---|---|---|---|---|
| rustdesk-client | RustDesk Client | up to 1.4.8 | — | No fix listed | CNA |
- RustDesk Client Vendorrustdesk-client Affected up to 1.4.8 Fixed in — No fix listed CNA
CPE configurations NVD · 6
| CPE | Versions | Role | Vendor |
|---|---|---|---|
| cpe:2.3:a:rustdesk:rustdesk:*:*:*:*:webclient:*:*:* | up to 1.4.5 | Vulnerable | rustdesk-client |
| cpe:2.3:o:apple:iphone_os:-:*:*:*:*:*:*:* | not specified by NVD | Running on | Apple |
| cpe:2.3:o:apple:macos:-:*:*:*:*:*:*:* | not specified by NVD | Running on | Apple |
| cpe:2.3:o:google:android:-:*:*:*:*:*:*:* | not specified by NVD | Running on | |
| cpe:2.3:o:linux:linux_kernel:-:*:*:*:*:*:*:* | not specified by NVD | Running on | Linux |
| cpe:2.3:o:microsoft:windows:-:*:*:*:*:*:*:* | not specified by NVD | Running on | Microsoft |
- cpe:2.3:a:rustdesk:rustdesk:*:*:*:*:webclient:*:*:* Versions up to 1.4.5 Vulnerable ·rustdesk-client
- cpe:2.3:o:apple:iphone_os:-:*:*:*:*:*:*:* Versions not specified by NVD Running on ·Apple
- cpe:2.3:o:apple:macos:-:*:*:*:*:*:*:* Versions not specified by NVD Running on ·Apple
- cpe:2.3:o:google:android:-:*:*:*:*:*:*:* Versions not specified by NVD Running on ·Google
- cpe:2.3:o:linux:linux_kernel:-:*:*:*:*:*:*:* Versions not specified by NVD Running on ·Linux
- cpe:2.3:o:microsoft:windows:-:*:*:*:*:*:*:* Versions not specified by NVD Running on ·Microsoft
Remediation
No fixed version listed by the sources yet.
Timeline
- 2026-10-02 Threatist record created from CVE-2026-30789
- 2026-10-03 Alias added: GHSA-9qf7-q6gx-q652
References
More rustdesk-client Rustdesk vulnerabilities
- TI-2024-16591 A default installation of RustDesk 1.2.3 on Windows places a WDKTestCert certificate… CVSS 3.1CRITICAL 9.8
- TI-2026-23626 RustDesk HTTP Client Silently Accepts Invalid TLS Certificates After Handshake Failure CVSS 4.0HIGH 8.7
- TI-2026-23624 RustDesk Client Blindly Merges Unauthenticated Strategy Payloads, Bypassing Local Security Settings CVSS 4.0HIGH 8.3
- TI-2026-23621 RustDesk Encrypts Local Passwords with World-Readable Machine ID and Fixed Zero Nonce (XSalsa20-Poly1305) CVSS 4.0HIGH 8.2
- TI-2026-23629 RustDesk Client Accepts Unauthenticated stop-service Command via Strategy Payload CVSS 4.0HIGH 8.2
- TI-2026-23628 RustDesk rustdesk://config/ URI Silently Re-homes Client to Attacker-Controlled Server CVSS 4.0CRITICAL 9.3
Sources
- CVE-2026-30789 · CVE Program
- CVE-2026-30789 · NVD
- FIRST EPSS
- GHSA-9qf7-q6gx-q652 · GitHub Advisory Database · CC BY 4.0
This product uses the NVD API but is not endorsed or certified by the NVD. Sources and licences