Submit #852842: AstrBotDevs AstrBot 4.25.2 Server-Side Request Forgery (CWE-918)info

TitleAstrBotDevs AstrBot 4.25.2 Server-Side Request Forgery (CWE-918)
Description# Technical Details An authenticated Server-Side Request Forgery (SSRF) exists in the plugin update handlers (`update_plugin` and `update_all_plugins`) in `astrbot/dashboard/routes/plugin.py` of AstrBot. The application fails to validate the `download_url`, `download_urls`, and `proxy` fields extracted from user-supplied JSON bodies before using them to make outbound requests. # Vulnerable Code File: astrbot/core/star/updator.py Method: PluginUpdator.update Why: The update method reads attacker-controlled URLs and directly passes them to the `httpx` HTTP client configured with `follow_redirects=True`. Neither the request domain, URL scheme, nor redirect targets are validated. # Reproduction 1. Log in to the AstrBot dashboard using valid credentials. 2. Send a POST request to `/api/plugin/update` sending a target `name` and an attacker-controlled `download_url` (e.g., `"download_url": "http://127.0.0.1:19031/plugin.zip"`). 3. Confirm that the AstrBot server successfully completes an HTTP GET request to the specified internal or arbitrary host. # Impact - Allows an attacker to force the server into issuing outbound HTTP GET requests to arbitrary loopback or internal RFC1918 services. - Permits internal network probing. - Provides access to private mirrors, admin panels, and other services not reachable from the outside.
Source⚠️ https://gist.github.com/YLChen-007/f84070f78d9c9c9407b0c396189cd716
User Eric-d (UID 96861)
Submission06/09/2026 11:18 (2 months ago)
Moderation07/17/2026 15:39 (1 month later)
StatusAccepted
VulDB entry379789 [AstrBotDevs AstrBot up to 4.25.2 Plugin Update plugin.py update_plugin/update_all_plugins download_url/download_urls/proxy server-side request forgery]
Points20

Do you know our Splunk app?

Download it now for free!