zoukankan      html  css  js  c++  java
  • xss挑战赛小记 0x01(xsstest)

    0x00

    今天在先知社区看到了一个xss挑战赛

    结果发现比赛已经结束 服务器也关了

    百度找了个xss挑战赛来玩一下

    正好印证下xss的学习---

    地址     http://test.xss.tv/

    ps:写的时候 有些关过不去 发现了一个心路历程和我很相似的wp

      默默点了关注

      留一个他的链接  http://www.cnblogs.com/r00tuser/p/7407459.html

    0x01

    参数是name 直接试了一下<script>alert(1)</script>

    发现过了

    0x02

    随便输111发现有两个xss的点

    第一个点做了防护第二个点没有

     就加个"> 闭合前面的标签就好了 

    0x03

    同样有两个点 但是两个点都做了防护 被转化为实体标签了

    虽然<>不能用 但是是在标签里面 用事件应该能过

    就用onmouseover这个事件 然后闭合前面的属性

    ' onmouseover='alert(1)

    当然用其他的事件oninput onselect等等也行

    0x04

    这一关只是把需要闭合的从单引号变成了双引号

    用上面同样的姿势..换成双引号就可以过。。

    0x05

    用刚刚的姿势试了一下

    发现他把on转化为o_n

    这样就用不了事件了。。。但是script没有被转

    插入标签试试

    "> <a href="javascript:alert(1)">1</a>

    点击1  弹框

    0x06

    这一关就发现href被转化为hr_ef了...

    script data action src confirm都被转化了

    但是name code poster background还是幸存

    弄了很久都没找到可以用的东西

    想想试一下大小写和编码。。。发现大写可以绕过..混写也行

    "><SCRIPT>alert(1)</SCRIPT>   (alert大写就弹不了)

    0x07

    发现script和on这样的被直接替换为空了

    猜测是replace这样的一次替换

    双写发现过了

    0x08

    同样有两个点 过滤略有不同

    主要看链接这个点

    仍然过滤了on script src href " 等 而且大写也会被转化为小写

    但是<> ' img 几个都没被过滤

    因为第二个点输入的参数在href标签里面

    很容易想到伪协议javascript:alert(1)

    script的绕过是个问题。。%00 &Tab; 试过了还是不行

    最后去找了下别人的wp 发现可以用%09过  (url里为%09 就是tab)

    javas%09cript:alert(1)

    0x09

    这一关就完全get不到点了。。一直显示不合法的链接

    试了一些方法都不行,只有去看下wp

    发现wp上说这道题的意思是会自动检测url  

    不带http://的内容就会显示不合法。。觉得自己的思路真是太僵了

    用http://输入试了一下发现果然不会显示不合法

    但是仍然过滤了一些东西  可以利用上一关的payload

    javas%09cript:alert('http://')  这样就可以过了

    wp里的payload是利用注释

    javas%09cript:alert(1)//http://

    0x10

    一看没有显示的东西

    源码里发现三个隐藏的input

    测试了一下发现前两个都没用  但是第三个sort有显示

    把属性变成text就可以显示了

    t_sort=" onmouseover="alert(1)" type="text"  这样就可以了

    0x11

    相比10多了一个ref

    但是还是只有sort有显示 但是做了过滤

    想到referer...抓个包看一下

    在包里面添加一个referer发现参数能被显示出来

    Referer:11111" onmouseover="alert(1)" type="text 这样就过了

    0x12

    在源码里又发现了User-Agent的输出

    同样修改一下

    User-Agent:11111" onmouseover="alert(1)" type="text

    同样的payload过了

    0x13

    同样看到了cook联想到cookie

    应该跟前面两题一样的尿性

    Cookie参数同样也可以输出  修改一下就行

    Cookie: user=11111" onmouseover="alert(1)" type="text

    0x14

    这一关需要访问的网站无法连接了

    就做不了这道题目了

    看了wp是一个图片exif  xss

    在图片详细信息中插入xss代码可以弹

    0x15

    通过14的链接直接看第15关  

    发现有个参数src= 

    查看源码可见src参数传递到ng-include 查了一下发现是一个外部包含指令

    具体了解可参考这篇文章

    http://blog.csdn.net/u011127019/article/details/53666528

    想到了包含前面的弹框

    ng-include中包含的script标签中的命令不会执行

    src='http://test.xss.tv/level1.php?name=111<img src=123 onerror=alert(1)>'

    这样就可以弹了

    0x16

    keyword这个点下 script 空格 被转为空格占位符 &nbsp;

    在之前看到的文章里想到了用换行符和tab

    但是tab同样会被转化为空格占位符

    只能用换行符 %0d %0a

    <img%0Dsrc="1"%0Donerror="alert(1)">

    0x17

    这道题有个flash..一开始觉得很难

    试探性的改了下参数再看源码发现会输出

    就直接试试

    前面没有" 就不用闭合前面的

    发现"会被转  就换成单引号

     onmouseover='alert(1)'

    前面有个空格为了和前面的隔开

    0x18

    还是一样的参数

    一样的payload可以过

    0x19

    这一关的src参数用双引号包裹起来了

    但是如果输出双引号去闭合会被转成实体符号

    所以参数一定在src之中

    去看wp他说是flash xss

    没有接触过这个也不懂。。

    0x20

    同19

    0xX0

    入门的基础学习。。

    xss还是挺有意思的

  • 相关阅读:
    Python进阶08 生成器
    Python进阶07 迭代
    Python进阶06 列表推导
    Python进阶05 函数property
    Python基础14 集合
    支付宝支付和微信消息推送
    Redis
    django之contenttype
    数据分析系列
    IPython
  • 原文地址:https://www.cnblogs.com/slpawn/p/7460604.html
Copyright © 2011-2022 走看看