Attack ChainAIDerived
Hypothetical attack flow derived from CVE metadata – not a confirmed exploit chain
-
AccessEstablish Tox friendship with victim
-
DeliverySend file with ../ or absolute path
-
ExploitAuto-accept writes file outside download dir
-
ExecutionOverwrite shell rc or plant .ftinfo record
-
Persistft_find_resumeable abuses FILE pointer to /proc/self/mem
-
ImpactExecute arbitrary code on victim host
Vulnerability Assessment
| Weakness |
CWE
OWASP Top 10:2025
A01:2025 - Broken Access Control
ASVS 5.0
V5 - File Handling Path canonicalization, traversal prevention
MITRE ATT&CK
2 techniques across 2 tactics: Discovery, Collection The technique list with ATT&CK links and the kill-chain view is part of the Basic plan and up. |
| Exploitation Conditions | Exploitation requires (1) the attacker to be an already-accepted Tox friend/contact of the victim, and (2) the victim to have the auto-accept file-transfer feature enabled, which is a non-default setting - this is precisely the AT:P attack requirement. Given those, the attacker sends a file whose name is an absolute path or contains ../ traversal sequences (the unpatched code in utox.c called native_autoselect_dir_ft without validating the filename). Code execution further depends on the victim's environment: either overwriting a shell startup file that is later sourced, or planting a .ftinfo resume record that ft_find_resumeable() parses, abusing FILE pointers to write /proc/self/mem. Limiting factors: no exploitation against untrusted strangers or default configurations, and the write-to-execute step depends on platform specifics (Linux /proc/self/mem) and victim behavior. |
| Impact | The provided CVSS 4.0 vector (AV:N/AC:L/AT:P/PR:L/UI:N/VC:H/VI:H/VA:H) scores 7.7 (High) and is internally consistent with the description: exploitation is network-reachable but gated by two preconditions - the attacker must be an accepted Tox friend (PR:L) and the victim must have the non-default auto-accept feature enabled, which the AT:P (attack-requirement present) metric correctly reflects. These gating factors are the key reason this is not a drive-by, mass-exploitable flaw despite the network vector and the severe VC/VI/VA:H triple impact (arbitrary file write escalating to code execution via the /proc/self/mem technique). No EPSS score was supplied, and the CVE is NOT in CISA KEV, so there is no evidence of active exploitation; likewise no public POC is referenced, only source-level root-cause pointers and vendor patch PRs. Signals are consistent rather than conflicting - the main caveat is that real-world risk is heavily gated by the auto-accept + trusted-friend requirement, placing this below internet-facing unauthenticated RCEs in priority. Treat as a meaningful priority only for deployments that run uTox with auto-accept enabled; patch availability makes remediation straightforward. |
| Exploit ScenarioDerived | An attacker who is already an accepted Tox contact of a victim running uTox with auto-accept enabled sends a file transfer whose filename contains an absolute path or ../ sequences, causing the file to be written outside the intended download directory. They overwrite a shell startup file, or plant a crafted .ftinfo resume record that ft_find_resumeable() later loads, abusing FILE pointers to write /proc/self/mem and achieve code execution. No public exploit code was identified at time of analysis, though the vendor advisory and source references detail the mechanism. |
Get an e-mail when this CVE is exploited, patched or re-scored. Free account.
Alert meAnalysisAIv1 – Oct 20, 2026
Path traversal in uTox through 0.18.1 lets an already-accepted Tox friend write files to arbitrary locations on a victim's machine when the non-default auto-accept file-transfer option is enabled, by sending a filename that is an absolute path or contains ../ sequences. The unsafe name is passed straight to native_autoselect_dir_ft() in src/utox.c without validation, so an attacker can overwrite shell startup files or plant crafted .ftinfo resume records that ft_find_resumeable() later parses, ultimately abusing FILE pointers to write /proc/self/mem and achieve code execution. Exploitation is gated by two preconditions - the sender must be a trusted contact and auto-accept must be turned on - matching the AT:P attack requirement in the 7.7 High CVSS 4.0 vector; no public exploit code and no confirmed active exploitation were identified at time of analysis, and vendor fixes are available via pull requests 1602 and 1603.
RemediationAI
Vendor-released patch: apply the fixes in https://github.com/uTox/uTox/pull/1602 and https://github.com/uTox/uTox/pull/1603 (tracked in issue https://github.com/uTox/uTox/issues/1587); PR 1602 adds validation in src/utox.c that scans the incoming filename and, on encountering '/', '\\' or a NUL-terminator mismatch, logs 'invalid filename', clears the auto-accept flag and posts TOX_FILE_CANCEL instead of calling native_autoselect_dir_ft(). Because no patched release tag is confirmed, rebuild from upstream master or cherry-pick those commits and confirm both the utox.c guard and the file_transfers.c/filesys.c path handling are present. Until then, the single most effective control is to disable auto-accept for file transfers entirely - this removes the vulnerable code path at the cost of requiring manual per-transfer confirmation. Additionally, only keep genuinely trusted contacts on the friend list, since the attack requires an accepted friend (removing unknown or unverified contacts also breaks normal messaging with them); refuse or cancel incoming transfers whose names look like absolute paths or contain '..'; and monitor or make shell startup files (.bashrc, .profile, .zshrc, XDG autostart entries) and Tox .ftinfo resume records read-only or integrity-checked, accepting that this may interfere with legitimate profile edits and transfer resumption. Running uTox as a low-privilege, non-essential account limits the blast radius of a successful arbitrary write, but does not prevent compromise of that user's files - it is a containment measure, not a fix. See https://www.vulncheck.com/advisories/utox-through-0.18.1-path-traversal-via-auto-accepted-file-transfers for the reporter's advisory.
Affected VersionsENISA
Affected Packages
Source: OSV (Open Source Vulnerabilities)
Affects your stack
Affects 1 package in euvd
Checking this CVE against your own stacks and servers is part of the Basic plan and up.
Technical ContextAI · show details
uTox is a lightweight C implementation of the Tox encrypted peer-to-peer chat and file-transfer protocol. File transfers are handled in src/file_transfers.c and src/xlib/filesys.c (the referenced sink is native_autoselect_dir_ft at filesys.c#L191-L214, reached from the transfer dispatch code at file_transfers.c#L249-L290). The root cause is CWE-22: the peer-supplied file name is used to build the destination path without canonicalization or rejection of path separators, '..' components, or absolute prefixes, so a name like '../../.bashrc' or '/home/user/.config/autostart/x.desktop' escapes the intended download directory. The impact chain is two-stage: the primary primitive is arbitrary file write as the uTox user; the secondary stage is code execution, achieved either by overwriting a shell startup file that will be sourced later, or by planting a malicious .ftinfo resume record that ft_find_resumeable() deserializes - a crafted record can desynchronize FILE pointer fields so subsequent writes land in /proc/self/mem, corrupting process memory and hijacking execution. Because that escalation relies on Linux-specific /proc/self/mem semantics and on victim behavior (re-sourcing a shell profile, resuming a transfer), the practical exploitability varies by platform and configuration, which is consistent with the assessed CVSS:3.1/AV:N/AC:H/PR:L/UI:N/S:U/C:H/I:H/A:H vector rather than a straightforward unauthenticated remote compromise.
Know when Utox gets its next vulnerability
- Watch products and get an email when something new is published
- Check this CVE against your own stack and servers
- Exploit and PoC references, threat intelligence from 22 sources
No credit card · 7-day full trial
Severity by source
CVSS:4.0/AV:N/AC:L/AT:P/PR:L/UI:N/VC:H/VI:H/VA:H/SC:N/SI:N/SA:N
Attacker must be an accepted friend (PR:L) and victim must enable non-default auto-accept, modeled as AC:H in 3.1; arbitrary file write leading to code execution yields C/I/A:H.
Primary rating from Vendor (VulnCheck).
CVSS VectorVendor: VulnCheck
DescriptionCVE.org
uTox through 0.18.1 contains a path traversal vulnerability that allows Tox friends to write arbitrary files by sending absolute or ../ file names to victims with auto-accept enabled. Attackers can overwrite shell startup files or plant crafted .ftinfo resume records that ft_find_resumeable() loads, abusing FILE pointers to write /proc/self/mem and execute code.
Executive ViewAI
uTox versions through 0.18.1 contain a high-severity file-transfer flaw that can allow an accepted contact to write files outside the intended download location when the non-default auto-accept option is enabled, creating a path to code execution on affected endpoints. Leadership should care because compromise is gated by a trusted-contact relationship and a non-default setting, so exposure is concentrated among users who rely on auto-accept and may not be visible through ordinary perimeter controls. No public exploit identified at time of analysis, but the potential for code execution warrants prompt inventory and remediation of affected uTox installations.
Apply vendor patch.
Threat Intelligence Overview
How this decision was reached
The engine reads each signal below and applies a fixed list of rules from top to bottom. The first rule that matches sets the recommended action – like a statement, every line is shown.
What every action level means
SSVC AssessmentENISA
Priority Score
Attack Technique
Path traversal exploits occur when applications use user-controlled input to construct file system paths without proper validation.
EUVD-2026-104923
GHSA-pqrg-92p8-w72h
NVD
CVE.org
EPSS
Vulnrichment
Exploit-DB