Dinky Unauthenticated System Configuration and Credential Disclosure via GET /api/sysConfig/getAll
Key facts
- Attack vector
- Network
- Privileges required
- None
- User interaction
- None
- Attack complexity
- Low
- Attack requirements
- None
- Impact type
- Security bypass
- Confidentiality · integrity · availability
- High · None · None
- Fix status
- No fix listed
Attack profile from CVSS 4.0 · CNA. Fix status from CNA. Impact type from CWE-306.
Summary
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.
Why it matters now
SSVC decision points
CISA ADP · SSVC 2.0.3
- Exploitation
- None
- Automatable
- Yes
- Technical impact
- Partial
The decision (Track, Attend, Act) also depends on your mission and well-being impact; see CISA's SSVC guide.
Affected products
| Vendor | Product | Affected versions | Fixed in | Status | Source |
|---|---|---|---|---|---|
| DataLinkDC | Dinky | up to 1.2.5 | — | No fix listed | CNA |
- Dinky VendorDataLinkDC Affected up to 1.2.5 Fixed in — No fix listed CNA
CPE names Threatist (inferred) · 1
Inferred from how NVD named this product before; not given by a source.
| CPE | Versions | Role | Vendor |
|---|---|---|---|
| cpe:2.3:a:dinky:dinky:*:*:*:*:*:*:*:* | — | — | DataLinkDC |
- cpe:2.3:a:dinky:dinky:*:*:*:*:*:*:*:* Versions — — ·DataLinkDC
Remediation
No fixed version listed by the sources yet.
Timeline
- 2026-10-02 Threatist record created from CVE-2026-70559
- 2026-10-03 Alias added: GHSA-83jg-x5rh-3x8c
References
More DataLinkDC vulnerabilities
- TI-2026-02637 DataLinkDC dinky OpenAPI Endpoint AppConfig.java addInterceptors missing authentication CVSS 4.0MEDIUM 6.9
- TI-2026-02636 DataLinkDC dinky Flink Proxy Controller FlinkProxyController.java proxyUba server-side request forgery CVSS 4.0MEDIUM 5.3
- TI-2026-02635 DataLinkDC dinky Project Name GitRepository.java getProjectDir path traversal CVSS 4.0MEDIUM 5.3
- TI-2026-49279 Dinky Unauthenticated Arbitrary File Write via /download/uploadFromRsByLocal Gated Only by Hardcoded Default Token CVSS 4.0CRITICAL 9.3
- TI-2026-85167 Server-side request forgery in DataLinkDC Dinky flink_web proxy CVSS 4.0MEDIUM 6.9
Sources
- CVE-2026-70559 · CVE Program
- CVE-2026-70559 · NVD
- FIRST EPSS
- GHSA-83jg-x5rh-3x8c · GitHub Advisory Database · CC BY 4.0
This product uses the NVD API but is not endorsed or certified by the NVD. Sources and licences