当前位置: 首页 > 知识库问答 >
问题:

ESAPI编码在UI上提供不同的输出

后化
2023-03-14

我正在尝试实现ESAPI编码以防止在我的spring-mvc项目中进行XSS攻击。我的方法是在发送回响应中的输入之前,我将使用 ESAPI.encoder() 对其进行编码,以便在页面响应中对输入属性进行编码。

我的假设是,当我返回编码的响应时,在我的页面响应中,我将得到编码的字符,而在我的输入字段中,我会得到普通的字符,但我的输入域也设置了编码的字符。

下面是我在发送响应之前在控制器中编写的示例代码。

model.addAttribute("input", setValue(ESAPI.encoder().encodeForHTMLAttribute(getInput())));
return "reports/salaryreport";

我希望浏览器能够自动解码这些编码字符并显示原始输入,而它总是在输入字段中显示修改/编码的值。

是我在这里做错了什么,还是我的预期不正确?

谢谢是预付款。

共有1个答案

景星光
2023-03-14

您正在将ESAPI编码的值传递给某种web框架。

我的钱是浏览器收到相当于NZIC123

我测试了< code>NZIC123

调用< code > model . add attribute()可能已经提供了属性编码,您得到的行为是因为它对ESAPI提供的&符号进行了编码。

 类似资料:
  • 现在,我有下面的代码,它只是测试标准库中的< code>std::set_difference: 当我用Clang/GCC编译它时,我得到了输出: 更新我想实际使用的源代码案例(假设是我将要做的一些操作。因此,这些操作将按的顺序发生): 好吧,这看起来不错,它实际上对应于标准::set_difference,检查链接:但是当我选择MSVC时,我得到了不同的输出(检查链接:https://godbo

  • 为了防止SQL注入,OWASP对接收到的字符进行编码。下面是为org.owasp.esapi.codecs.OracleCodec.java类实现的代码 以上对预防SQL注入有什么帮助?请解释一下。

  • 我的要求是既不显示相机预览,也不使用图像捕捉相机的意图。 在那里,我找到了一种适用于我的第一台测试设备(Galaxy tab 7)的方法。 我的功能如下所示 和< code>getCameraID功能如下 现在我面临着在不同设备上成功运行上述代码的困难。 三星Galaxy S(2.3.6):前置摄像头始终返回绿色图像,但编码后置摄像头工作正常。 三星Galaxy Nexus (4.1):编码不适用

  • 在其他一些论坛中,提到使用HTML消毒剂。什么是正确的方法,请…

  • 所以我有一个带有shell_exec命令的index.php文件,当我在ubuntu的终端上运行它时,它工作得很好,但是当上传到命名堆托管时,它就不工作了。 http://www.logh.info/这里是网站,是的,我100%确定的路径,以该网站。sh文件是正确的

  • 问题内容: 我正在使用Json Result来显示表,当我显示结果时它工作正常。现在,我想为其添加排序功能,因此我使用了canSort:true属性。但是现在,每当我单击表的标题进行排序时,我都会在浏览器中获得下面的编码字符串,似乎它也已排序,但是对它进行了某种编码,如下所示。 我知道下面的代码可能存在一些不一致之处,因为我不得不删除版权问题的实际列。 JavaScript代码 问题答案: 在AS