<?xml version='1.0' encoding='UTF-8'?>
<?xml-stylesheet href="/static/style.xsl" type="text/xsl"?>
<rss xmlns:atom="http://www.w3.org/2005/Atom" xmlns:content="http://purl.org/rss/1.0/modules/content/" version="2.0">
  <channel>
    <title>Most recent entries from all</title>
    <link>https://vulnerability.circl.lu</link>
    <description>Contains only the most 10 recent entries.</description>
    <docs>http://www.rssboard.org/rss-specification</docs>
    <generator>python-feedgen</generator>
    <language>en</language>
    <lastBuildDate>Sat, 03 Oct 2026 06:26:24 +0000</lastBuildDate>
    <item>
      <title>fkie_cve-2026-74802</title>
      <link>https://vulnerability.circl.lu/vuln/fkie_cve-2026-74802</link>
      <description>&lt;p&gt;SiYuan versions before 3.7.4 contain a cross-site WebSocket hijacking vulnerability in the admin-only /ws/network/proxy endpoint that explicitly disables origin validation by setting CheckOrigin to unconditionally return true. Attackers can craft malicious webpages that establish WebSocket connections to this endpoint and direct the SiYuan kernel process to proxy arbitrary network traffic to attacker-chosen targets, enabling authenticated network pivoting through the victim&amp;#39;s machine.&lt;/p&gt;</description>
      <content:encoded>&lt;p&gt;SiYuan versions before 3.7.4 contain a cross-site WebSocket hijacking vulnerability in the admin-only /ws/network/proxy endpoint that explicitly disables origin validation by setting CheckOrigin to unconditionally return true. Attackers can craft malicious webpages that establish WebSocket connections to this endpoint and direct the SiYuan kernel process to proxy arbitrary network traffic to attacker-chosen targets, enabling authenticated network pivoting through the victim&amp;#39;s machine.&lt;/p&gt;</content:encoded>
      <guid isPermaLink="false">https://vulnerability.circl.lu/vuln/fkie_cve-2026-74802</guid>
    </item>
    <item>
      <title>GHSA-3cc2-h3v6-rqpq — SiYuan: Cross-Site WebSocket Hijacking on the admin-only network proxy endpoint (`/ws/network/proxy`) via explicit `Che…</title>
      <link>https://vulnerability.circl.lu/vuln/ghsa-3cc2-h3v6-rqpq</link>
      <description>&lt;p&gt;&lt;strong&gt;Affected:&lt;/strong&gt; Go: github.com/siyuan-note/siyuan/kernel&lt;/p&gt;
&lt;p&gt;**High**&lt;/p&gt;
&lt;p&gt;## Package
gomod `github.com/siyuan-note/siyuan/kernel`&lt;/p&gt;
&lt;p&gt;## Affected versions
3.7.3&lt;/p&gt;
&lt;p&gt;## Patched versions
*(none yet — leave blank until a fix is released)*&lt;/p&gt;
&lt;p&gt;## Description&lt;/p&gt;
&lt;p&gt;### Summary
`/ws/network/proxy` is an admin-only WebSocket forward-proxy endpoint (target URL and headers fully attacker-specifiable via query parameters). Its `websocket.Upgrader` explicitly overrides `CheckOrigin` to unconditionally return `true` — disabling the origin validation that the `gorilla/websocket` library otherwise enforces **by default**. WebSocket handshake requests are not subject to CORS preflight at all (unlike `fetch`/XHR), so origin validation for WebSocket endpoints has to be done deliberately by the server; here it has been deliberately turned *off* instead. Combined with the endpoint&amp;#39;s own query-parameter-driven proxy target, this is a textbook Cross-Site WebSocket Hijacking (CSWSH) primitive on a capability that amounts to an authenticated network pivot through the SiYuan kernel process.&lt;/p&gt;
&lt;p&gt;### Details&lt;/p&gt;
&lt;p&gt;```go
// kernel/api/network.go:501
upgrader := websocket.Upgrader{
    CheckOrigin: func(r *http.Request) bool { return true },
}
clientConn, upgradeErr := upgrader.Upgrade(c.Writer, c.Request, upgradeHeaders)
```&lt;/p&gt;
&lt;p&gt;Route registration (admin-role-gated):
```go
// kernel/api/router.go:614
ginServer.Handle(&amp;#34;GET&amp;#34;, &amp;#34;/ws/network/proxy&amp;#34;, model.CheckAuth, model.CheckAdminRole, wsProxy)
```&lt;/p&gt;
&lt;p&gt;The proxy target is fully attacker-controllable via query parameters, decoded and dialed dire…&lt;/p&gt;</description>
      <content:encoded>&lt;p&gt;&lt;strong&gt;Affected:&lt;/strong&gt; Go: github.com/siyuan-note/siyuan/kernel&lt;/p&gt;
&lt;p&gt;**High**&lt;/p&gt;
&lt;p&gt;## Package
gomod `github.com/siyuan-note/siyuan/kernel`&lt;/p&gt;
&lt;p&gt;## Affected versions
3.7.3&lt;/p&gt;
&lt;p&gt;## Patched versions
*(none yet — leave blank until a fix is released)*&lt;/p&gt;
&lt;p&gt;## Description&lt;/p&gt;
&lt;p&gt;### Summary
`/ws/network/proxy` is an admin-only WebSocket forward-proxy endpoint (target URL and headers fully attacker-specifiable via query parameters). Its `websocket.Upgrader` explicitly overrides `CheckOrigin` to unconditionally return `true` — disabling the origin validation that the `gorilla/websocket` library otherwise enforces **by default**. WebSocket handshake requests are not subject to CORS preflight at all (unlike `fetch`/XHR), so origin validation for WebSocket endpoints has to be done deliberately by the server; here it has been deliberately turned *off* instead. Combined with the endpoint&amp;#39;s own query-parameter-driven proxy target, this is a textbook Cross-Site WebSocket Hijacking (CSWSH) primitive on a capability that amounts to an authenticated network pivot through the SiYuan kernel process.&lt;/p&gt;
&lt;p&gt;### Details&lt;/p&gt;
&lt;p&gt;```go
// kernel/api/network.go:501
upgrader := websocket.Upgrader{
    CheckOrigin: func(r *http.Request) bool { return true },
}
clientConn, upgradeErr := upgrader.Upgrade(c.Writer, c.Request, upgradeHeaders)
```&lt;/p&gt;
&lt;p&gt;Route registration (admin-role-gated):
```go
// kernel/api/router.go:614
ginServer.Handle(&amp;#34;GET&amp;#34;, &amp;#34;/ws/network/proxy&amp;#34;, model.CheckAuth, model.CheckAdminRole, wsProxy)
```&lt;/p&gt;
&lt;p&gt;The proxy target is fully attacker-controllable via query parameters, decoded and dialed dire…&lt;/p&gt;</content:encoded>
      <guid isPermaLink="false">https://vulnerability.circl.lu/vuln/ghsa-3cc2-h3v6-rqpq</guid>
    </item>
  </channel>
</rss>
