ServiceStack元数据页面上的链接是否应该编码?

时间:2017-10-17 00:34:10

标签: servicestack owasp

我们使用的扫描工具报告了安全问题。它监控GET /metadataServiceStack.Metadata.IndexOperationsControl.Render()内的响应,并报告未经验证或编码的响应。具体来说,抱怨URL。以下是它关注的片段:

<h3>Plugin Links:</h3><ul><li><a href="https://mysitedomain/swagger-ui/">Swagger UI</a></li></ul> </div> <p>&nbsp;</p>

我可能会夸大其词。看起来问题是最终,ServiceStack调用System.Web.UI.HtmlTextWriter.Write()而不是System.Web.UI.HtmlTextWriter.WriteEncodedText()来插入链接

            var pluginLinks = metadata != null && metadata.PluginLinks.Count > 0
            ? new ListTemplate
            {
                Title = metadata.PluginLinksTitle,
                ListItemsMap = ToAbsoluteUrls(metadata.PluginLinks),
                ListItemTemplate = @"<li><a href=""{0}"">{1}</a></li>"
            }.ToString()
            : "";

URL应该在这里编码吗?

1 个答案:

答案 0 :(得分:1)

没有安全问题,元数据页面上的链接是由编译时静态知道的插件定义的,即它们从不嵌入未知的用户定义链接。