• XSS挑战之旅闯关笔记


    环境自己搭建~~好嚣张:

        

    1.http://127.0.0.1:8024/xss/level1.php?name=test  这是URL 看到后面name有参数传递,不多想直接尝试xss。

          没有任何过滤。

           payload :http://127.0.0.1:8024/xss/level1.php?name=<script>alert('xss')</script>

        

    2.http://127.0.0.1:8024/xss/level2.php?keyword=test   和上题差不多的URL 直接换参数

        

        发现没有成功,那就只有看源代码了。看看做了什么过滤之类的

          

        发现payload在value中没有生效,构造payload  :  " > <script>alert('xss')</script> id="  使用(">)把前面的闭合 然后在后面可以加一个空id  或者payload : " > <script>alert('xss')</script> // 最后加//把后面的双引号注释掉即可。:

            或者使用payload : " onclick=alert(1) id="  然后点击一下文本框也可以

            

    3.直接在文本框输出尝试,发现不能成功。然后查看源代码:

          

          直接构造payload :单引号闭合 ,使用on事件。  payload:' onclick=alert(1) //    这里对<>做了过滤。

            

    4. 直接插入尝试,失败。查看源代码:

          

          发现对<>没有了 做了转译。直接构造payload :" onclick=alert(1) //

            

            或者使用 onmouseover 函数 ,payload : "  onmouseover=alert(1) //

                 

    5. 直接插入尝试,失败。查看源代码:

              

              出来双引号还过滤了 script  变成了 scr_ipt  。使用on事件尝试,发现也过滤了on事件, on 变成了 o_n。 

              这里利用Javascript伪协议 直接构造payload:" > <a href=javascript:alert(1)> // 

                  

    6.<script>尝试 ,查看源代码:

            

            出来双引号还过滤了 script  变成了 scr_ipt  。使用on事件尝试,发现也过滤了on事件, on 变成了 o_n。 使用Javascript伪协议 发现  href 变成了 hr_ef 。src 也过滤了。

            构造payload 尝试绕过,大小写。payload: " Onclick=alert(1) //

               

     7..<script>尝试 ,查看源代码:

             

            直接把script 给过滤了。尝试双写绕过。payload: "> <scrscriptipt>alert(1)</scrscriptipt>

              

    8.直接构造简单payload 进行尝试。发现没有任何反应,查看源代码:

          

          发现2个输出点,之前的实验也有2个输出点,不过好尝试没有细说。这里不好绕过。

           第一个输出点,<>给编码转换了。然后进行不带<>的payload尝试,还有一些绕过,发现没有成功。直接尝试第二个输出点。

           第二个输出点,直接看到 href 直接想到JavaScript 伪协议 尝试。

            

            发现也被过滤 javascript变成javascr_ipt ,尝试大小写绕过,发现不可行。然后想到tab绕过。

             构造payload:javascr  ipt:alert(1)     tab制表符 %09   发下可以绕过。

                

         

    9.见框就插,构造payload。查看源代码

            

            发现也有2个输出点。在第一个输出点构造payload。各种payload都显示链接不合法。  href 属性的值可以是任何有效文档的相对或绝对 URL,包括片段标识符和 JavaScript 代码段,猜想是否必须有 超文本传输协议http:// ,然后进行尝试。

            

            发现猜想正确,没有返回链接不合法。然后与JavaScript 相结合, 构造payload: javascript=alert(1)//http://    第一个//是为了注释掉后面的http://

              

    10. 发现没有文本框可以插入,但是url有参数传递。直接简单payload测试。发现没有任何反应。

           

  • 相关阅读:
    【Solr】copy字段的应用
    【Solr】Solr的安装部署
    【UEditor】 UEditor整合项目上传资源到阿里云服务器
    【Bootstrap】Bootstrap和Java分页-第二篇
    【Bootstrap】Bootstrap和Java分页-第一篇
    工作那点小事
    ubuntu安装mongodb
    mybatis插入返回主键
    linux查看端口占用命令
    ubuntu安装ssh
  • 原文地址:https://www.cnblogs.com/pangya/p/8981980.html
Copyright © 2020-2023  润新知