CVE-2025-64327

5.3 MEDIUM

📋 TL;DR

ThinkDashboard versions 0.6.7 and below contain a blind SSRF vulnerability in the /api/ping?url= endpoint that allows attackers to make arbitrary HTTP requests to internal and external systems. This can lead to network reconnaissance and potential data exposure. Anyone running vulnerable ThinkDashboard instances is affected.

💻 Affected Systems

Products:
  • ThinkDashboard
Versions: 0.6.7 and below
Operating Systems: All platforms running ThinkDashboard
Default Config Vulnerable: ⚠️ Yes
Notes: All default installations with the /api/ping endpoint accessible are vulnerable.

📦 What is this software?

⚠️ Risk & Real-World Impact

🔴

Worst Case

Attacker maps internal network, discovers sensitive services, and potentially accesses internal-only resources or pivots to other attacks.

🟠

Likely Case

Internal network reconnaissance revealing open ports, services, and internal IP addresses.

🟢

If Mitigated

Limited to external network scanning if proper network segmentation and egress filtering are in place.

🌐 Internet-Facing: HIGH - Internet-facing instances allow attackers to probe internal networks from outside.
🏢 Internal Only: MEDIUM - Internal instances still allow lateral movement and internal network mapping.

🎯 Exploit Status

Public PoC: ✅ No
Weaponized: LIKELY
Unauthenticated Exploit: ⚠️ Yes
Complexity: LOW

Simple HTTP request manipulation required. No authentication needed to access the vulnerable endpoint.

🛠️ Fix & Mitigation

✅ Official Fix

Patch Version: 0.6.8

Vendor Advisory: https://github.com/MatiasDesuu/ThinkDashboard/security/advisories/GHSA-p52r-qq3j-8p78

Restart Required: Yes

Instructions:

1. Stop ThinkDashboard service. 2. Update to version 0.6.8 via git pull or download release. 3. Restart ThinkDashboard service.

🔧 Temporary Workarounds

Block /api/ping endpoint

all

Use web server or application firewall to block access to the vulnerable endpoint

# Example nginx location block
location /api/ping { deny all; }

Network egress filtering

linux

Restrict outbound connections from ThinkDashboard server to only necessary destinations

# Example iptables rule
iptables -A OUTPUT -p tcp -m owner --uid-owner thinkdashboard -d 127.0.0.1 --dport 80 -j ACCEPT
# Deny all other outbound from ThinkDashboard user
iptables -A OUTPUT -p tcp -m owner --uid-owner thinkdashboard -j DROP

🧯 If You Can't Patch

  • Implement strict network segmentation to isolate ThinkDashboard from sensitive internal networks
  • Deploy web application firewall with SSRF protection rules

🔍 How to Verify

Check if Vulnerable:

Test if /api/ping?url=http://169.254.169.254/latest/meta-data/ returns data (AWS metadata endpoint test)

Check Version:

Check ThinkDashboard version in web interface or run: ./thinkdashboard --version

Verify Fix Applied:

After patching, same test should return error or be blocked

📡 Detection & Monitoring

Log Indicators:

  • Multiple requests to /api/ping with different URL parameters
  • Outbound connections from ThinkDashboard to internal IP ranges

Network Indicators:

  • Unusual outbound HTTP traffic from ThinkDashboard server to internal IPs
  • Port scanning patterns originating from ThinkDashboard server

SIEM Query:

source="thinkdashboard.log" AND uri="/api/ping" AND url=*

🔗 References

📤 Share & Export