CVE-2025-14116

4.7 MEDIUM

📋 TL;DR

This CVE describes a Server-Side Request Forgery (SSRF) vulnerability in xerrors Yuxi-Know software up to version 0.4.0. Attackers can manipulate the health_url parameter in the OtherEmbedding.aencode function to make the server send unauthorized requests to internal or external systems. Organizations using vulnerable versions of Yuxi-Know are affected.

💻 Affected Systems

Products:
  • xerrors Yuxi-Know
Versions: up to 0.4.0
Operating Systems: All
Default Config Vulnerable: ⚠️ Yes
Notes: Affects the /src/models/embed.py file, specifically the OtherEmbedding.aencode function when processing health_url parameter.

⚠️ 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

Attackers could access internal services, exfiltrate sensitive data, or pivot to other systems within the network.

🟠

Likely Case

Information disclosure from internal services, potential data exfiltration, or denial of service through resource exhaustion.

🟢

If Mitigated

Limited impact with proper network segmentation and input validation controls in place.

🌐 Internet-Facing: HIGH
🏢 Internal Only: MEDIUM

🎯 Exploit Status

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

Exploit is publicly available and can be initiated remotely without authentication.

🛠️ Fix & Mitigation

✅ Official Fix

Patch Version: Patched in commit 0ff771dc1933d5a6b78f804115e78a7d8625c3f3

Vendor Advisory: https://github.com/xerrors/Yuxi-Know/commit/0ff771dc1933d5a6b78f804115e78a7d8625c3f3

Restart Required: Yes

Instructions:

1. Update Yuxi-Know to version after commit 0ff771dc1933d5a6b78f804115e78a7d8625c3f3. 2. Restart the application. 3. Verify URL parsing, URL upload mode, and URL-to-markdown conversion are disabled as per vendor security measures.

🔧 Temporary Workarounds

Disable URL processing features

all

Manually disable URL parsing, URL upload mode, and URL-to-markdown conversion features as implemented by vendor.

Configure application settings to disable URL parsing features
Set URL_UPLOAD_MODE=false in configuration
Disable URL-to-markdown conversion in application settings

Network segmentation

all

Restrict outbound network access from Yuxi-Know servers to only necessary services.

Configure firewall rules to limit outbound connections from Yuxi-Know servers
Implement network segmentation to isolate Yuxi-Know from sensitive internal services

🧯 If You Can't Patch

  • Implement strict input validation for health_url parameter to reject URLs
  • Deploy web application firewall with SSRF protection rules

🔍 How to Verify

Check if Vulnerable:

Check if Yuxi-Know version is 0.4.0 or earlier and if the /src/models/embed.py file contains the vulnerable OtherEmbedding.aencode function.

Check Version:

Check Yuxi-Know version in application configuration or via package manager (e.g., pip show yuxi-know)

Verify Fix Applied:

Verify the application is using code from commit 0ff771dc1933d5a6b78f804115e78a7d8625c3f3 or later, and that URL parsing features are disabled.

📡 Detection & Monitoring

Log Indicators:

  • Unusual outbound HTTP requests from Yuxi-Know server
  • Requests to internal IP addresses or unusual domains
  • Errors related to URL parsing or health_url parameter

Network Indicators:

  • Outbound HTTP requests from Yuxi-Know to unexpected destinations
  • Requests to internal services that shouldn't be accessed

SIEM Query:

source="yuxi-know" AND (url_contains("health_url") OR dest_ip IN (internal_ranges))

🔗 References

📤 Share & Export