coldfusion - 规范化 CF9 的替代品

标签 coldfusion coldfusion-9 cfml canonicalization

我有一个在 CF2016 上运行的应用程序。我们最近添加了 Canonicalize() 和一些其他功能来防止 xss 攻击。使用此应用程序的大多数客户都在 CF2016 上,但有几个在 CF9 上(明年左右会升级) 代码失败,因为 CF9 中没有这样的函数。有很多方法可以处理它,但如果我必须去编写一个自定义的 Canonicalize 函数,我该如何使用原生 CF9 函数对输入进行编码?

最佳答案

我刚才问了一个反方向的问题。请参阅:ColdFusion doing OWASP esapi via Java

规范化是通过 OWASP ESAPI 完成的。首先创建一个 java 对象。它具有所有的编码功能

local.esapi = createObject("java", "org.owasp.esapi.ESAPI");
application.esapiEncoder = local.esapi.encoder();

稍后你可以

myVariable = application.esapiEncoder.canonicalize(myVariable);

有关 org.owasp.ESAPI.encoder() 附带的所有函数的完整列表,请参阅:https://static.javadoc.io/org.owasp.esapi/esapi/2.0.1/org/owasp/esapi/Encoder.html

关于coldfusion - 规范化 CF9 的替代品,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/58878975/

相关文章:

java - 在 ColdFusion 中以编程方式验证邮件服务器连接

coldfusion - 检查 session 是否仍然存在

java - 在我的 Flex 应用程序中获取数据的最佳方式是什么?

coldfusion - 理解 cflush 的行为

sql - 如何在 CFQUERY 中使用两个数据源?

coldfusion - 我可以在ColdFusion中按索引获取查询吗?

coldfusion - 无法从 cfinvoke 语句中找到组件

coldfusion - ColdFusion 会自动生成基本的 HTML 标签吗?

coldfusion - ImageNew toBase64 编码问题与 ColdFusion 中的质量损失