攻击与威胁
点击劫持 (Clickjacking)
别称: UI 重叠攻击
定义
通过把目标页面叠加或隐藏在攻击者控制的页面之内,诱导用户点击与所见不符的目标的 UI 欺骗攻击。
点击劫持把敏感页面(账号设置、OAuth 授权、支付确认等)以 iframe 嵌入恶意站点中,并通过透明度、精心设计的 CSS 叠加层、定位等手法掩饰它。用户以为在与可见页面交互,实际上点击、触摸或拖拽都被传递到隐藏的 iframe 中,从而在其已认证的会话里执行操作。变种包括光标劫持、拖放攻击和双击劫持等。防御措施需要在目标页面上实施服务器端控制:设置 X-Frame-Options 或更推荐的 Content-Security-Policy 中的 frame-ancestors 指令,对敏感操作要求用户额外确认,并使用 SameSite Cookie 限制跨上下文状态。
示例
- 页面上显示"点击此处赢取大奖",但按钮上方覆盖着指向社交网络分享授权对话框的透明 iframe。
- 像素级精确的叠加层诱使用户点击攻击者应用的 OAuth 授权页面上的"批准"按钮。
相关术语
标签页伪装攻击 (Tabnabbing)
后台或新打开的浏览器标签页静默改写自身,伪装成可信的登录页面,等待用户切回时再输入凭据的攻击。
跨站脚本(XSS)
一种 Web 漏洞,攻击者可在其他用户浏览的页面中注入恶意脚本,使其在受害者浏览器中以该站点的来源身份运行。
跨站请求伪造(CSRF)
一种 Web 攻击,迫使已认证用户的浏览器向存在漏洞的站点发送非预期请求,在用户毫不知情的情况下执行状态变更操作。
Open Redirect
Open Redirect — definition coming soon.
Content Security Policy (CSP)
Content Security Policy (CSP) — definition coming soon.
SameSite Cookie
SameSite Cookie — definition coming soon.