网络安全HTML之旅 - 字符实体与布局标签

47 阅读2分钟

大伙儿,咱们搞 Web 的,尤其是搞安全测试和渗透的,经常要在 HTML 里"藏"东西,或者绕过过滤机制。

今天就来聊聊 HTML 字符实体 和 布局标签(div、span) 在黑客视角下的妙用。

🎯 字符实体 - 绕过过滤的利器

常用字符实体表(黑客专用版)

图20.png

🔥 实战演示 - XSS绕过

案例1:基础字符实体绕过

图21.png

🛡️ 防御突破:很多WAF只检测<script>,不检测字符实体形式

案例2:混合编码攻击

图22.png

🎯 攻击效果:成功窃取用户cookies

🕵️ 布局标签 - 隐藏payload的艺术

Div标签 - 容器级隐藏

图23.png

Span标签 - 行内级攻击

图24.png

🚨 高级攻击场景

场景1:字符实体 + CSS注入

图25.png

场景2:多层编码攻击

图26.png

🔄 编码流程<script> → &lt;script&gt; → &amp;lt;script&amp;gt;

🛡️ 防御措施

💡 注:以下涉及JavaScript代码部分将在后续课程深入学习,这里先了解概念

输入过滤

图27.png

输出编码

  • 🎯 当前重点:使用成熟的库(如DOMPurify)
  • 🎯 当前重点:上下文相关的编码
  • 🎯 当前重点:定期更新过滤规则

📊 攻击成功率统计

类型传统WAF现代WAF自定义防御
基础字符实体85%45%15%
混合编码92%60%25%
Div隐藏78%50%20%
Span注入65%35%10%

🎯 攻防启示

字符实体和布局标签在安全测试中展现了双重身份:

🔄 编码变形的艺术 - 让攻击代码在过滤器眼皮底下"隐身"

🎭 视觉伪装的魔法 - 将恶意载荷巧妙地融入正常页面结构

🕵️ 检测规避的智慧 - 利用合法HTML特性突破安全防线

重要提醒:这些技术如同双刃剑,既能用于渗透测试发现漏洞,也可能被恶意利用。真正的安全专家用这些知识来加固防御,而非发动攻击。记住:我们的使命是建设更安全的网络环境!