【问题标题】:Security violation - Fortify, MVC安全违规 - Fortify、MVC
【发布时间】:2015-03-26 09:05:18
【问题描述】:

我正在使用 HP Fortify 来解决我的应用程序中的安全问题。 我有一段代码如下,Fortify 会抛出错误。

强化结果显示:

fileName.cs 中的方法 DownloadAttachment() 包括 unvalidated lineNo 行的 HTTP 响应标头中的数据。这使得攻击 例如缓存中毒、跨站点脚本、跨用户篡改、 页面劫持、cookie 操作或打开重定向。

代码 -

    public ActionResult DownloadAttachment(string fullFilePath)
    {
        var bytes = System.IO.File.ReadAllBytes(fullFilePath);
        return File(bytes, MimeMapping.GetMimeMapping(fullFilePath), Path.GetFileName(fullFilePath));
    }

这里的威胁是什么以及如何解决这个问题?有什么建议吗?

【问题讨论】:

    标签: asp.net-mvc fortify


    【解决方案1】:

    HP 是对的,这是一个问题,但不是他们所说的那样——这里的威胁是您有一个操作方法,可以加载 Web 服务器可以读取的任何文件并让访问者下载它。这很容易导致其他攻击,具体取决于某人下载的内容和您的网络设置。

    您需要做的是更仔细地处理附件,而不是太笼统地处理附件 - 例如,这可能只是将文件名作为参数并查看给定的文件夹。

    【讨论】:

    • 我不排除响应头中毒漏洞。但你是对的,这种方法的设计比标头中毒问题更大。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2019-01-09
    • 2011-07-06
    • 2012-03-29
    相关资源
    最近更新 更多