首页 > 解决方案 > 在 ExtJs 的 CellEditing 插件中,如果我们放入安全字符串,那么它会执行

问题描述

在 ExtJs(ExtJs 3.1) 的 CellEditing 插件中,如果我们像><img src=0 onerror=alert(99)>在任何单元格中一样放置安全字符串,那么它就会执行(将显示警报)。我们可以使用任何 beforeEdit 或 Validateedit 或编辑事件来防止这种情况发生吗?

在此处输入图像描述

标签: extjssecurity-testing

解决方案


您需要阻止在输入中执行脚本。为此,您需要对输入单元格的内容进行消毒。您可以验证按键事件或更改事件的编辑。但是,如果您在更改事件中使用它,那么即使在初始加载时也会触发它。您可以使用正则表达式来查找脚本标记,一旦找到就可以提醒用户或重置输入字段的值。


推荐阅读