赞
踩
点击劫持是指在一个Web页面下隐藏了一个透明的iframe(opacity:0),用外层假页面诱导用户点击,实际上是在隐藏的frame上触发了点击事件进行一些用户不知情的操作
将iframe页面透明度调至最透明,将看不到iframe页面
但其实页面是这样的
在登录页面输入其实内容被输入到了iframe页面
代码
burp抓包,查看是否有X-Frame-Options;若有证明无点击劫持
X-Frame-Options HTTP 响应头是用来给浏览器指示允许一个页面可否在 < frame >, < /iframe > 或者 < object > 中展现的标记
网站可以使用此功能,来确保自己网站的内容没有被嵌套到别人的网站中去,也从而避免了点击劫持的攻击
X-Frame-Options三个参数:
DENY 表示该页面不允许在frame中展示,即便是在相同域名的页面中嵌套也不允许
SAMEORIGIN 表示该页面可以在相同域名页面的frame中展示
ALLOW-FROM uri 表示该页面可以在指定来源的frame中展示
换一句话说,如果设置为DENY,不光在别人的网站frame嵌入时会无法加载,在同域名页面中同样会无法加载
另一方面,如果设置为SAMEORIGIN,那么页面就可以在同域名页面的frame中嵌套
正常情况下我们通常使用SAMEORIGIN参数
JS代码:
if (top.location !== window.location){
top.location == window.location
}
X-FRAME-OPTIONS 防止内嵌
服务器端可设置HTTP头 "X-Frame-Options:DENY"来让浏览器主动禁止iframe内嵌
不过这种方式在HTTP中不可靠,黑客可以窃听篡改HTTP请求来修改HTTP头。
对于Firefox的用户,使用 NoScript 扩展
NoScript 能够在一定程度上检测和阻止点击劫持攻击。
其他辅助手段
如XSS和CSRF的防御方法,也可以防御点击劫持后对服务器端的攻击
雪碧可乐_2020/7/23_22:49
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。