Сканирование Veracode обнаружило ошибку SSRF в webAPI.Как решить проблему? - PullRequest
0 голосов
/ 27 сентября 2019

WebAPI был отсканирован с использованием veracode, и в следующем методе класса был обнаружен недостаток SSRF

public static class APIHelper
{
    public static string CallAPIPost(string identifier,string email, string token)
    {
        string result = "";
        string apiURL = string.Empty;
        switch (identifier)
        {
            case "url1": apiURL = VerifiedUrl.url1.Replace("{0}", email);
                break;
         }
          using (var client = new HttpClient())
        {
            if (!string.IsNullOrEmpty(token))
                client.DefaultRequestHeaders.Add("Authorization", token);
            client.BaseAddress = new Uri(WebConfigurationManager.AppSettings["OtherAPI"]);
            client.DefaultRequestHeaders.Accept.Clear();
            client.DefaultRequestHeaders.Accept.Add(new 
            MediaTypeWithQualityHeaderValue("application/json"));

             var response = client.PostAsync(apiURL, null).Result;//This line is throwing SSRF flaw
        }
     }
 }

public static class VerifiedUrl
{
    public const string url1 = "api/controller/action/{email}"
}
...