Версии SiYuan <= 3.8.1 содержат неполное исправление CVE-2026-32767 (GHSA-j7wh-x834-p3r7). Предыдущее исправление (commit d5e2d0bc) добавляло проверку администратором режима SQL (метод=2) в POST /api/search/fullTextSearchBlock, но конечная точка по-прежнему не обеспечивает соблюдение границы приложения, доступной только для чтения: для метода = 2 она пересылает SQL, предоставленный вызывающей стороной, в путь запроса к базе данных блоков без вызова model.CheckReadonly или CheckReadonlyStatementInBox. В результате, когда рабочая область работает в режиме только для чтения (--readonly=true), прошедший проверку подлинности администратор может отправить произвольный SQL-запрос через /api/search/fullTextSearchBlock и получить необработанный доступ для чтения к базе данных блоков, даже если выделенная конечная точка /api/query/sql заблокирована в этом режиме.
Исправлено в версии 3.8.2.
Показать оригинальное описание (EN)
SiYuan versions <= 3.8.1 contain an incomplete fix for CVE-2026-32767 (GHSA-j7wh-x834-p3r7). The prior fix (commit d5e2d0bc) added an administrator check for SQL mode (method=2) in POST /api/search/fullTextSearchBlock, but the endpoint still does not enforce the application's read-only boundary: for method=2 it forwards caller-supplied SQL to the blocks database query path without calling model.CheckReadonly or CheckReadonlyStatementInBox. As a result, when a workspace runs in read-only mode (--readonly=true), an authenticated administrator can submit arbitrary SQL through /api/search/fullTextSearchBlock and obtain raw read access to the blocks database, even though the dedicated /api/query/sql endpoint is blocked in that mode. Fixed in v3.8.2.
Характеристики атаки
Последствия
Строка CVSS v4.0
Тип уязвимости (CWE)
Уязвимые продукты 1
| Конфигурация | От (включительно) | До (исключительно) |
|---|---|---|
|
B3log Siyuan
cpe:2.3:a:b3log:siyuan:*:*:*:*:*:*:*:*
|
— |
3.8.2
|