CWE

Common Weakness Enumeration

A Community-Developed Dictionary of Software Weakness Types

Common Weakness Scoring System
Common Weakness Risk Analysis Framework
Home > CWE List > CWE- Individual Dictionary Definition (2.8)  

Presentation Filter:

CWE-918: Server-Side Request Forgery (SSRF)

 
Server-Side Request Forgery (SSRF)
Weakness ID: 918 (Weakness Base)Status: Incomplete
+ Description

Description Summary

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.

Extended Description

By providing URLs to unexpected hosts or ports, attackers can make it appear that the server is sending the request, possibly bypassing access controls such as firewalls that prevent the attackers from accessing the URLs directly. The server can be used as a proxy to conduct port scanning of hosts in internal networks, use other URLs such as that can access documents on the system (using file://), or use other protocols such as gopher:// or tftp://, which may provide greater control over the contents of requests.

+ Alternate Terms
XSPA:

Cross Site Port Attack

+ Time of Introduction
  • Architecture and Design
  • Implementation
+ Applicable Platforms

Languages

Language-independent

Architectural Paradigms

Web-based

Technology Classes

Web-Server

+ Common Consequences
ScopeEffect
Confidentiality

Technical Impact: Read application data

Integrity

Technical Impact: Execute unauthorized code or commands

+ Observed Examples
ReferenceDescription
Web server allows attackers to request a URL from another server, including other ports, which allows proxied scanning.
CGI script accepts and retrieves incoming URLs.
Web-based mail program allows internal network scanning using a modified POP3 port number.
URL-downloading library automatically follows redirects to file:// and scp:// URLs
+ Relationships
NatureTypeIDNameView(s) this relationship pertains toView(s)
ChildOfWeakness ClassWeakness Class441Unintended Proxy or Intermediary ('Confused Deputy')
Development Concepts (primary)699
Research Concepts (primary)1000
+ Relationship Notes

CWE-918 (SSRF) and CWE-611 (XXE) are closely related, because they both involve web-related technologies and can launch outbound requests to unexpected destinations. However, XXE can be performed client-side, or in other contexts in which the software is not acting directly as a server, so the "Server" portion of the SSRF acronym does not necessarily apply.

+ References
Alexander Polyakov and Dmitry Chastukhin. "SSRF vs. Business-critical applications: XXE tunneling in SAP". 2012-07-26. <https://media.blackhat.com/bh-us-12/Briefings/Polyakov/BH_US_12_Polyakov_SSRF_Business_Slides.pdf>.
Alexander Polyakov, Dmitry Chastukhin and Alexey Tyurin. "SSRF vs. Business-critical Applications. Part 1: XXE Tunnelling in SAP NetWeaver". <http://erpscan.com/wp-content/uploads/2012/08/SSRF-vs-Businness-critical-applications-whitepaper.pdf>.
Riyaz Ahemed Walikar. "Cross Site Port Attacks - XSPA - Part 1". 2012-11-07. <http://www.riyazwalikar.com/2012/11/cross-site-port-attacks-xspa-part-1.html>.
Riyaz Ahemed Walikar. "Cross Site Port Attacks - XSPA - Part 2". 2012-11-13. <http://www.riyazwalikar.com/2012/11/cross-site-port-attacks-xspa-part-2.html>.
Riyaz Ahemed Walikar. "Cross Site Port Attacks - XSPA - Part 3". 2012-11-14. <http://www.riyazwalikar.com/2012/11/cross-site-port-attacks-xspa-part-3.html>.
Vladimir Vorontsov and Alexander Golovko. "SSRF attacks and sockets: smorgasbord of vulnerabilities". <http://www.slideshare.net/d0znpp/ssrf-attacks-and-sockets-smorgasbord-of-vulnerabilities>.
Deral Heiland. "Web Portals: Gateway To Information, Or A Hole In Our Perimeter Defenses". February 2008. <http://www.shmoocon.org/2008/presentations/Web%20portals,%20gateway%20to%20information.ppt>.
+ Content History
Submissions
Submission DateSubmitterOrganizationSource
2013-02-17MITREInternal CWE Team
Page Last Updated: July 30, 2014