gna*_*ian 4 javascript xss coldfusion cfwheels antisamy
所以我目前正在使用CF11和CFWheels 1.1,"全局脚本保护"(GSP)服务器功能在覆盖XSS基础方面做得非常糟糕.我想扩展它以阻止JS的任何和所有标签/向量插入到数据库中.
CF11通过getSafeHTML()函数提供antiSamy保护,该函数应用application.cfc中指定的xml策略文件,但我仍然需要修改应用程序中的每个varchar cfqueryparam才能正确使用它?
有没有办法让CF11以与GSP功能类似的方式启用反侦察功能服务器或应用程序?我的意思是GSP会自动从提交给应用程序的输入中删除标签,而无需修改所有查询/表单操作.我想以同样的方式应用反歧义策略文件或getSafeHTML().
谢谢!
你为什么要把它应用到每个人身上?您只需要为字符串(varchar)输入执行此操作,并且仅在插入时执行此操作.即便如此,你也不会到处使用它.例如,如果你要求我的名字和生物,你没有理由想要我的名字中的html,甚至是"好"的HTML.所以我相信你已经在那里使用了一些东西来逃避所有的HTML或者只是将它全部删除.只有像bio这样的字段才能使用getSafeHTML.
验证是有效的.您(通常)不希望"一次性"解决方案imo.只要咬紧牙关就行了.
如果您确实想这样做,可以使用onRequestStart自动处理表单和URL范围内的所有键.这是由内存写的,所以它可能有拼写错误,但这是一个例子:
function onRequestStart(string req) {
for(var key in form) { form[key] = getSafeHTML(form[key]); }
for(var key in url) { url[key] = getSafeHTML(url[key]); }
}
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
432 次 |
| 最近记录: |