CVE-2026-31941
Received Received - Intake
SSRF Vulnerability in Chamilo LMS Social Wall Allows Internal Access

Publication date: 2026-04-10

Last updated on: 2026-04-17

Assigner: GitHub, Inc.

Description
Chamilo LMS is a learning management system. Prior to 1.11.38 and 2.0.0-RC.3, Chamilo LMS contains a Server-Side Request Forgery (SSRF) vulnerability in the Social Wall feature. The endpoint read_url_with_open_graph accepts a URL from the user via the social_wall_new_msg_main POST parameter and performs two server-side HTTP requests to that URL without validating whether the target is an internal or external resource. This allows an authenticated attacker to force the server to make arbitrary HTTP requests to internal services, scan internal ports, and access cloud instance metadata. This vulnerability is fixed in 1.11.38 and 2.0.0-RC.3.
CVSS Scores
EPSS Scores
Probability:
Percentile:
Meta Information
Published
2026-04-10
Last Modified
2026-04-17
Generated
2026-05-09
AI Q&A
2026-04-10
EPSS Evaluated
2026-05-07
NVD
EUVD
Affected Vendors & Products
Showing 11 associated CPEs
Vendor Product Version / Range
chamilo chamilo_lms 2.0.0
chamilo chamilo_lms 2.0.0
chamilo chamilo_lms 2.0.0
chamilo chamilo_lms 2.0.0
chamilo chamilo_lms 2.0.0
chamilo chamilo_lms 2.0.0
chamilo chamilo_lms to 1.11.38 (exc)
chamilo chamilo_lms 2.0.0
chamilo chamilo_lms 2.0.0
chamilo chamilo_lms 2.0.0
chamilo chamilo_lms 2.0.0
Helpful Resources
Exploitability
CWE
CWE Icon
KEV
KEV Icon
CWE ID Description
CWE-918 The web server receives a URL or similar request from an upstream component and retrieves the contents of this URL, but it does not sufficiently ensure that the request is being sent to the expected destination.
Attack-Flow Graph
AI Powered Q&A
Can you explain this vulnerability to me?

CVE-2026-31941 is a Server-Side Request Forgery (SSRF) vulnerability in Chamilo LMS, specifically in the Social Wall feature. The vulnerability occurs because the application accepts a URL from the user and performs server-side HTTP requests to that URL without validating whether the target is an internal or external resource.

An authenticated attacker can exploit this by submitting a crafted URL that forces the server to make arbitrary HTTP requests to internal services, scan internal network ports, or access sensitive cloud instance metadata.

The root cause is the lack of validation on the user-supplied URL, allowing requests to private, reserved, or local IP ranges and permitting unsafe URL schemes.


How can this vulnerability impact me? :

This vulnerability can have several serious impacts if exploited:

  • An attacker can scan internal networks by enumerating live hosts and open ports.
  • It allows access to internal services that are not exposed externally, such as admin panels, databases, monitoring tools, or Docker DNS.
  • Attackers can steal cloud credentials by querying cloud metadata endpoints (e.g., 169.254.169.254) to obtain IAM roles, access keys, and security tokens.
  • The vulnerability enables bypassing network segmentation by using the server as a proxy to reach protected resources.
  • It can be chained with other vulnerabilities to exploit internal services like unauthenticated admin panels, Redis, or Elasticsearch.

How can this vulnerability be detected on my network or system? Can you suggest some commands?

This vulnerability involves the Chamilo LMS server making unauthorized HTTP requests to internal or external URLs via the Social Wall feature. Detection can focus on monitoring HTTP requests made by the server, especially POST requests to the endpoint handling the social_wall_new_msg_main parameter.

To detect exploitation attempts or scanning activity, you can monitor network traffic for unusual outbound HTTP requests originating from the Chamilo LMS server to internal IP ranges or cloud metadata IPs (e.g., 169.254.169.254).

  • Use network monitoring tools like tcpdump or Wireshark to capture outbound HTTP requests from the server.
  • Example tcpdump command to monitor outbound HTTP traffic from the server:
  • tcpdump -i eth0 -nn dst port 80 or dst port 443 and src host <Chamilo_Server_IP>
  • Check web server logs for POST requests to the Social Wall endpoint (e.g., social_wall_new_msg_main parameter) that include suspicious URLs.
  • Example grep command to find such POST requests in Apache logs:
  • grep 'social_wall_new_msg_main' /var/log/apache2/access.log
  • Look for requests containing URLs pointing to internal IP ranges (e.g., 127.0.0.0/8, 10.0.0.0/8, 172.16.0.0/12, 192.168.0.0/16) or cloud metadata IPs.

Since the vulnerability requires authentication, reviewing authenticated user activity for suspicious URL submissions can also help detect exploitation.


What immediate steps should I take to mitigate this vulnerability?

To mitigate this SSRF vulnerability in Chamilo LMS, immediate steps include upgrading the software to a fixed version and applying URL validation and request restrictions.

  • Upgrade Chamilo LMS to version 1.11.38 or later, or 2.0.0-RC.3 or later, where the vulnerability is fixed.
  • Apply URL safety checks that validate URLs before server-side fetching, including:
  • - Allow only http and https URL schemes.
  • - Ensure URLs contain valid hostnames.
  • - Resolve hostnames to IP addresses and block private, reserved, and local IP ranges (e.g., 127.0.0.0/8, 10.0.0.0/8, 172.16.0.0/12, 192.168.0.0/16, 169.254.0.0/16).
  • Restrict HTTP client configurations to limit redirects (max 3), disable SSL verification, and set appropriate User-Agent headers.
  • Modify cURL options to restrict protocols to HTTP and HTTPS only and limit redirects.

These mitigations prevent the server from making arbitrary HTTP requests to internal or unsafe network destinations, effectively blocking SSRF exploitation.


How does this vulnerability affect compliance with common standards and regulations (like GDPR, HIPAA)?:

The CVE-2026-31941 vulnerability in Chamilo LMS allows an authenticated attacker to perform Server-Side Request Forgery (SSRF) attacks, enabling access to internal services and cloud instance metadata. This can lead to unauthorized access to sensitive internal resources and potentially sensitive data.

Such unauthorized access risks violating data protection and privacy regulations like GDPR and HIPAA, which require strict controls over access to personal and sensitive information. The ability to access internal services and cloud metadata could lead to exposure of personal data or credentials, thereby impacting compliance with these standards.

The vulnerability's confidentiality impact (read access to internal resources) could result in breaches of confidentiality obligations under these regulations.


Ask Our AI Assistant
Need more information? Ask your question to get an AI reply (Powered by our expertise)
0/70
EPSS Chart