Attack ChainAIDerived
Hypothetical attack flow derived from CVE metadata – not a confirmed exploit chain
-
AccessLure authenticated user to malicious page
-
DeliveryBrowser auto-requests /delete/{id} via GET
-
ExploitSession cookie sent automatically
-
ExecutionServer deletes targeted job
-
ImpactPermanent loss of conversion history
Vulnerability Assessment
| Weakness |
CWE
OWASP Top 10:2025
A01:2025 - Broken Access Control
ASVS 5.0
V3 - Web Frontend Security Anti-CSRF tokens, SameSite cookies
MITRE ATT&CK
1 technique across 1 tactic: Initial Access The technique list with ATT&CK links and the kill-chain view is part of the Basic plan and up. |
| Exploitation Conditions | Exploitable only against ConvertX versions prior to 0.18.0, where /delete/{id} accepts state-changing HTTP GET with no CSRF token. Preconditions: (1) the victim must have an active authenticated ConvertX session in the same browser; (2) the victim must load attacker-controlled content (UI:R) - though because it is a GET, this can be a passively auto-loaded resource such as an <img>/<iframe> src, requiring no click; (3) the attacker must reference a valid job id (ids are enumerable/guessable integers, so this is a weak limit). Limiting factors: requires an authenticated victim session and user navigation to attacker content; impact is confined to deleting the victim's own conversion jobs. Patched in 0.18.0 by switching to POST with form-based submission. |
| Impact | Signals conflict on severity. The input CVSS 3.1 vector (AV:N/AC:L/PR:N/UI:R/S:U/C:N/I:H/A:H) yields 8.1 (High), but the rated I:H/A:H appears inflated for the described behavior: this CWE-352 CSRF only lets an attacker trigger deletion of individual conversion jobs (one /delete/{id} per forged request), not total compromise of the ConvertX instance, so I independently assess integrity/availability impact as Low. There is NO KEV listing and NO public exploit identified in the provided data, and no EPSS score was supplied, so there is no evidence of active or probable exploitation - this is a defensively-patched CSRF, not a priority mass-exploitation threat. The genuine real-world risk is further bounded by UI:R (the authenticated victim must visit attacker-controlled content) and by the limited, reversible-only-by-re-conversion nature of the damage (loss of job history). Net: a legitimate, cleanly-confirmed CSRF bug worth patching, but closer to Medium real-world risk than the 8.1 headline suggests, especially given the product's small deployment footprint. |
| Exploit ScenarioDerived | An attacker crafts a web page (or email with a remote image/iframe) pointing at a victim ConvertX instance's /delete/{id} URL. When a logged-in ConvertX user visits that content, their browser auto-sends the session cookie with the GET request and the server silently deletes the targeted conversion job. No public proof-of-concept was identified in the provided data, but exploitation is trivial because the state-changing action is a plain GET with no CSRF token. |
Get an e-mail when this CVE is exploited, patched or re-scored. Free account.
Alert meAnalysisAIv1 – Oct 12, 2026
Cross-site request forgery in ConvertX versions prior to 0.18.0 lets an attacker permanently delete an authenticated user's conversion jobs by luring that user into loading attacker-controlled content that silently requests /delete/{id} over HTTP GET. Because the deletion route performs a state-changing action without a CSRF token and job identifiers are simple sequential integers, an <img> or <iframe> src pointing at a guessed id is enough to trigger deletion with the victim's session cookie attached, with no click required. Exploitation requires an active victim session and the victim viewing attacker-controlled content; impact is confined to the victim's own job history (the provider scores this 8.1 with I:H/A:H, while our assessment rates the impact as limited, I:L/A:L), no public exploit code has been identified, and CISA KEV does not list this issue. The flaw is fixed in version 0.18.0, which converts the endpoint to POST and switches the UI to form-based submission.
RemediationAI
Upgrade to ConvertX 0.18.0 or later - the vendor-released fix version is 0.18.0 (https://github.com/C4illin/ConvertX/releases/tag/v0.18.0), which changes the /delete/{id} route to POST and replaces the deletion anchors with POST forms; the underlying change is commit e1253267208e439f28c4ffcaff7a81d62cdffadb and the advisory is GHSA-63w7-h5q8-hcrj. If an immediate upgrade is not possible, the most direct compensating control is to reject GET requests to the deletion path at the reverse proxy (for example an nginx location matching ^/delete/ that returns 405 for $request_method = GET while allowing POST), accepting the side effect that the Delete buttons in the pre-0.18.0 UI will stop working until users upgrade or delete jobs by other means. A second option is to stop exposing the service to untrusted browsing contexts at all - place it behind a VPN, an SSO/identity-aware proxy, or a network allowlist - which removes the cross-site delivery path but requires infrastructure changes and does not protect users who browse external sites from an allowed network. Setting the session cookie to SameSite=Strict offers partial hardening but should not be relied on: SameSite=Lax still permits top-level GET navigations, and Strict can break login redirects and other cross-site flows, so it must be treated as defense-in-depth rather than a fix. Because job ids are enumerable integers, hiding or rate-limiting ids provides negligible protection, and deleting a job can be immediate and irreversible in the UI, so blocking GET-based deletion (or upgrading) is the only reliable mitigation.
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
ConvertX is a self-hosted, Bun/TypeScript file-conversion service; the affected routing layer is built on the Elysia web framework and the relevant handler lives in src/pages/deleteJob.tsx, which prior to the fix registered the state-changing deletion with .get(...) rather than .post(...). The root cause is CWE-352 (Cross-Site Request Forgery): because deletion is exposed as an idempotent-looking GET, any cross-site resource load (image, iframe, top-level navigation, or prefetch) causes the browser to attach the victim's ConvertX session cookie automatically, and the server cannot distinguish that request from a legitimate one since no anti-CSRF token, origin check, or custom header is validated. The UI reinforced the pattern - src/pages/history.tsx and src/pages/results.tsx rendered <a href="${WEBROOT}/delete/${job.id}"> anchors, and public/script.js used an <a onclick="deleteRow(this)"> element - so a plain hyperlink was sufficient to destroy a job record. Job ids are enumerable integers, which removes the need for the attacker to leak a target identifier. The upstream commit e1253267208e439f28c4ffcaff7a81d62cdffadb addresses the class properly: the route is changed to POST, all deletion anchors are replaced with <form method="POST"><button type="submit"> controls, and the anchor in public/script.js becomes a <button type="button">, so cross-origin GET requests can no longer mutate state. The CPE cpe:2.3:a:c4illin:convertx:*:*:*:*:*:*:*:* identifies the affected package as the c4illin ConvertX project across all pre-0.18.0 builds. The provider vector (AV:N/AC:L/PR:N/UI:R/S:U/C:N/I:H/A:H) and our assessed vector (AV:N/AC:L/PR:N/UI:R/S:U/C:N/I:L/A:L) agree on the attack path and network reachability but diverge on impact magnitude; we treat the loss as bounded to the victim's own conversion history rather than a broader availability or integrity failure.
Know when Convertx 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
AV:N/AC:L/PR:N/UI:R/S:U/C:N/I:H/A:H
Classic CSRF so PR:N with UI:R and AC:L; no data disclosure (C:N); impact limited to deleting individual job records, so I:L/A:L rather than the input's H/H.
Primary rating from Vendor (GitHub_M).
CVSS VectorVendor: GitHub_M
Lifecycle Timeline
2DescriptionCVE.org
ConvertX is a self-hosted file conversion service. Prior to 0.18.0, the /delete/{id} endpoint uses HTTP GET for permanent deletion without CSRF protection. If an authenticated user visits attacker-controlled content that requests /delete/{id}, the browser sends the user session cookie and the request deletes the targeted job, resulting in unauthorized loss of converted-file history. This issue is fixed in version 0.18.0.
Technical POC Analysis
CWE-352 (Cross-Site Request Forgery).
Full technical POC analysis - root cause, step-by-step exploitation and patch breakdown - is part of the Pro and Business plans.
Executive ViewAI
ConvertX deployments running versions below 0.18.0 are exposed to CVE-2026-59977, a cross-site request forgery flaw that allows an attacker to permanently erase an active user's saved conversion job history with no click, prompt, or alert other than the missing records. Impact is confined to each victim's own job list, with no exposure of conversion files, credentials, or shared and administrative data, but the deletions are irreversible and the predictable sequential job identifiers allow repeated attempts against any user who loads attacker-controlled content while logged in. Leadership should treat this as a contained yet user-visible data-loss and trust issue rather than a system compromise, prioritizing the fixed release for any externally reachable or multi-tenant ConvertX instance.
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
Cross-Site Request Forgery exploits the automatic credential inclusion behavior of web browsers.
Authenticated arbitrary file write in ConvertX versions prior to 0.16.0 allows a low-privilege user to escape the intend
Arbitrary file deletion in ConvertX prior to version 0.17.0 allows authenticated attackers to remove files outside the i
Authenticated low-privileged users of ConvertX before 0.19.0 can execute arbitrary Python code on the server by submitti
Path traversal in ConvertX (all releases prior to 0.18.0) lets an authenticated user write converted output files to arb
Arbitrary file read in ConvertX 0.17.0 allows authenticated users to exfiltrate files accessible to the server process b
Authenticated file read in ConvertX through 0.19.0 allows any logged-in user to retrieve arbitrary files from the server
EUVD-2026-97762
NVD
CVE.org
EPSS
GitHub
Exploit-DB