Java StringEscapeUtils调用和JSP表单提交值问题
我正在从JSP文件中传递一些带有值的param,在此之前,我使用ApacheJava StringEscapeUtils调用和JSP表单提交值问题,java,jsp,xss,stringescapeutils,Java,Jsp,Xss,Stringescapeutils,我正在从JSP文件中传递一些带有值的param,在此之前,我使用ApacheStringEscapeUtils来避免使用param值执行任何XSS攻击脚本 例如,如果有人像这样插入值并获得访问权限 当这样的内容作为值传递时,跨脚本测试当前失败 site_locale=en_US%2F%3E%3Ciframe+src%3Djavascript%3Aalert%28116%29+ 当通过类似的测试时,盲SQL注入测试当前失败 isMgr=true%27+and+%27f%27%3D%27f%27%
StringEscapeUtils
来避免使用param值执行任何XSS攻击脚本
例如,如果有人像这样插入值并获得访问权限
当这样的内容作为值传递时,跨脚本测试当前失败
site_locale=en_US%2F%3E%3Ciframe+src%3Djavascript%3Aalert%28116%29+
当通过类似的测试时,盲SQL注入测试当前失败
isMgr=true%27+and+%27f%27%3D%27f%27%29+--+
我这里的问题是StringEscapeUtils.escapeHtml
是否将从上述类型的传递参数值中保存,或者我是否需要任何其他库
我还想确认我在JSP中调用StringEscapeUtils
的方式是否正确
<input type="hidden" name="site_locale" value= <%= StringEscapeUtils.escapeHtml(site_locale) %> >
谢谢你的指点
谢谢,试试这个
用于HTML表单编码的实用程序类
URLEncoder.encode(yoururlhere, "UTF-8")
类似的方式,我们有
java.net.URLDecoder.decode(yoururlhere, "UTF-8");