Skip to content
Heist/ feed
Back to feed
Medium

Security advisory

Type: advisorySources: OSVCVE: CVE-2021-3988

A Cross-site Scripting (XSS) vulnerability exists in janeczku/calibre-web, specifically in the file `edit_books.js`. The vulnerability occurs when editing book properties, such as uploading a cover or a format. The affected code directly inserts user input into the DOM without proper sanitization, allowing attackers to execute arbitrary JavaScript code. This can lead to various attacks, including stealing cookies. The issue is present in the code handling the `#btn-upload-cover` change event.

Products
Not specified
Affected versions
Not specified
Fixed versions
Not specified
CVEs
CVE-2021-3988
Confirmed fixed CVEs
Not specified
Updated in this feed
31 Oct 2026, 11:19 UTC · Revision 1

Source evidence

CVE-2021-3988

core-osv · Original source

Published 15 Nov 2024, 11:15 UTC

A Cross-site Scripting (XSS) vulnerability exists in janeczku/calibre-web, specifically in the file `edit_books.js`. The vulnerability occurs when editing book properties, such as uploading a cover or a format. The affected code directly inserts user input into the DOM without proper sanitization, allowing attackers to execute arbitrary JavaScript code. This can lead to various attacks, including stealing cookies. The issue is present in the code handling the `#btn-upload-cover` change event.

osv:CVE-2021-3988
Complete source record
{
  "id": "232f2f88130038651d1efe382b0c0cf0f4a09847fafe0889fdc8fe7b909c0135",
  "url": "https://osv.dev/vulnerability/CVE-2021-3988",
  "method": "structured",
  "payload": {
    "kind": "advisory",
    "title": "CVE-2021-3988",
    "summary": "A Cross-site Scripting (XSS) vulnerability exists in janeczku/calibre-web, specifically in the file `edit_books.js`. The vulnerability occurs when editing book properties, such as uploading a cover or a format. The affected code directly inserts user input into the DOM without proper sanitization, allowing attackers to execute arbitrary JavaScript code. This can lead to various attacks, including stealing cookies. The issue is present in the code handling the `#btn-upload-cover` change event.",
    "evidence": "osv:CVE-2021-3988",
    "products": [],
    "severity": "medium",
    "structured": {
      "id": "CVE-2021-3988",
      "aliases": [
        "CVE-2021-3988",
        "GHSA-r735-9gc6-2hvq",
        "PYSEC-2026-1236"
      ],
      "metrics": [
        {
          "type": "CVSS_V3",
          "score": "CVSS:3.1/AV:N/AC:L/PR:N/UI:R/S:C/C:L/I:L/A:N"
        }
      ],
      "affected": [
        {
          "ranges": [
            {
              "repo": "https://github.com/janeczku/calibre-web",
              "type": "GIT",
              "events": [
                {
                  "introduced": "0"
                },
                {
                  "fixed": "b564a97cdfc22c0e31e0ae18c6ed2b4320b40e50"
                },
                {
                  "fixed": "7ad419dc8c12180e842a82118f4866ac3d074bc5"
                }
              ],
              "database_specific": {
                "extracted_events": [
                  {
                    "cpe": "cpe:2.3:a:janeczku:calibre-web:*:*:*:*:*:*:*:*",
                    "range": [
                      {
                        "introduced": "0"
                      },
                      {
                        "fixed": "0.6.15"
                      }
                    ],
                    "source": "CPE_RANGE"
                  },
                  {
                    "range": [
                      {
                        "fixed": "7ad419dc8c12180e842a82118f4866ac3d074bc5"
                      }
                    ],
                    "source": "REFERENCES_COMMIT"
                  }
                ]
              }
            }
          ],
          "versions": [
            "0.6.14",
            "0.6.13",
            "0.6.12",
            "0.6.11",
            "0.6.10",
            "0.6.9",
            "0.6.8",
            "0.6.7",
            "0.6.6",
            "0.6.5",
            "0.6.3",
            "0.6.2",
            "0.6.0"
          ],
          "database_specific": {
            "source": "https://storage.googleapis.com/cve-osv-conversion/osv-output/CVE-2021-3988.json"
          }
        }
      ],
      "modified": "2026-10-20T10:53:53.299373956Z",
      "provider": "osv",
      "references": [
        "https://github.com/janeczku/calibre-web/commit/7ad419dc8c12180e842a82118f4866ac3d074bc5",
        "https://huntr.com/bounties/fa4c8fd1-7846-4dad-9112-2c07461f0609"
      ],
      "provider_metadata": {}
    },
    "related_cves": [
      {
        "value": "CVE-2021-3988",
        "evidence": "/id"
      }
    ],
    "security_relevant": true,
    "severity_evidence": "/severity/0/score"
  },
  "source_id": "core-osv",
  "document_id": 384728,
  "published_at": "2024-11-15T11:15:06.877+00:00"
}