CVE-2025-59146

8.5 HIGH

📋 TL;DR

An authenticated Server-Side Request Forgery (SSRF) vulnerability in New API versions before 0.9.0.5 allows authenticated users to make the server send requests to arbitrary internal or external services. Since user registration is often enabled by default, any registered user can exploit this vulnerability to potentially access internal systems or external resources. The vulnerability affects the URL processing feature where user-supplied URLs aren't properly validated before server-side requests are made.

💻 Affected Systems

Products:
  • New API (LLM gateway and AI asset management system)
Versions: All versions prior to 0.9.0.5
Operating Systems: All supported platforms
Default Config Vulnerable: ⚠️ Yes
Notes: User registration is often enabled by default, making most installations vulnerable to authenticated attacks.

⚠️ Manual Verification Required

This CVE does not have specific version information in our database, so automatic vulnerability detection cannot determine if your system is affected.

Why? The CVE database entry doesn't specify which versions are vulnerable (no version ranges provided by the vendor/NVD).

🔒 Custom verification scripts are available for registered users. Sign up free to download automated test scripts.

Recommended Actions:
  1. Review the CVE details at NVD
  2. Check vendor security advisories for your specific version
  3. Test if the vulnerability is exploitable in your environment
  4. Consider updating to the latest version as a precaution

⚠️ Risk & Real-World Impact

🔴

Worst Case

Attacker gains access to internal services, sensitive data, or cloud metadata, potentially leading to full system compromise or lateral movement within the network.

🟠

Likely Case

Information disclosure from internal services, scanning of internal networks, or abuse of server resources for external attacks.

🟢

If Mitigated

Limited impact with proper network segmentation and egress filtering, potentially only affecting non-critical services.

🌐 Internet-Facing: HIGH
🏢 Internal Only: MEDIUM

🎯 Exploit Status

Public PoC: ✅ No
Weaponized: LIKELY
Unauthenticated Exploit: ✅ No
Complexity: LOW

Exploitation requires authenticated access but is straightforward once authenticated. The advisory provides technical details that could facilitate exploitation.

🛠️ Fix & Mitigation

✅ Official Fix

Patch Version: 0.9.0.5

Vendor Advisory: https://github.com/QuantumNous/new-api/security/advisories/GHSA-xxv6-m6fx-vfhh

Restart Required: Yes

Instructions:

1. Backup your configuration and data. 2. Upgrade to version 0.9.0.5 or later. 3. Restart the New API service. 4. Verify the SSRF protection module is enabled in configuration.

🔧 Temporary Workarounds

Enable image processing worker

linux

Enable the new-api-worker service to process images separately, which may bypass the vulnerable endpoint.

systemctl enable new-api-worker
systemctl start new-api-worker

Configure egress firewall rules

linux

Restrict outbound connections from the New API server to only necessary external services.

iptables -A OUTPUT -p tcp --dport 80 -j ACCEPT
iptables -A OUTPUT -p tcp --dport 443 -j ACCEPT
iptables -A OUTPUT -j DROP

🧯 If You Can't Patch

  • Disable user registration or restrict user access to trusted accounts only
  • Implement network segmentation to isolate the New API server from sensitive internal services

🔍 How to Verify

Check if Vulnerable:

Check if version is below 0.9.0.5 and test authenticated URL submission to internal services.

Check Version:

new-api --version

Verify Fix Applied:

Verify version is 0.9.0.5 or higher and test that SSRF attempts are blocked by the protection module.

📡 Detection & Monitoring

Log Indicators:

  • Unusual outbound HTTP requests from New API server
  • Multiple failed URL processing attempts
  • Requests to internal IP addresses or cloud metadata endpoints

Network Indicators:

  • Outbound connections from New API server to unexpected internal services
  • Traffic to cloud metadata services (169.254.169.254 for AWS)

SIEM Query:

source="new-api" AND (url_processing_failed OR outbound_request) AND (dest_ip=10.* OR dest_ip=192.168.* OR dest_ip=172.16.* OR dest_ip=169.254.169.254)

🔗 References

📤 Share & Export