CVE-2024-11031

7.5 HIGH

πŸ“‹ TL;DR

This SSRF vulnerability in GPT Academic allows attackers to make the server request arbitrary web resources using its credentials. It affects users running version 3.83 of binary-husky/gpt_academic with the HotReload plugin enabled. Attackers can exploit this to access internal systems or external services that the server can reach.

πŸ’» Affected Systems

Products:
  • binary-husky/gpt_academic
Versions: Version 3.83
Operating Systems: All
Default Config Vulnerable: ⚠️ Yes
Notes: Requires the HotReload(MarkdownηΏ»θ―‘δΈ­) plugin to be enabled and accessible.

πŸ“¦ What is this software?

⚠️ Risk & Real-World Impact

πŸ”΄

Worst Case

Attackers gain access to internal systems, cloud metadata services, or sensitive APIs using the server's credentials, potentially leading to data exfiltration, lateral movement, or privilege escalation.

🟠

Likely Case

Unauthorized access to internal web services or external APIs that the server can reach, potentially exposing sensitive data or allowing further exploitation.

🟒

If Mitigated

Limited impact if proper network segmentation and egress filtering are in place, restricting the server's ability to reach sensitive internal resources.

🌐 Internet-Facing: HIGH
🏒 Internal Only: MEDIUM

🎯 Exploit Status

Public PoC: βœ… No
Weaponized: UNKNOWN
Unauthenticated Exploit: βœ… No
Complexity: MEDIUM

Exploitation requires access to the vulnerable API endpoint and knowledge of the plugin functionality.

πŸ› οΈ Fix & Mitigation

βœ… Official Fix

Patch Version: Version 3.84 or later

Vendor Advisory: https://huntr.com/bounties/d27d89a7-7d54-45b9-a9eb-66c00bc56e02

Restart Required: No

Instructions:

1. Update to version 3.84 or later. 2. Run: pip install --upgrade gpt_academic. 3. Verify the update completed successfully.

πŸ”§ Temporary Workarounds

Disable HotReload Plugin

all

Temporarily disable the vulnerable plugin to prevent exploitation.

Edit configuration to remove or disable HotReload(MarkdownηΏ»θ―‘δΈ­) plugin

Network Egress Filtering

all

Restrict outbound connections from the GPT Academic server to only necessary destinations.

Configure firewall rules to limit outbound HTTP/HTTPS traffic

🧯 If You Can't Patch

  • Disable the HotReload(MarkdownηΏ»θ―‘δΈ­) plugin immediately
  • Implement strict network segmentation and egress filtering for the server

πŸ” How to Verify

Check if Vulnerable:

Check if running version 3.83 and if the HotReload plugin is enabled in configuration.

Check Version:

python -c "import gpt_academic; print(gpt_academic.__version__)"

Verify Fix Applied:

Verify version is 3.84 or later and test the vulnerable API endpoint with SSRF payloads.

πŸ“‘ Detection & Monitoring

Log Indicators:

  • Unusual outbound HTTP requests from the GPT Academic server
  • Requests to internal IP addresses or cloud metadata services

Network Indicators:

  • HTTP requests from GPT Academic server to unexpected destinations
  • Traffic patterns matching SSRF exploitation

SIEM Query:

source="gpt_academic_logs" AND (url="*metadata*" OR url="*169.254*" OR url="*internal*" OR url="*localhost*")

πŸ”— References

πŸ“€ Share & Export