Skip to content
OpenAdvisories

Weakness (CWE)

CWE-918: Server-Side Request Forgery

Base Incomplete

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.

How to prevent it (3 mitigations)
  1. Implementation, Operation

    If there is a known list of applications, IP, hostname, and/or domains to which the product is allowed to communicate, then use allowlists to ensure that outgoing requests are restricted to these known entities. The allowlists could be in the application code or possibly enforced by firewalls or network segmentation [REF-1511].

  2. Implementation, Operation

    If the product is expected to be able to connect to arbitrary IP addresses or domains, consider using a denylist that includes private network addresses, internal domain names, etc. The denylist could be in the application code or possibly enforced by firewalls or network segmentation [REF-1511].

  3. Implementation

    Assume all input is malicious. Use an "accept known good" input validation strategy, i.e., use a list of acceptable inputs that strictly conform to specifications. Reject any input that does not strictly conform to specifications, or transform it into something that does.

    When performing input validation, consider all potentially relevant properties, including length, type of input, the full range of acceptable values, missing or extra inputs, syntax, consistency across related fields, and conformance to business rules. As an example of business rule logic, "boat" may be syntactically valid because it only contains alphanumeric characters, but it is not valid if the input is only expected to contain colors such as "red" or "blue."

    Do not rely exclusively on looking for malicious or malformed inputs. This is likely to miss at least one undesirable input, especially if the code's environment changes. This can give attackers enough room to bypass the intended validation. However, denylists can be useful for detecting potential attacks or determining which inputs are so malformed that they should be rejected outright.

    When constructing outgoing requests from input strings, use stringent allowlists that limit the character set based on the expected value of the parameter in the request. This will indirectly limit the scope of an attack, but this technique is less important than proper output encoding and escaping.

Source: MITRE CWE-918

341 results · Clear filters · Feed

  • Critical 9.1

    Apache Karaf Cave: Cave SSRF and arbitrary file access

    ** UNSUPPORTED WHEN ASSIGNED ** Improper Input Validation vulnerability in Apache Karaf Cave.This issue affects all versions of Apache Karaf Cave. As this project is retired, we do not plan to release a version that fixes this issue. Users are recommended to …

  • Critical 9.6

    An issue was discovered in Logpoint before 7.4.0. Due to a lack of input validation on URLs in threat intelligence, an …

  • Critical 9.8

    An issue was discovered in Teledyne FLIR M300 2.00-19. Unauthenticated remote code execution can occur in the web serve…

  • Critical 9.3

    SSRF in Akana API Platform

    A server-side request forgery (SSRF) was discovered in the Akana API Platform in versions prior to and including 2022.1.3. Reported by Jakob Antonsson.

  • Critical 9.1
    CVE-2024-29021 EPSS 20%

    SSRF into Sandbox Escape through Unsafe Default Configuration

    Judge0 is an open-source online code execution system. The default configuration of Judge0 leaves the service vulnerable to a sandbox escape via Server Side Request Forgery (SSRF). This allows an attacker with sufficient access to the Judge0 API to obtain uns…

  • Critical 9.1

    Plane Server-Side Request Forgery (SSRF) Vulnerability

    Plane, an open-source project management tool, has a Server-Side Request Forgery (SSRF) vulnerability in versions prior to 0.17-dev. This issue may allow an attacker to send arbitrary requests from the server hosting the application, potentially leading to un…

  • Critical 9.1

    Server Side Request Forgery (SSRF) vulnerability in Friendica versions after v.2023.12, allows a remote attacker to exe…

  • Critical 9.4

    Gleez Cms Server Side Request Forgery (SSRF) vulnerability

    Server Side Request Forgery (SSRF) vulnerability in Gleez Cms 1.2.0, allows remote attackers to execute arbitrary code and obtain sensitive information via modules/gleez/classes/request.php.

  • Critical 9.1

    An SSRF issue in REBUILD v.3.5 allows a remote attacker to obtain sensitive information and execute arbitrary code via …

  • Critical 9.3
    CVE-2024-28752 Public exploit

    Apache CXF SSRF Vulnerability using the Aegis databinding

    A SSRF vulnerability using the Aegis DataBinding in versions of Apache CXF before 4.0.4, 3.6.3 and 3.5.8 allows an attacker to perform SSRF style attacks on webservices that take at least one parameter of any type. Users of other data bindings (including the …

  • Critical 9.1
    CVE-2023-49785 Public exploit Scanner template EPSS 83%

    NextChat vulnerable to Server-Side Request Forgery and Cross-site Scripting

    NextChat, also known as ChatGPT-Next-Web, is a cross-platform chat user interface for use with ChatGPT. Versions 2.11.2 and prior are vulnerable to server-side request forgery and cross-site scripting. This vulnerability enables read access to internal HTTP e…

  • Critical 9.1

    A Server-Side Request Forgery (SSRF) in the installUpdateThemePluginAction function of WonderCMS v3.1.3 allows attacker…

  • Critical 9.8

    A Server-Side Request Forgery (SSRF) in weixin.php of ChatGPT-wechat-personal commit a0857f6 allows attackers to force …

  • Critical 9.6

    SSRF - file:// unsanitized access to underlying host files

    Attacker, with permission to submit a link or submits a link via POST to be collected that is using the file:// protocol can then introspect host files and other relatively stored files.

  • Critical 9.9

    SSRF on AWS deployed instances of AnythingLLM via /metadata

    The inclusion of the web scraper for AnythingLLM means that any user with the proper authorization level (manager, admin, and when in single user) could put in the URL ``` http://169.254.169.254/latest/meta-data/identity-credentials/ec2/security-credentials/e…

  • Critical 9.1

    Server-side request forgery vulnerability in Energy Management Controller with Cloud Services JH-RVB1 /JH-RV11 Ver.B0.1…

  • Critical 9.8

    Server Side Template Injection in Gambio 4.9.2.0 allows attackers to run arbitrary code via crafted smarty email templa…

  • Critical 9.8

    NPM IP package incorrectly identifies some private IP addresses as public

    The ip package before 1.1.9 for Node.js might allow SSRF because some IP addresses (such as 0x7f.1) are improperly categorized as globally routable via isPublic.

  • Critical 9.1

    Whoogle Search Server Side Request Forgery vulnerability

    Whoogle Search is a self-hosted metasearch engine. In versions 0.8.3 and prior, the `window` endpoint does not sanitize user-supplied input from the `location` variable and passes it to the `send` method which sends a `GET` request on lines 339-343 in `reques…

  • Critical 9.1
    CVE-2024-22203 Public exploit

    Whoogle Search Server Side Request Forgery vulnerability

    Whoogle Search is a self-hosted metasearch engine. In versions prior to 0.8.4, the `element` method in `app/routes.py` does not validate the user-controlled `src_type` and `element_url` variables and passes them to the `send` method which sends a GET request …

  • Critical 9.1

    MindsDB has arbitrary file write in file.py

    MindsDB is a SQL Server for artificial intelligence. Prior to version 23.11.4.1, the `put` method in `mindsdb/mindsdb/api/http/namespaces/file.py` does not validate the user-controlled name value, which is used in a temporary file name, which is afterwards op…

  • Critical 9.8

    Extension - joomcode.com - Unauthenticated LFI/SSRF in JCDashboards component for Joomla 1.0.0-1.1.30

    Unauthenticated LFI/SSRF in JCDashboards component for Joomla.

  • Critical 9.8

    Microcks contains a Server-Side Request Forgery (SSRF) via the component /jobs and /artifact/download

    Microcks up to 1.17.1 was discovered to contain a Server-Side Request Forgery (SSRF) via the component /jobs and /artifact/download. This vulnerability allows attackers to access network resources and sensitive information via a crafted GET request.

  • Critical 9.8
    CVE-2023-48022 Public exploit Scanner template EPSS 84%

    Ray has arbitrary code execution via jobs submission API

    Anyscale Ray 2.6.3 and 2.8.0 allows a remote attacker to execute arbitrary code via the job submission API. NOTE: the vendor's position is that this report is irrelevant because Ray, as stated in its documentation, is not intended for use outside of a strictl…

  • Critical 9.1
    CVE-2023-48023 Scanner template EPSS 35%

    Anyscale Ray 2.6.3 and 2.8.0 allows /log_proxy SSRF. NOTE: the vendor's position is that this report is irrelevant beca…

  • Critical 9.1

    XWiki Platform sends cookies to external images in rendered diff and is vulnerable to server side request forgery

    XWiki Platform is a generic wiki platform. The rendered diff in XWiki embeds images to be able to compare the contents and not display a difference for an actually unchanged image. For this, XWiki requests all embedded images on the server side. These request…

  • Critical 9.3

    Sentry Next.js vulnerable to SSRF via Next.js SDK tunnel endpoint

    sentry-javascript provides Sentry SDKs for JavaScript. An unsanitized input of Next.js SDK tunnel endpoint allows sending HTTP requests to arbitrary URLs and reflecting the response back to the user. This issue only affects users who have Next.js SDK tunnelin…

  • Critical 9.8

    OpenCRX allows a remote attacker to execute arbitrary code via a crafted request

    An issue in openCRX v.5.2.2 allows a remote attacker to read internal files and execute server side request forgery attack via insecure DocumentBuilderFactory.

  • Critical 10.0

    Server-Side Request Forgery (SSRF) in vriteio/vrite

    Server-Side Request Forgery (SSRF) in GitHub repository vriteio/vrite prior to 0.3.0.

  • Critical 9.9

    Server-Side Request Forgery in SLiMS

    Server-Side Request Forgery vulnerability in SLims version 9.6.0. This vulnerability could allow an authenticated attacker to send requests to internal services or upload the contents of relevant files via the "scrape_image.php" file in the imageURL parameter.

  • Critical 10.0
    CVE-2023-43654 Public exploit Scanner template EPSS 42%

    TorchServe Server-Side Request Forgery

    TorchServe is a tool for serving and scaling PyTorch models in production. TorchServe default configuration lacks proper input validation, enabling third parties to invoke remote HTTP download requests and write files to the disk. This issue could be taken ad…

  • Critical 10.0

    Full read and controlled SSRF through URL parameter when testing a request inside wiremock-studio

    WireMock is a tool for mocking HTTP services. When certain request URLs like “@127.0.0.1:1234" are used in WireMock Studio configuration fields, the request might be forwarded to an arbitrary service reachable from WireMock’s instance. There are 3 identified …

  • Critical 9.6

    CC: Tweaked SSRF to Cloud Services Metadata Services not Blocked by Default

    CC: Tweaked is a mod for Minecraft which adds programmable computers, turtles, and more to the game. Prior to versions 1.20.1-1.106.0, 1.19.4-1.106.0, 1.19.2-1.101.3, 1.18.2-1.101.3, and 1.16.5-1.101.3, if the cc-tweaked plugin is running on a Minecraft serve…

  • Critical 9.6

    OpenComputers's SSRF to cloud service metadata services and local IPv6 addresses not blocked by default

    OpenComputers is a Minecraft mod that adds programmable computers and robots to the game. This issue affects every version of OpenComputers with the Internet Card feature enabled; that is, OpenComputers 1.2.0 until 1.8.3 in their most common, default configur…

  • Critical 9.8

    An issue was discovered in GitLab Community and Enterprise Edition before 11.1.7, 11.2.x before 11.2.4, and 11.3.x befo…

  • Critical 9.1

    OpenAPI Generator vulnerable to Server-Side Request Forgery

    openapi-generator up to v6.4.0 was discovered to contain a Server-Side Request Forgery (SSRF) via the component /api/gen/clients/{language}. This vulnerability allows attackers to access network resources and sensitive information via a crafted API request.

  • Critical 9.8

    SSRF in Infoline Project Management System

    Server-Side Request Forgery (SSRF) vulnerability in Infoline Project Management System allows Server Side Request Forgery. This issue affects Project Management System: before 4.09.31.125.

  • Critical 9.9

    CairoSVG improperly processes SVG files loaded from external resources

    CairoSVG is an SVG converter based on Cairo, a 2D graphics library. Prior to version 2.7.0, Cairo can send requests to external hosts when processing SVG files. A malicious actor could send a specially crafted SVG file that allows them to perform a server-sid…

  • Critical 9.8

    Report v0.9.8.6 was discovered to contain a Server-Side Request Forgery (SSRF) vulnerability.

  • Critical 9.8

    Undertow client not checking server identity presented by server certificate in https connections

    The undertow client is not checking the server identity presented by the server certificate in https connections. This is a compulsory step (at least it should be performed by default) in https and in http/2. I would add it to any TLS client protocol.