Jam*_*ler 3 coldfusion owasp esapi coldfusion-2016
我有一些旧的 ColdFusion 代码。它最初是为 CF9 编写的,但现在在 CF 2016 上运行。
应用程序.cfc
local.esapi = createObject("java", "org.owasp.esapi.ESAPI");
application.esapiEncoder = local.esapi.encoder()
Run Code Online (Sandbox Code Playgroud)
很久以后
常规页面
form.Reason = application.esapiEncoder.encodeForHtml(form.Reason);
Run Code Online (Sandbox Code Playgroud)
我正在考虑用
form.Reason = encodeForHTML(form.Reason);
Run Code Online (Sandbox Code Playgroud)
这些功能一样吗?
是的,这些encodeForX()函数在幕后使用了 OWASP 的 ESAPI。encodeForHTML()是 CF10+ 并有一个canonicalize参数,它将输入降低到其最低因子。CF2016 向标签添加了一个encodeFor参数,cfoutput用于输出类似的功能。还有一个canonicalize()函数会抛出一个你可以捕捉到的错误。这对于查看是否有人试图在您的表单或站点中抛出恶意输入很有用。我想不出对输入进行双重或多重编码的合法理由,我会将其解释为攻击。中的论点encodeForX()函数会将其归结为基本评估,但它不会引发错误,而只会返回结果输出。就我个人而言,我不确定是否有很多偶然的方式来传递一个将通过规范化获取的值,我宁愿抓住该尝试并将该用户踢出我的网站。
https://www.owasp.org/index.php/Category:Encoding
| 归档时间: |
|
| 查看次数: |
223 次 |
| 最近记录: |