← Back to CVE Explorer

CVE-2026-42090

Full vulnerability record from the local CVENow database.

Description

Notesnook is a note-taking app focused on user privacy & ease of use. Prior to Notesnook Web/Desktop version 3.3.15 and prior to Notesnook iOS/Android version 3.3.20, a stored XSS vulnerability in the note export flow can be escalated to remote code execution in the desktop app. The root cause is that exported note fields such as title, headline, and content are inserted into the generated HTML template without HTML escaping. When the note is later exported to PDF, Notesnook renders that HTML into a same-origin, unsandboxed iframe using iframe.srcdoc = .... Injected script executes in the Notesnook origin. In the desktop app, this becomes RCE because Electron is configured with nodeIntegration: true and contextIsolation: false. This issue has been patched in Notesnook Web/Desktop version 3.3.15 and Notesnook iOS/Android version 3.3.20.

Severity
CRITICAL
CVSS score
9.6 (v3.1)
Vulnerability status
Analyzed
Source identifier
Published
2026-05-04 17:16:25.190000
Last modified
2026-10-26 19:10:00.163000
View original CVE JSON
{
  "id": "CVE-2026-42090",
  "sourceIdentifier": "[email protected]",
  "published": "2026-05-04T17:16:25.190",
  "lastModified": "2026-10-26T19:10:00.163",
  "vulnStatus": "Analyzed",
  "cveTags": [],
  "descriptions": [
    {
      "lang": "en",
      "value": "Notesnook is a note-taking app focused on user privacy & ease of use. Prior to Notesnook Web/Desktop version 3.3.15 and prior to Notesnook iOS/Android version 3.3.20, a stored XSS vulnerability in the note export flow can be escalated to remote code execution in the desktop app. The root cause is that exported note fields such as title, headline, and content are inserted into the generated HTML template without HTML escaping. When the note is later exported to PDF, Notesnook renders that HTML into a same-origin, unsandboxed iframe using iframe.srcdoc = .... Injected script executes in the Notesnook origin. In the desktop app, this becomes RCE because Electron is configured with nodeIntegration: true and contextIsolation: false. This issue has been patched in Notesnook Web/Desktop version 3.3.15 and Notesnook iOS/Android version 3.3.20."
    },
    {
      "lang": "es",
      "value": "Notesnook es una aplicación para tomar notas centrada en la privacidad del usuario y la facilidad de uso. Antes de la versión 3.3.15 de Notesnook Web/Escritorio y antes de la versión 3.3.20 de Notesnook iOS/Android, una vulnerabilidad XSS almacenada en el flujo de exportación de notas puede escalarse a ejecución remota de código en la aplicación de escritorio. La causa raíz es que los campos de nota exportados como título, encabezado y contenido se insertan en la plantilla HTML generada sin escape HTML. Cuando la nota se exporta posteriormente a PDF, Notesnook renderiza ese HTML en un iframe de mismo origen y sin sandbox usando iframe.srcdoc = .... El script inyectado se ejecuta en el origen de Notesnook. En la aplicación de escritorio, esto se convierte en RCE porque Electron está configurado con nodeIntegration: true y contextIsolation: false. Este problema ha sido parcheado en la versión 3.3.15 de Notesnook Web/Escritorio y la versión 3.3.20 de Notesnook iOS/Android."
    }
  ],
  "affected": [
    {
      "source": "[email protected]",
      "affectedData": [
        {
          "vendor": "streetwriters",
          "product": "notesnook",
          "versions": [
            {
              "version": "Notesnook Web/Desktop < 3.3.15",
              "status": "affected"
            },
            {
              "version": "Notesnook iOS/Android < 3.3.20",
              "status": "affected"
            }
          ]
        }
      ]
    }
  ],
  "metrics": {
    "cvssMetricV31": [
      {
        "source": "[email protected]",
        "type": "Secondary",
        "cvssData": {
          "version": "3.1",
          "vectorString": "CVSS:3.1/AV:N/AC:L/PR:N/UI:R/S:C/C:H/I:H/A:H",
          "baseScore": 9.6,
          "baseSeverity": "CRITICAL",
          "attackVector": "NETWORK",
          "attackComplexity": "LOW",
          "privilegesRequired": "NONE",
          "userInteraction": "REQUIRED",
          "scope": "CHANGED",
          "confidentialityImpact": "HIGH",
          "integrityImpact": "HIGH",
          "availabilityImpact": "HIGH"
        },
        "exploitabilityScore": 2.8,
        "impactScore": 6.0
      }
    ],
    "ssvcV203": [
      {
        "source": "134c704f-9b21-4f2e-91b3-4a467353bcc0",
        "ssvcData": {
          "timestamp": "2026-05-04T00:00:00+00:00",
          "id": "CVE-2026-42090",
          "options": [
            {
              "exploitation": "none"
            },
            {
              "automatable": "no"
            },
            {
              "technicalImpact": "total"
            }
          ],
          "role": "CISA Coordinator",
          "version": "2.0.3"
        }
      }
    ]
  },
  "weaknesses": [
    {
      "source": "[email protected]",
      "type": "Secondary",
      "description": [
        {
          "lang": "en",
          "value": "CWE-79"
        },
        {
          "lang": "en",
          "value": "CWE-94"
        }
      ]
    }
  ],
  "configurations": [
    {
      "nodes": [
        {
          "operator": "OR",
          "negate": false,
          "cpeMatch": [
            {
              "vulnerable": true,
              "criteria": "cpe:2.3:a:streetwriters:notesnook_desktop:*:*:*:*:*:*:*:*",
              "versionEndExcluding": "3.3.15",
              "matchCriteriaId": "7C5C15D2-45F8-45E2-A151-FBE63A77938C"
            },
            {
              "vulnerable": true,
              "criteria": "cpe:2.3:a:streetwriters:notesnook_mobile:*:*:*:*:*:android:*:*",
              "versionEndExcluding": "3.3.20",
              "matchCriteriaId": "6FD5E917-697E-4E72-BA79-D31086A031DF"
            },
            {
              "vulnerable": true,
              "criteria": "cpe:2.3:a:streetwriters:notesnook_mobile:*:*:*:*:*:iphone_os:*:*",
              "versionEndExcluding": "3.3.20",
              "matchCriteriaId": "BBC02396-D3D4-45C3-B684-A5C4D30E755A"
            }
          ]
        }
      ]
    }
  ],
  "references": [
    {
      "url": "https://github.com/streetwriters/notesnook/releases/tag/3.3.20-android",
      "source": "[email protected]",
      "tags": [
        "Release Notes"
      ]
    },
    {
      "url": "https://github.com/streetwriters/notesnook/releases/tag/v3.3.15",
      "source": "[email protected]",
      "tags": [
        "Release Notes"
      ]
    },
    {
      "url": "https://github.com/streetwriters/notesnook/security/advisories/GHSA-fjm8-jg78-89h4",
      "source": "[email protected]",
      "tags": [
        "Vendor Advisory"
      ]
    }
  ]
}