CVE-2026-58056 - RustDesk file-transfer session control authorization bypass
CVE-2026-58056 + RustDesk file-transfer session control authorization bypass + High + 2026-06-28
One-sentence business risk
A peer approved only for file transfer can inject input and capture screens, converting remote support into unauthorized control.
Research notes
- Root cause: RustDesk gates incoming control messages on per-capability flags rather than on the session’s authorized connection type, and a file-transfer session does not clear those flags.
- Affected versions: RustDesk file-transfer sessions that leave control capability flags reachable.
- Fixed / safe versions: vendor-patched RustDesk build that binds message handlers to authorized session type.
- Public exploit / PoC signal: public PoC or exploit details are referenced by NVD; use only safe regression tests and do not execute exploit payloads against production.
- CVSS: 7.6 CVSS:3.1/AV:N/AC:L/PR:L/UI:N/S:U/C:L/I:H/A:L.
Exact vulnerable code pattern
if (user.canManageUsers()) {
target.setUsergroup(request.getInt("usergroup"));
}
Fixed / mitigated code pattern
if (user.canManageUsers()) {
int group = request.getInt("usergroup");
requireAllowedAssignableGroup(user, group);
rejectIfGroupGrantsMorePrivilegeThan(user, group);
target.setUsergroup(group);
}
Dependency or runtime update:
rg -n "RustDesk|vendor-patched RustDesk build that binds message handlers to authorized session type" .
# apply vendor patch and regression tests
Step-by-step integration guide
- Inventory
RustDeskin source, lockfiles, SBOMs, CI images, containers, deployment manifests, and managed runtimes. - Upgrade or patch to
vendor-patched RustDesk build that binds message handlers to authorized session type; if no upstream package is available, apply the local guard shown above and track the vendor release as a blocking follow-up. - Replace every vulnerable
authzpattern with a fail-closed implementation that validates ownership, bounds, canonical paths, origin/session binding, or parser limits before acting. - Add a regression test that reproduces the advisory shape safely and proves the request is rejected, bounded, or authorized.
- Deploy through canary, monitor auth, file, parser, crash, and CI-runner logs, then remove temporary edge blocks only after all runtimes are fixed.
Alternative mitigations
- Disable the vulnerable feature path, decoder, plugin, runner backend, proxy agent, or route while the patch rolls out.
- Add WAF/reverse-proxy rules for SQL metacharacters, traversal tokens, unsafe Docker flags, oversized/nested payloads, or unexpected session-origin transitions matching this trigger class.
- Restrict egress and access to untrusted artifacts, SSH servers, media uploads, workflow execution, and administrative delegation until fixed versions are verified.
- Rotate credentials and invalidate sessions if logs show the vulnerable path was reachable by untrusted users.
Detection signature
id: cve-2026-58056-rustdesk-file-transfer-session-control-authoriza
source: NVD
package_or_product: "RustDesk"
affected: "RustDesk file-transfer sessions that leave control capability flags reachable"
fixed: "vendor-patched RustDesk build that binds message handlers to authorized session type"
cvss: "7.6 CVSS:3.1/AV:N/AC:L/PR:L/UI:N/S:U/C:L/I:H/A:L"
signals:
- "authz"
- "CVE-2026-58056"
- "RustDesk"
action: "upgrade, add a regression test, and verify deploy artifact"
Copy-paste skill
You are remediating CVE-2026-58056 (RustDesk file-transfer session control authorization bypass) in this repository.
Produce a reviewer-ready PR or TRIAGE.md. Inventory RustDesk across source, lockfiles, images, CI, deployment manifests, and SBOMs. Apply vendor-patched RustDesk build that binds message handlers to authorized session type. Replace the vulnerable authz pattern with the fail-closed pattern, add a regression test for the advisory trigger, and document owner, rollout, rollback, and validation evidence. Do not run public exploit PoCs against production or expose secrets in logs.
Keywords, affected tech stack, and revenue tags
- Keywords:
CVE-2026-58056,authz,RustDesk,NVD. - Affected tech stack:
rust/remote-access. - Revenue tags:
sellable_to_fintech,enterprise_blocker,high_priority_sla.