
本文共 1313 字,大约阅读时间需要 4 分钟。
上一篇博客:
目录
- Shellcode的调用
- XSS防御
- 输入过滤
- 输出编码
- beef XSS神器
- 浏览器劫持
- Cookie欺骗
- 利用浏览器漏洞getshell
- XSS平台
开始
一、Shellcode的调用
Shellcode就是在利用漏洞所执行的代码
完整的XSS攻击,会将Shellcode存放在一定的地方,然后触发漏洞,调用Shellcode
就是完成XSS攻击,需要有一个地方存放XSS代码
-
反射型XSS存在参数和变量
-
存储型的XSS存在数据库中(对方服务器)
Shellcode就是把XSS代码存在另一个服务器,然后远程调用,通过http协议远程加载脚本
1.1远程调用JS
先准备一个文件XSS.js
链接为互联网上任意一台存放XSS.js
的主机的地址
需要外面加上脚本
实现从外部文件引入JS代码


1.2windows.location.hash
location.hash会获取浏览器框中的URL地址

1.3XSSDownloader
把XSS代码写在一个公网网页中,然后通过AJAX请求下载网页内容,提取获取代码执行
通过AJAX下载器打开一个URL地址,然后发送http请求

解决办法,跨域访问
1.4备选存储技术
二、XSS的防御
一般使用XSS过滤器使用XSS Filter
XSS Filter 的作用是过滤用户(客户端)提交的有害信息,从而达到防范XSS攻击的效果
2.1输入过滤
- 输入验证
- 数据消毒
2.2输出编码
HTML 编码主要是用对应的HTML 实体代替字符
2.3黑白名单
2.4防御DOM-XSS
避免客户端文档重写、重定向或其他敏感操作
三、Beef-XSS神器
XSS漏洞的利用平台,集成在kali系统中
工具目录/usr/share/beef-xss/
配置文件config.yaml
启动beef工具
beef-xss
./beef
启动之前需要修改默认的密码

Web界面管理控制台http://x.x.x.x:3000/ui/panel

Shellcode探针http://x.x.x.x:3000/hook.js
测试页面http://x.x.x.x:3000/demos/butcher/index.html
只要靶机访问上面两个页面,就会在beef中上线,完成浏览器劫持
举栗
浏览器劫持
在目标网站留言板插入目标脚本,Shellcode的调用http://x.x.x.x:3000/hook.js
等待管理员查看留言,等待靶机上线
然后进行浏览器劫持,获取Cookie等信息
Cookie欺骗

然后document.cookie = "xxx"
进入网站后台
利用浏览器漏洞getshell
打开msf

使用模块
重定向
XSS平台
XSS盲打:不知道漏洞是否存在,见到输入框就插入脚本测试
xsspt.com 开源的平台
使用
-
创建项目
-
配置模块
-
生成的项目代码、脚本链接
-
链接插入到靶机留言板
-
获取靶机Cookie信息
参考:B站千峰
发表评论
最新留言
关于作者
