2.7K Star 16K Fork 3.6K

GVPLayui / layui

 / 详情

layui <=2.74 table渲染不正确使用templet会导致存储xss

已完成
创建于  
2023-12-05 19:03

议题条件

  • 我确认已查看官方使用文档:https://layui.dev ,但没有找到相关解决方案。
  • 我确认已在 Issues 中搜索过类似的问题,但没有找到相关解决方案。

版本号

layui<=2.74

浏览器

114.0.5735.199

问题类型

疑是 BUG

问题描述

当layui小于2.75版本如果用户使用该templet 进行数据渲染会导致xss

输入图片说明
输入图片说明

业务代码

  if(item3.edit) attr.push('data-edit="'+ item3.edit +'"'); //是否允许单元格编辑
            if(item3.align) attr.push('align="'+ item3.align +'"'); //对齐方式
            if(item3.templet) attr.push('data-content="'+ content +'"'); //自定义模板
            if(item3.toolbar) attr.push('data-off="true"'); //行工具列关闭单元格事件
            if(item3.event) attr.push('lay-event="'+ item3.event +'"'); //自定义事件
            if(item3.style) attr.push('style="'+ item3.style +'"'); //自定义样式
            if(item3.minWidth) attr.push('data-minwidth="'+ item3.minWidth +'"'); //单元格最小宽度
            return attr.join(' ');

截图补充

演示地址

友好承诺

  • 我承诺将本着相互尊重、理解和友善的态度进行交流,共同维护 Layui 良好的社区氛围。

评论 (1)

keanu 创建了任务

为什么不升级到最新版?2.7.6或2.8、2.9都行啊 (https://layui.dev/)
而且现在的正确用法应该是 {{= d.experience }} 才对 (https://layui.dev/docs/2/laytpl/#grammar)

贤心 任务状态待办的 修改为已完成

登录 后才可以发表评论

状态
负责人
里程碑
Pull Requests
关联的 Pull Requests 被合并后可能会关闭此 issue
分支
开始日期   -   截止日期
-
置顶选项
优先级
参与者(2)
JavaScript
1
https://gitee.com/layui/layui.git
git@gitee.com:layui/layui.git
layui
layui
layui

搜索帮助