内联事件属性PHP值转义📅 2026-03-02  |  👁 4797 次浏览

onerror/onclick等双引号HTML属性里嵌PHP值时必须过e()。裸json_encode输出的引号会提前终止属性,JS泄漏成可见文本。

正确写法

onerror="this.outerHTML='' + ().toUpperCase() + ''"

错误写法

裸json_encode()输出的引号会提前终止双引号属性,后面的JS泄漏成页面可见文本(hao123模板我的常用翻过车)。json_encode只能用于script标签体。

  • 双引号HTML属性里嵌PHP值必须过e()
  • e()把引号转成"浏览器解码回JS
  • json_encode只能用于script标签体
  • 参考hao123模板的修复写法

芒阳网络团域cms开发中心

Copyright © 2023 刀客CMS内容管理系统