Ad

CVE-2026-70559

HIGH CVSS 4.0: 8,7 EPSS 0.33%
Обновлено 7 августа 2026
Datalinkdc
Параметр Значение
CVSS 8,7 (HIGH)
Тип уязвимости CWE-306 (Отсутствие аутентификации)
Поставщик Datalinkdc
Публичный эксплойт Нет

Обработчик Dinky SysConfigController.getAll() для GET /api/sysConfig/getAll содержит аннотацию @SaIgnore на уровне метода, которая замыкает @SaCheckLogin на уровне класса, поэтому перехватчик Sa-Token пропускает запрос без проверки сеанса или роли. Любой удаленный неаутентифицированный вызывающий абонент, который может подключиться к HTTP-порту Dinky (по умолчанию 8888), получает полную действующую конфигурацию системы (54 записи в стандартной установке версии 1.2.5) с помощью одного GET без параметров. Только одно поле учетных данных (sys.maven.settings.repositoryPassword) имеет встроенный обработчик десенсибилизации; другие поля, содержащие учетные данные (sys.env.settings.dinkyToken, sys.ldap.settings.userPassword, sys.resource.settings.oss.accessKey и secretKey, а также sys.dolphinscheduler.settings.token), возвращаются в виде открытого текста.

При простой установке теряются поставляемые настройки по умолчанию, включая жестко закодированные ключи dinkyToken efda1551-7958-4e0f-80a8-dfd107df3e38 и OSS-ключи minioadmin/minioadmin; как только оператор настраивает LDAP, объектное хранилище или DolphinScheduler через Центр настроек, эти действующие сторонние учетные данные просачиваются из той же конечной точки. Поскольку dinkyToken является единственным шлюзом при записи произвольного файла POST /download/uploadFromRsByLocal, это раскрытие препятствует ротации токенов в качестве средства устранения этой уязвимости. Затрагивает Dinky v1.2.5 (текущий выпуск, 2025-11-05) и ветку разработки (dev HEAD 63b5a5a), где затронутый код побайтно идентичен.

Показать оригинальное описание (EN)

Dinky's SysConfigController.getAll() handler for GET /api/sysConfig/getAll carries a method-level @SaIgnore annotation that short-circuits the class-level @SaCheckLogin, so the Sa-Token interceptor lets the request through with no session or role check. Any remote unauthenticated caller who can reach the Dinky HTTP port (8888 by default) receives the full live system configuration (54 entries on a stock v1.2.5 install) with one parameterless GET. Only one credential field (sys.maven.settings.repositoryPassword) has a desensitization handler wired; the other credential-bearing fields (sys.env.settings.dinkyToken, sys.ldap.settings.userPassword, sys.resource.settings.oss.accessKey and secretKey, and sys.dolphinscheduler.settings.token) return in cleartext. A bare install leaks the shipped defaults, including the hardcoded dinkyToken efda1551-7958-4e0f-80a8-dfd107df3e38 and minioadmin/minioadmin OSS keys; once an operator configures LDAP, object storage, or DolphinScheduler through the Settings Center, those live third-party credentials leak from the same endpoint. Because dinkyToken is the sole gate on the sibling POST /download/uploadFromRsByLocal arbitrary file write, this disclosure defeats token rotation as a mitigation for that vulnerability. Affects Dinky v1.2.5 (the current release, 2025-11-05) and the development branch (dev HEAD 63b5a5a), where the affected code is byte-identical.

Характеристики атаки

Способ атаки
По сети
Атака возможна удалённо
Сложность
Низкая
Легко эксплуатировать
Условия для атаки
Не требуются
Нет дополнительных условий
Нужны права
Не требуются
Права не нужны
Участие пользователя
Не требуется
Не нужно действие пользователя

Последствия

Конфиденциальность
Высокое
Полная утечка данных
Целостность
Нет
Нет модификации данных
Доступность
Нет
Нет нарушения работы

Строка CVSS v4.0

Уязвимые продукты

datalinkdc:dinky

Связанные уязвимости