VYPR
Medium severity4.7NVD Advisory· Published Jun 2, 2026

CVE-2026-10583

CVE-2026-10583

Description

A Server-Side Request Forgery (SSRF) vulnerability in GoClaw's TTS configuration allows remote attackers to interact with internal resources.

AI Insight

LLM-synthesized narrative grounded in this CVE's description and references.

A Server-Side Request Forgery (SSRF) vulnerability in GoClaw's TTS configuration allows remote attackers to interact with internal resources.

Vulnerability

A security vulnerability exists in nextlevelbuilder GoClaw up to version 3.11.3, specifically within the Import function of the internal/http/tts_config.go file, which is part of the TTS Configuration Endpoint component. This flaw allows for Server-Side Request Forgery (SSRF) due to unvalidated URL fields in the TTS configuration.

Exploitation

An attacker with administrative privileges, or any user in default/dev single-user setups, can exploit this by storing a malicious API base URL in the Text-to-Speech (TTS) configuration endpoint (POST /v1/tts/config). When a TTS synthesis request is triggered (POST /v1/tts/synthesize), the application backend uses an unvalidated URL, enabling the attacker to force the server to interact with internal resources or private subnets [2].

Impact

Successful exploitation of this vulnerability allows an attacker to perform Server-Side Request Forgery (SSRF). This enables unauthorized interaction with internal resources, such as private subnets, localhost endpoints, or cloud metadata services, by forcing the server to make requests to attacker-controlled endpoints [2].

Mitigation

This vulnerability was addressed in GoClaw version 3.11.4. Users are advised to upgrade to the latest version. No workarounds are specified in the available references. The project tagged the reported issue as a bug [2].

AI Insight generated on Jun 2, 2026. Synthesized from this CVE's description and the cited reference URLs; citations are validated against the source bundle.

Affected products

2

Patches

0

No patches discovered yet.

Vulnerability mechanics

Root cause

"An unvalidated URL field in the TTS configuration endpoint allows storing malicious API base URLs."

Attack vector

An attacker with administrative privileges, or any user in default single-user setups, can send a POST request to the /v1/tts/config endpoint with a malicious api_base URL. This URL is then stored without validation in the system_configs persistent store. Subsequently, when a TTS synthesis request is triggered, the backend uses the stored malicious URL, leading to Server-Side Request Forgery [ref_id=2]. The advisory notes that a similar check is performed for testing provider connections but was omitted from the save functionality [ref_id=2].

Affected code

The vulnerability resides in the `handleSave` method of the `TTSConfigHandler` within the file `internal/http/tts_config.go`. Specifically, the code directly applies custom `api_base` entries without proper validation, as indicated by the comment `// [VULNERABILITY] `resolvedAPIBase()` does not run validateProviderURL() against internal IPs` [ref_id=2].

What the fix does

The patch ensures that the `resolvedAPIBase()` function, used when saving TTS configurations, now calls `validateProviderURL()`. This helper function preemptively rejects private IP addresses and other potentially harmful internal endpoints, preventing the persistence of malicious URLs. By enforcing this validation during the save operation, the vulnerability that allowed SSRF is remediated [ref_id=2].

Preconditions

  • authAdministrative privileges are required, or any user in default/dev single-user setups.
  • networkThe attacker must be able to reach the /v1/tts/config endpoint remotely.
  • inputThe attacker must provide a malicious api_base URL in the TTS configuration.

Reproduction

Start up the vulnerable topology context utilizing a simplified compose configuration alongside PostgreSQL. Use the provided Python script to inject a malicious AWS instance metadata address (http://169.254.169.254/latest/meta-data) and subsequently ping the server to trigger a synthesis. A supplementary control script demonstrates that the corresponding connection-checking methodology properly filters out the injected payload. Execute python3 poc_tts_config_ssrf.py to view the timeout behavior reflecting a successful invocation upon the target internal network [ref_id=2].

Generated on Jun 2, 2026. Inputs: CWE entries + fix-commit diffs from this CVE's patches. Citations validated against bundle.

References

6

News mentions

0

No linked articles in our index yet.