Skip to content

Commit 01a149f

Browse files
committed
v1.18.1 update - SSRF categories
To align the Templates repo with the updates mentioned in VRT Issue 496 - bugcrowd/vulnerability-rating-taxonomy#496
1 parent 6dde08a commit 01a149f

26 files changed

Lines changed: 154 additions & 24 deletions

File tree

submissions/description/server_security_misconfiguration/server_side_request_forgery_ssrf/external_dns_query_only/recommendations.md

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -2,9 +2,9 @@
22

33
There is no single technique to stop SSRF from occurring. However, implementing the right combination of defensive measures within the application will prevent and limit the impact of SSRF. Some best practices include the following:
44

5-
- Within the application layer, use allow lists for input validation
6-
- Within the network layer, apply segregation principles to limit the network access of the application to only areas of the network it needs to connect to
7-
- Validate any external domain or IP address that the application attempts send a request to
5+
- Within the application layer, use allow lists for input validation that include permitted hostnames, IP addresses, or URL schemes that the application is expected to interact with.
6+
- Within the network layer, apply segregation principles to limit the network access of the application to only areas of the network it needs to connect to.
7+
- Validate any external domain or IP address that the application attempts send a request to.
88
- Display generic error handling messages to the client when an error occurs, and for all error types. E.g. When invalid data is received and when a request fails server-side.
99

1010
For more information, refer to the following resources:

submissions/description/server_security_misconfiguration/server_side_request_forgery_ssrf/external_low_impact/guidance.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -2,6 +2,6 @@
22

33
Provide a step-by-step walkthrough with a screenshot on how you exploited the vulnerability. Your submission must include evidence of the vulnerability and not be theoretical in nature.
44

5-
For this type of SSRF, the best evidence is usually a screenshot of incoming requests, and a summary of the data that was exfiltrated through exploitation.
5+
For this type of SSRF, the best evidence is usually a screenshot of incoming requests, and a summary of the data that was exfiltrated through exploitation. Include a screenshot of the HTTP listener log showing an incoming request from the target server's IP address. Show the submitted payload and the captured request headers.
66

77
Where possible and safe, escalate the SSRF to have some kind of tangible security impact, such as exfiltrating data. If this is possible, provide a full Proof of Concept (PoC). If no impact can be demonstrated other than receiving external interactions, this will most likely be considered as P5/informational severity.

submissions/description/server_security_misconfiguration/server_side_request_forgery_ssrf/external_low_impact/recommendations.md

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -2,9 +2,9 @@
22

33
TThere is no single technique to stop SSRF from occurring. However, implementing the right combination of defensive measures within the application will prevent and limit the impact of SSRF. Some best practices include the following:
44

5-
- Within the application layer, use allow lists for input validation
6-
- Within the network layer, apply segregation principles to limit the network access of the application to only areas of the network it needs to connect to
7-
- Validate any external domain or IP address that the application attempts send a request to
5+
- Within the application layer, use allow lists for input validation that include permitted hostnames, IP addresses, or URL schemes that the application is expected to interact with.
6+
- Within the network layer, apply segregation principles to limit the network access of the application to only areas of the network it needs to connect to.
7+
- Validate any external domain or IP address that the application attempts send a request to.
88
- Display generic error handling messages to the client when an error occurs, and for all error types. E.g. When invalid data is received and when a request fails server-side.
99

1010
For more information, refer to the following resources:

submissions/description/server_security_misconfiguration/server_side_request_forgery_ssrf/external_low_impact/template.md

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,8 +1,8 @@
1-
Server-side request forgery (SSRF) is a vulnerability that exploits the trust relationship between a server and an application, or other backend systems. An attacker can take advantage of this trust to forge server-side traffic and make HTTP requests to external domains. An external SSRF vulnerability was found in this application which allows an attacker to query external services from the application.
1+
Server-side request forgery (SSRF) is a vulnerability that exploits the trust relationship between a server and an application, or other backend systems. An attacker can take advantage of this trust to forge server-side traffic and make HTTP requests to an external, attacker controlled domain. An external SSRF vulnerability was found in this application which allows an attacker to query external services from the application and observe server-side request headers, IP address, and user-agent information.
22

33
**Business Impact**
44

5-
External SSRF can lead to data theft and through an attacker accessing, deleting, or modifying data from within the application via their access to server-side systems. This could also result in reputational damage for the business through the impact to customers’ trust. The severity of the impact to the business is dependent on the sensitivity of the data being stored in, and transmitted by the application.
5+
While no internal data is directly exposed, this information may assist in identifying the hosting environment and planning further attacks. This could result in reputational damage for the business through the impact to customers’ trust. The severity of the impact to the business is dependent on the sensitivity of the data being stored in, and transmitted by the application.
66

77
**Steps to Reproduce**
88

submissions/description/server_security_misconfiguration/server_side_request_forgery_ssrf/internal_high_impact/.gitkeep renamed to submissions/description/server_security_misconfiguration/server_side_request_forgery_ssrf/internal_data_exposure/.gitkeep

File renamed without changes.

submissions/description/server_security_misconfiguration/server_side_request_forgery_ssrf/internal_scan_and_or_medium_impact/guidance.md renamed to submissions/description/server_security_misconfiguration/server_side_request_forgery_ssrf/internal_data_exposure/guidance.md

File renamed without changes.

submissions/description/server_security_misconfiguration/server_side_request_forgery_ssrf/internal_high_impact/recommendations.md renamed to submissions/description/server_security_misconfiguration/server_side_request_forgery_ssrf/internal_data_exposure/recommendations.md

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -2,9 +2,9 @@
22

33
There is no single technique to stop SSRF from occurring. However, implementing the right combination of defensive measures within the application will prevent and limit the impact of SSRF. Some best practices include the following:
44

5-
- Within the application layer, use allow lists for input validation
6-
- Within the network layer, apply segregation principles to limit the network access of the application to only areas of the network it needs to connect to
7-
- Validate any external domain or IP address that the application attempts send a request to
5+
- Within the application layer, use allow lists for input validation that include permitted hostnames, IP addresses, or URL schemes that the application is expected to interact with.
6+
- Within the network layer, apply segregation principles to limit the network access of the application to only areas of the network it needs to connect to.
7+
- Validate any external domain or IP address that the application attempts send a request to.
88
- Display generic error handling messages to the client when an error occurs, and for all error types. E.g. When invalid data is received and when a request fails server-side.
99

1010
For more information, refer to the following resources:

submissions/description/server_security_misconfiguration/server_side_request_forgery_ssrf/internal_high_impact/template.md renamed to submissions/description/server_security_misconfiguration/server_side_request_forgery_ssrf/internal_data_exposure/template.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,4 @@
1-
Server-side request forgery (SSRF) is a vulnerability that exploits the trust relationship between a server and an application, or other backend systems. An attacker can take advantage of this trust to forge server-side traffic and make HTTP requests to internal domains. A SSRF vulnerability was found in this application which allows an attacker to perform a request to an internally networked resource, which is considered high impact.
1+
Server-side request forgery (SSRF) is a vulnerability that exploits the trust relationship between a server and an application, or other backend systems. An attacker can take advantage of this trust to forge server-side traffic and make HTTP requests to internal domains that are not accessible from the internet. A SSRF vulnerability was found in this application which allows an attacker to read data from internal services such as internal API responses, application configuration, or content from internal web interfaces. While the exposed data does not include authentication secrets or credentials, it may contain business data, internal documentation, user records, or system configuration details.
22

33
**Business Impact**
44

submissions/description/server_security_misconfiguration/server_side_request_forgery_ssrf/internal_scan_and_or_medium_impact/.gitkeep renamed to submissions/description/server_security_misconfiguration/server_side_request_forgery_ssrf/internal_exposure_presence_data_secrets/.gitkeep

File renamed without changes.
Lines changed: 7 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,7 @@
1+
# Guidance
2+
3+
Provide a step-by-step walkthrough with a screenshot on how you exploited the vulnerability. Your submission must include evidence of the vulnerability and not be theoretical in nature.
4+
5+
For this type of SSRF, the best evidence is usually a screenshot of incoming requests, and a summary of the data that was exfiltrated through exploitation. Include screenshots or HTTP responses showing distinguishable server behaviour for existing and non-existing internal resources. Show at least two requests with different responses that confirm resource presence without revealing secret values.
6+
7+
Where possible and safe, escalate the SSRF to have some kind of tangible security impact, such as exfiltrating data. If this is possible, provide a full Proof of Concept (PoC). If no impact can be demonstrated other than receiving external interactions, this will most likely be considered as P5/informational severity.

0 commit comments

Comments
 (0)