CVE-2026-3789
Server-Side Request Forgery in Bytedesk SpringAIGiteeRestController
Publication date: 2026-03-09
Last updated on: 2026-04-29
Assigner: VulDB
Description
Description
CVSS Scores
EPSS Scores
| Probability: | |
| Percentile: |
Meta Information
Affected Vendors & Products
| Vendor | Product | Version / Range |
|---|---|---|
| bytedesk | bytedesk | to 1.4.5.4 (exc) |
Helpful Resources
Exploitability
| CWE ID | Description |
|---|---|
| CWE-918 | The web server receives a URL or similar request from an upstream component and retrieves the contents of this URL, but it does not sufficiently ensure that the request is being sent to the expected destination. |
Attack-Flow Graph
AI Powered Q&A
Can you explain this vulnerability to me?
CVE-2026-3789 is a Server-Side Request Forgery (SSRF) vulnerability found in Bytedesk versions up to 1.3.9. It affects the function getModels in the SpringAIGiteeRestService.java file, part of the SpringAIGiteeRestController component. The vulnerability occurs because the apiUrl parameter is not properly validated before being used to make HTTP requests. This allows an attacker to manipulate the apiUrl argument to force the server to make unauthorized requests to arbitrary URLs.
This flaw is classified under CWE-918 and can be exploited remotely. The exploit is publicly available, making it easier for attackers to leverage this vulnerability. The issue is resolved by upgrading Bytedesk to version 1.4.5.4, which includes a patch that properly addresses the problem.
How can this vulnerability impact me? :
This vulnerability allows attackers to make arbitrary HTTP requests from the vulnerable server to attacker-controlled or internal URLs. This can lead to several impacts including:
- Internal network scanning and reconnaissance by the attacker.
- Access to sensitive internal services such as cloud Instance Metadata Service (IMDS).
- Potential exfiltration of credentials or other sensitive data from internal systems.
Because the server blindly trusts the manipulated apiUrl parameter, attackers can exploit this to compromise confidentiality, integrity, and availability of the affected system.
How does this vulnerability affect compliance with common standards and regulations (like GDPR, HIPAA)?:
I don't know
How can this vulnerability be detected on my network or system? Can you suggest some commands?
[{'type': 'paragraph', 'content': 'This vulnerability can be detected by monitoring for unusual HTTP requests originating from the server to unexpected or attacker-controlled URLs, especially those targeting the vulnerable endpoint GET /gitee/api/v1/models with a manipulated apiUrl parameter.'}, {'type': 'paragraph', 'content': 'Detection can involve inspecting server logs for requests to the vulnerable endpoint and analyzing outbound HTTP requests made by the server to external or internal resources that are not normally accessed.'}, {'type': 'paragraph', 'content': 'A practical approach is to search web server or application logs for requests to the endpoint /gitee/api/v1/models with suspicious apiUrl parameters.'}, {'type': 'list_item', 'content': 'Example command to search logs for suspicious apiUrl usage (assuming logs are in access.log):'}, {'type': 'list_item', 'content': 'grep "/gitee/api/v1/models" access.log | grep "apiUrl="'}, {'type': 'list_item', 'content': 'Monitor outbound HTTP requests from the server to unusual domains or IPs using network monitoring tools or commands like:'}, {'type': 'list_item', 'content': "tcpdump -i eth0 'tcp dst port 80 or tcp dst port 443'"}, {'type': 'list_item', 'content': 'Use application-level tracing or logging to detect calls to RestTemplate.exchange() with unvalidated URLs if source code or debugging is possible.'}] [2, 3]
What immediate steps should I take to mitigate this vulnerability?
The primary and recommended mitigation is to upgrade Bytedesk to version 1.4.5.4, which includes a patch that properly validates the apiUrl parameter and prevents server-side request forgery.
Until the upgrade can be applied, consider implementing network-level restrictions to block the server from making unauthorized outbound HTTP requests to untrusted or external domains.
Additionally, review and restrict access to the vulnerable endpoint GET /gitee/api/v1/models, for example by applying authentication, IP whitelisting, or disabling the endpoint if not needed.
Monitoring and alerting on suspicious usage of the apiUrl parameter can also help detect exploitation attempts.