---
id: "GHSA-989h-w3q9-3m2f"
kind: "vulnerability"
aliases: ["GHSA-989h-w3q9-3m2f"]
title: "Duplicate Advisory: SiYuan: Missing consistency check between packageName and repoURL/repoHash in bazaar package install allows overwriting an existing, trusted plugin"
severity: "medium"
cvss: 6.599999904632568
epss: null
exploited: false
status: "withdrawn"
category: "package"
products: [{"name": "github.com/siyuan-note/siyuan/kernel", "fixed": [], "affected": "< 3.7.4", "ecosystem": "go"}]
ecosystems: ["go"]
tags: ["cwe-345", "desktop", "package", "self-hosted", "siyuan"]
not_affected_if: ["version-3.7.4-or-later"]
published_at: "2026-08-22T15:31:02+00:00"
first_seen_at: "2026-10-23T19:11:31+00:00"
updated_at: "2026-10-23T21:46:03+00:00"
sources: [{"source": "ghsa", "url": "https://github.com/advisories/GHSA-989h-w3q9-3m2f", "first_seen_at": "2026-10-23T19:11:31+00:00"}]
---

# Duplicate Advisory: SiYuan: Missing consistency check between packageName and repoURL/repoHash in bazaar package install allows overwriting an existing, trusted plugin

SiYuan, a note-taking app, does not check that the package name matches the downloaded plugin content in its bazaar install endpoints. An attacker with same-origin access can overwrite an existing trusted plugin and keep that change across restarts.

_Summary, check and fix written by a model from the sources; labelled as such._

## Affected

- go:github.com/siyuan-note/siyuan/kernel affected < 3.7.4 fixed ?

## Fix

Upgrade SiYuan to v3.7.4 or later. This advisory is withdrawn as a duplicate of GHSA-rpx2-p6hp-x5gj, so check that advisory for the authoritative fix details.

## Timeline

- 2026-10-23T19:11:31+00:00 ghsa https://github.com/advisories/GHSA-989h-w3q9-3m2f

## From the sources

## Duplicate Advisory

This advisory has been withdrawn because it is a duplicate of GHSA-rpx2-p6hp-x5gj. This link is maintained to preserve external references.

## Original Description
SiYuan versions before v3.7.4 fail to validate that packageName matches the downloaded package content in bazaar install endpoints. Attackers with same-origin access can overwrite existing trusted plugins by supplying mismatched packageName and repoURL parameters, achieving persistence across application restarts.

---

_Free to read at a human pace. An API with keys and an MCP server are in preparation; early access: hello@infrastack.ai_
