Skip to content
Noroxi
CVE-2026-73053· NVD / CVE Program· CNA VulnCheck

SiYuan before v3.7.4 Cross-Site Scripting via unicode2Emoji

SiYuan versions before v3.7.4 contain a cross-site scripting vulnerability in the unicode2Emoji function that fails to sanitize codepoint branch output. Attackers can craft document icons with hex-encoded markup that executes in the renderer with Node integration enabled, achieving arbitrary code execution on the host system.

CriticalCVSS 9.4 · v4.0—No exploit Fix available
Published
Aug 15, 2026
Updated
Aug 26, 2026
EPSS
0.5% · 42th percentile
Follow this CVE

Sign in to follow · You’ll be notified if a followed record enters KEV, gets an exploit or is updated.

Report tools

JSON

Action score

37

Monitor

Low priority for now.

CVSS
37 / 40 · 9.4 / 10
CISA KEV
0 / 30 · Not listed
EPSS
0 / 30 · 0.5%

CISA SSVC decision

Exploitation
proof of concept
Automatable
no
Technical impact
total

Vulnrichment: CISA's decision-tree inputs.

CNA vs NVD score

NVD
—
CNA · VulnCheck
9.4
NVD has not scored this yet; the score shown is the CNA’s.

CVSS:4.0/AV:N/AC:L/AT:N/PR:L/UI:P/VC:H/VI:H/VA:H/SC:H/SI:H/SA:H

The score given by the assigning authority versus NVD’s independent score. A gap means the severity is contested.

Noroxi analysis

No Noroxi analysis for this record yet

We don't hand-write analysis for the hundreds of thousands of vulnerabilities in the database; that wouldn't be honest. For notable, high-impact vulnerabilities our team writes the mechanism, detection and remediation steps.

We use this product, ask for help

Affected systems

—

Versions reported by the vendor

Affected version ranges reported by the assigning authority (VulnCheck). Independent of NVD's CPE analysis and usually ahead of it.

  • siyuan-note siyuan

    • 3.7.4not affected
    • before 3.7.4affected · semver

Other highest-scoring records for the same primary product.

  • CVE-2026-66012SiYuan before v3.7.2 Unauthenticated Administrator Takeover via MCP
    40Plan
  • CVE-2026-72811SiYuan before v3.7.4 SQL Injection via backlink search
    39Monitor
  • CVE-2026-69085SiYuan before v3.7.3 SQL Injection via searchDocs
    39Monitor
  • CVE-2026-69084SiYuan before v3.7.3 SQL Injection via searchEmbedBlock
    39Monitor
  • CVE-2026-69083SiYuan before v3.7.3 SQL Injection via fullTextSearchAssetContent
    39Monitor
  • CVE-2026-54158SiYuan: Stored XSS to RCE via attribute-view cell rendering in genAVValueHTML()
    39Monitor

Remediation

Which version to upgrade to

Fix versions compiled from the vendor, package registries and Microsoft. Verify the vendor's note before upgrading.

Product / packageFixed versionSource
siyuan-note siyuan3.7.4Vendor (CNA)

Exploit status

No known public exploit

No public exploit has been observed yet. That doesn't mean you're safe, only that the bar is a little higher.

Research context

For pentesters and researchers: attack profile, score disagreement, timeline, patch commits, credits, variant and chain candidates, bug bounty scope. All derived from existing data; no exploit code.

Timeline

From publication to today: proof of concept, Metasploit module, CISA KEV and fix record. Dates are as reported by the sources.

No dated events beyond publication.

EPSS, last 120 days

FIRST EPSS daily score; only changes of 0.01 or more are recorded (step chart).

Patch and commit links

Commit, PR and diff links among the references. A starting point for patch-diffing and variant hunting; fixes, not exploits.

No commit or PR link among the references.

Finders, reporters and analysts named in the CNA record. Click a name for that researcher’s other records.

Variant candidates

Same product, same weakness class, within 18 months. If the patch missed the root cause, the sibling bug is here.

  • CVE-2026-5055152 days apartSiYuan: Stored XSS to RCE via Unsanitized Attribute View Asset Cell Content
    39Monitor
  • CVE-2026-5406752 days apartSiYuan: Stored XSS to RCE via CSS-snippet <style> breakout in renderSnippet()
    39Monitor
  • CVE-2026-5415852 days apartSiYuan: Stored XSS to RCE via attribute-view cell rendering in genAVValueHTML()
    39Monitor
  • CVE-2026-730410 days apartSiYuan before v3.7.4 Remote Code Execution via PDF Annotations
    37Monitor
  • CVE-2026-730420 days apartSiYuan before v3.7.4 Remote Code Execution via Menu Metadata
    37Monitor
  • CVE-2026-730430 days apartSiYuan before v3.7.4 Remote Code Execution via Template Calculation
    37Monitor

Chain candidates

An authentication bypass and a privilege-requiring bug in the same product, published close together: combined they may become an unauthenticated path.

  • CVE-2026-730460 days apartSiYuan before v3.7.4 Authentication Bypass via HTTP Basic Auth
    37Monitor
  • CVE-2026-727893 days apartSiYuan before v3.7.4 Authentication Bypass via Encrypted Notebooks
    36Monitor
  • CVE-2026-728043 days apartSiYuan before v3.7.4 Authentication Bypass via Graph Endpoints
    36Monitor
  • CVE-2026-728093 days apartSiYuan before v3.7.4 Authentication Bypass via Localhost Trust
    28Monitor

Bug bounty scope

No known public program.

Source: bounty-targets-data (public HackerOne, Bugcrowd, Intigriti, YesWeHack listings).

Technical details

Attack conditions

  • Anyone who can reach it over the internet can trigger it.
  • A low-privileged account is enough.
  • No special conditions are required; it is repeatable.

If successful

Confidentiality
Integrity
Availability
Attack vector
Network
Attack complexity
Low
Privileges required
Low
User interaction
P
Scope
X

CVSS vector

CVSS:4.0/AV:N/AC:L/AT:N/PR:L/UI:P/VC:H/VI:H/VA:H/SC:H/SI:H/SA:H/E:X/CR:X/IR:X/AR:X/MAV:X/MAC:X/MAT:X/MPR:X/MUI:X/MVC:X/MVI:X/MVA:X/MSC:X/MSI:X/MSA:X/S:X/AU:X/R:X/V:X/RE:X/U:X

nvd-secondary

Root cause

User content is inserted into the page as HTML. The browser interprets the content as code rather than data.

A representative example of this vulnerability class. Not the vendor's source code; it shows the faulty pattern and its fix.

Vulnerable

ts
commentEl.innerHTML = comment.body;

Fixed

ts
commentEl.textContent = comment.body;

Change log

  1. Fix✗ → ✓

For records you follow, these changes also arrive as notifications. →

References

All records