我正在使用HP Fortify来解决我的应用程序中的安全问题。下面有一段代码,Fortify会抛出一个错误。
Fortify结果显示:
DownloadAttachment()方法在fileName.cs中将未经验证的数据包含在行lineNo的HTTP响应头中。这使攻击,如缓存中毒,跨站点脚本,跨用户污损,页面劫持,曲奇操作或开放重定向。
密码-
public ActionResult DownloadAttachment(string fullFilePath)
{
var bytes = System.IO.File.ReadAllBytes(fullFilePath);
return File(bytes, MimeMapping.GetMimeMapping(fullFilePath), Path.GetFileName(fullFilePath));
}这里的威胁是什么,如何解决这一问题?有什么建议吗?
发布于 2015-01-27 16:59:54
惠普是对的,这是一个问题,但不是他们所说的那样--这里的威胁是,你有一种操作方法,可以加载web服务器可以读取的任何文件,并让访问者下载它。这很容易导致其他攻击,这取决于下载的内容和您的网络设置。
您需要做的是更小心地处理附件,而不是一般地处理附件--这可能只是将文件名作为参数,并查看给定的文件夹。
https://stackoverflow.com/questions/28175747
复制相似问题