RustDesk Auth Proof Uses Server-Controlled Salt/Challenge and Fast Double-SHA256, Enabling Offline Brute-Force
Default status is the baseline for the product, each version can override it (e.g. patched versions marked unaffected).
| Vendor | Product | Default status | Versions | ||||||
|---|---|---|---|---|---|---|---|---|---|
| rustdesk-client | RustDesk Client | affected |
|
Configuration 1 [-]
| AND |
|
No data.
| Vendor | Product | Versions | ||||||||
|---|---|---|---|---|---|---|---|---|---|---|
| Rustdesk-client | Rustdesk Client |
|
Vendor Solution
Add a client-side nonce to the auth proof and use a slow KDF (e.g., Argon2id). Transition to SRP.
Vendor Workaround
Use long (16+ char) random passwords. Enable 2FA where available.
No CVSS v3.0
No CVSS v2
This CVE is not in the KEV list.
Exploit prediction score: < 1% (0.315% probability within 30 days)
| Type | Values Removed | Values Added |
|---|---|---|
| Weaknesses | CWE-307 | |
| Metrics |
cvssV4_0
|
cvssV4_0
|
| Type | Values Removed | Values Added |
|---|---|---|
| Description | Authentication Bypass by Capture-replay, Use of Password Hash With Insufficient Computational Effort vulnerability in rustdesk-client RustDesk Client rustdesk-client on Windows, MacOS, Linux, iOS, Android (Client login, peer authentication modules) allows Reusing Session IDs (aka Session Replay). This vulnerability is associated with program files src/client.Rs and program routines hash_password(), login proof construction. This issue affects RustDesk Client: through 1.4.5. | 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. |
| Title | RustDesk Client Generates Auth Proof Without Client-Side Nonce, Enabling Replay Attacks | RustDesk Auth Proof Uses Server-Controlled Salt/Challenge and Fast Double-SHA256, Enabling Offline Brute-Force |
| Weaknesses | CWE-307 | |
| Metrics |
cvssV4_0
|
cvssV4_0
|
| Type | Values Removed | Values Added |
|---|---|---|
| Description | Authentication Bypass by Capture-replay, Use of Password Hash With Insufficient Computational Effort vulnerability in rustdesk-client RustDesk Client rustdesk-client on Windows, MacOS, Linux, iOS, Android (Client login, peer authentication modules) allows Reusing Session IDs (aka Session Replay). This vulnerability is associated with program files src/client.Rs and program routines hash_password(), login proof construction. This issue affects RustDesk Client: through 1.4.5. | Authentication Bypass by Capture-replay, Use of Password Hash With Insufficient Computational Effort vulnerability in rustdesk-client RustDesk Client rustdesk-client on Windows, MacOS, Linux, iOS, Android (Client login, peer authentication modules) allows Reusing Session IDs (aka Session Replay). This vulnerability is associated with program files src/client.Rs and program routines hash_password(), login proof construction. This issue affects RustDesk Client: through 1.4.5. |
| Type | Values Removed | Values Added |
|---|---|---|
| First Time appeared |
Apple
Apple iphone Os Apple macos Google android Linux Linux linux Kernel Microsoft Microsoft windows Rustdesk Rustdesk rustdesk |
|
| CPEs | cpe:2.3:a:rustdesk:rustdesk:*:*:*:*:webclient:*:*:* cpe:2.3:o:apple:iphone_os:-:*:*:*:*:*:*:* cpe:2.3:o:apple:macos:-:*:*:*:*:*:*:* cpe:2.3:o:google:android:-:*:*:*:*:*:*:* cpe:2.3:o:linux:linux_kernel:-:*:*:*:*:*:*:* cpe:2.3:o:microsoft:windows:-:*:*:*:*:*:*:* |
|
| Vendors & Products |
Apple
Apple iphone Os Apple macos Google android Linux Linux linux Kernel Microsoft Microsoft windows Rustdesk Rustdesk rustdesk |
|
| Metrics |
cvssV3_1
|
| Type | Values Removed | Values Added |
|---|---|---|
| Metrics |
ssvc
|
ssvc
|
| Type | Values Removed | Values Added |
|---|---|---|
| References |
|
| Type | Values Removed | Values Added |
|---|---|---|
| Metrics |
ssvc
|
| Type | Values Removed | Values Added |
|---|---|---|
| Description | Authentication Bypass by Capture-replay, Use of Password Hash With Insufficient Computational Effort vulnerability in rustdesk-client RustDesk Client rustdesk-client on Windows, MacOS, Linux, iOS, Android (Client login, peer authentication modules) allows Reusing Session IDs (aka Session Replay). This vulnerability is associated with program files src/client.Rs and program routines hash_password(), login proof construction. This issue affects RustDesk Client: through 1.4.5. | |
| Title | RustDesk Client Generates Auth Proof Without Client-Side Nonce, Enabling Replay Attacks | |
| First Time appeared |
Rustdesk-client
Rustdesk-client rustdesk Client |
|
| Weaknesses | CWE-294 CWE-916 |
|
| CPEs | cpe:2.3:a:rustdesk-client:rustdesk_client:*:*:android:*:*:*:*:* cpe:2.3:a:rustdesk-client:rustdesk_client:*:*:ios:*:*:*:*:* cpe:2.3:a:rustdesk-client:rustdesk_client:*:*:linux:*:*:*:*:* cpe:2.3:a:rustdesk-client:rustdesk_client:*:*:macos:*:*:*:*:* cpe:2.3:a:rustdesk-client:rustdesk_client:*:*:windows:*:*:*:*:* |
|
| Vendors & Products |
Rustdesk-client
Rustdesk-client rustdesk Client |
|
| References |
| |
| Metrics |
cvssV4_0
|