强化命令注入问题

时间:2019-10-30 06:11:38

标签: c# code-injection fortify

我正在为一个c#项目进行强化扫描,并且在下面的代码部分中遇到一个问题

            if (this.UserInfo != null && this.Emp != null)
            {
                ProcessStartInfo pInfo = new ProcessStartInfo(this.Emp.ResetURL + HttpUtility.UrlEncode(Token));
                pInfo.CreateNoWindow = false;
                Process.Start(pInfo);
            }

在线获取命令注入漏洞问题

 ProcessStartInfo pInfo = new ProcessStartInfo(this.Emp.ResetURL + HttpUtility.UrlEncode(Token));

我做了一些研究并更新了如下代码

        string fileName = (this.Emp.ResetURL + HttpUtility.UrlEncode(Token));
            if (fileName == null || !Regex.IsMatch(fileName, "^[a-zA-Z]+$"))
            {
                return ;
            }
            ProcessStartInfo pInfo = new ProcessStartInfo(fileName);
            pInfo.CreateNoWindow = false;
            Process.Start(pInfo);

但是问题仍然存在。

我提到了一些链接https://rules.sonarsource.com/csharp/tag/injection/RSPEC-2076?search=commandhttps://dotnet-security-guard.github.io/SG0001.htm

我尝试了许多与上述类似的操作,但仍然没有任何变化。有人可以帮助我们解决此问题。预先感谢。

0 个答案:

没有答案