我正在处理的代码库已被Checkmarx分析,它返回了一个包含“存储的XSS”问题的报告。该问题指出:
方法GetHomepageFilterByLocaleHomepageRepo.cs从数据库中获取Select元素的数据。然后,此元素的值在没有经过适当过滤或编码的情况下流过代码,并最终在方法GetProductsByFilterType中显示给用户HomepageController.cs.这可能会启用存储跨站点脚本攻击。
是否有标准的推荐方法来解决此问题?
请参阅下面提到的两种方法的代码片段。
HomepageRepo.cs
public HomepageFilter GetHomepageFilterByLocale(int localeId)
{
return _context.HomepageFilter.SingleOrDefault(x => x.LocaleId == localeId);
}
主页控制器.cs
方法是调用存储库方法的位置。
[HttpGet]
public ActionResult GetProductsByFilterType(int locale, string filterType)
{
HomepageViewModel model = GetHomepageViewModel(locale, filterType);
if (model?.Products != null)
{
model.Products.ForEach(p => p.Name = HttpUtility.HtmlEncode(p.Name));
model.Products.ForEach(p => p.ImageUrl = HttpUtility.HtmlAttributeEncode(p.ImageUrl));
}
return Json(model, JsonRequestBehavior.AllowGet);
}
您应该查看漏洞流(查看漏洞时位于屏幕右侧),并了解此漏洞涉及哪些对象。
你也可以点击小问号('?'))位于漏洞名称的右侧。它应该会告诉你如何解决它。
最后,如果仍然遇到问题,可以单击查询查看器并预览查询的确切内容。
现在:根据我自己的经验,xss漏洞可以用HttpUtility轻松修复。HtmlEncode方法。
我在想这样的事情:
HttpUtility.HtmlEncode(_context.HomepageFilter.SingleOrDefault(x=
Checkmarx对代码进行了分析,并报告了以下问题: 第**行的方法Load_Bank从数据库中获取元素的数据。然后,该元素的值在未经正确过滤或编码的情况下流经代码,并最终在的第*行的方法中显示给用户。这可能会启用存储的跨站点脚本攻击。 以下是控制器代码 Checkmarx源: 目的地: 我想知道是否真的存在存储的XSS问题或检查玛克斯报告它是错误的? 如何解决Checkmarx问题?
我的Android应用项目使用检查玛克斯扫描源代码以查找安全问题。检查马克思报告了谷歌排球图书馆的问题。以下是错误说明: 方法performRequest位于\ app \ libraries \ valley \ src \ main \ Java \ com \ Android \ valley \ toolbox \ hurl stack . Java的第89行,用于获取getHeaders
Checkmarx在我的Controller类中为以下方法提供了XSS漏洞。具体来说:此元素的值(ResultsVO)随后在代码中流动,而没有经过适当的清理或验证,最终在方法中显示给用户: ResultsVO对象有很多String属性,我只是想知道是否有一种优雅的方法来编码它们以防止此漏洞。
Checkmarx扫描仪扫描“反射XSS所有客户端”。如何在JavaRESTAPI中解决这个问题? 本地运行了REST API服务的扫描。
如果Nacos项目的任何部分存在问题或文档问题,请通过opening an issue告诉我们。我们非常认真地对待错误和错误,在产品面前没有不重要的问题。不过在创建错误报告之前,请检查是否存在报告相同问题的issues。 为了使错误报告准确且易于理解,请尝试创建以下错误报告: 具体到细节。包括尽可能多的细节:哪个版本,什么环境,什么配置等。如果错误与运行Nacos服务器有关,请附加Nacos日志(
问题内容: 使用HTML发布的插件在Jenkins中发布范围报告,结果不会以正确的格式显示。 要解决此问题,请在脚本控制台中运行此命令,它可以正常运行: 詹金斯重新启动后,发生了同样的问题。在这种情况下,我必须每次都使用此代码。请指导我如何永久设置代码。 问题答案: 当您在脚本控制台中运行此类命令时,它们只会影响正在运行的会话,并且在重新启动并恢复为存储的设置/配置时会丢失。 根据您启动Jenki