当用户搜索页面时,我将?q = [searchterm]添加到我的URL并输出如下内容:

Your search result for <CFOUTPUT>#htmleditformat(URL.q)#</CFOUTPUT>:

前段时间我读到htmleditformat()是不够的,XSS仍然可以执行(例如,如果有人发送链接到受害者,如http://example.com/?q= [ htmleditformat() ])。

我还将URL.q保存到数据库(在这种情况下我使用ORM):

<CFSET myobject.setKeyword(URL.q) />

但是现在我已经开始讨论如何安全地将用户数据输出到浏览器。

===============>>#1 票数:3 已采纳

您还可以使用此处描述的xmlFormat() 它比htmlEditFormat()转义的字符数多,例如单引号和159-255范围内的高位ASCII字符。

如果您想要更多控制,可以直接使用Javas StringEscapeUtils

  ask by Seybsen translate from so

未解决问题?本站智能推荐:

关注微信公众号