32 lines
529 B
Plaintext
Raw Normal View History

include::../description.adoc[]
== Noncompliant Code Example
----
const request = require('request');
function ssrf(req, res) {
  const url = req.query.url;
  request(url, callback); // Noncompliant
}
----
== Compliant Solution
Validate the url with an allowlist:
----
const request = require('request'); 
function ssrf(req, res) {
  const url = req.query.url;
  if(url.startsWith("https://www.trustedwebsite.com/route/?query=")) {
    request(url, callback); // Compliant
  }
}
----
include::../see.adoc[]