• 练习链接

  • http://google-gruyere.appspot.com/

  • 点开是纯英文的 直接点翻译即可

  

  • 一 .part1

    http://google-gruyere.appspot.com/part1

    看下 使用介绍:Using Gruyere

    按照主页上的“所有代码段”链接查看其他用户的代码段。 还要看看他们的主页设置为什么。
    注册一个帐户供自己在黑客使用时使用。 您的Gruyere帐户不要使用与您使用任何实际服务相同的密码。
    填写您的帐户的个人资料,包括一个私人片段和一个将显示您的名字的图标。
    创建一个包含你喜欢的笑话的片段(通过“新片段”)。
    上传文件(通过“上传”)到您的帐户。
    这涵盖了格鲁耶尔提供的基本功能。 现在让我们来打破它们!

    第一阶段没有什么营养 就是正常熟悉一个网站的业务

    二 第二阶段 Cross-Site Scripting (XSS)

    第二阶段就是熟悉XSS

    no.1 文件上传xss  找到文件上传的地方

    直接上传一个HTML,然后在我们的HTML里面加入相应的弹cookie的JS代码即可 然后上传

    

  • no.2 反射型 XSS

    测试样例 直接在URL后  这是直接在URL后面输入的反射型XSS

    全是<> 检查是否过滤

    /%3e%3c
    /%253e%253c
    /%c0%be%c0%bc
    /%26gt;%26lt;
    /%26amp;gt;%26amp;lt;
    /\074\x3c\u003c\x3C\u003C\X3C\U003C
    /+ADw-+AD4-

    这会尝试>和<以许多不同的方式,可能能够通过网址,并得到不正确的渲染使用:逐字(URL%-encoding),双%编码,错误的UTF-8编码,HTML和编码,双 编码和C风格编码的几种不同的变化。 查看结果来源,看看是否有任何工作。 (注意:在URL中输入> <与%3e%3c是一样的,因为浏览器会自动%编码这些字符,如果你想要一个literal或者>,那么你需要使用curl这样的工具来发送 URL中的那些字符)

    最终结果直接访问URL:
    http://google-gruyere.appspot.com/618797293401537791985845103200180401152/%3Cscript%3Ealert(document.cookie)%3C/script%3E 成功弹窗


  • No.3 留言处的存储XSS

    留言的框处有XSS 点击New Snippet 直接输入paload

    " ><img src=x onerror =prompt(1)> <" OK 
    


  • NO.4 html via 属性中的存储XSS

    也可以通过向HTML属性注入值来执行XSS。 通过设置配置文件中的颜色值来注入脚本。
    在profile配置界面的颜色属性输入payload即可 成功弹窗

    red' onload='alert(3)' onmouseover='alert(4)

  • Internet Explorer的动态CSS属性(又名CSS表达式)使这种攻击特别容易。
    expression(alert(1))

    NO.5 ajax属性中的存储XSS( 失败)

    To exploit, Put this in your snippet:
    all "

    • (alert(1),"")
    • "your base

    no.6 ajax中的反射XSS

    直接在分段的uid中直接插入XSS即可 uid是一个AJAX参数

  • 首先,确保你了解问题。
    只要有可能,请通过模板功能进行清理,而不是在源代码中调用转义函数。这样,所有的转义都在一个地方完成,您的产品可以受益于为模板系统设计的安全技术,以验证其正确性或实际上为您逃脱。另外,请熟悉模板系统的其他安全功能。
    采用与XSS相关的良好测试规范。
    不要写你自己的模板库:)

谷歌在线appspot平台教你学Hacker(由浅如深)-XSS篇的更多相关文章

  1. jQuery Text-to-Speech 谷歌在线语音

    <!DOCTYPE html> <html> <head> <meta content="text/html; charset=utf-8" ...

  2. python解析谷歌在线表格链接,转化为数组形式,图片转化为链接

    在线表格已成为趋势,传统的表格导入导出已经不能满足现在企业的发展. 必须支持在线表格的导入,只需要输入在线表格的链接,就能将数据读取出来. 而且相比相传表格,能够将图片信息一块读取.在线表格中的图片也 ...

  3. 小白学数据分析--聚类分析理论之K-means理论篇

    小白学数据分析--聚类分析理论之K-means理论篇 聚类分析是一类广泛被应用的分析方法,其算法众多,目前像SAS.Splus.SPSS.SPSS Modeler等分析工具均以支持聚类分析,但是如何使 ...

  4. 跟我一起学.NetCore之MVC过滤器,这篇看完走路可以仰着头走

    前言 MVC过滤器在之前Asp.Net的时候就已经广泛使用啦,不管是面试还是工作,总有一个考点或是需求涉及到,可以毫不疑问的说,这个技术点是非常重要的: 在之前参与的面试中,得知很多小伙伴只知道有一两 ...

  5. 一步一步学EF系列【4、升级篇 实体与数据库的映射】live writer真坑,第4次补发

    前言 之前的几篇文章,被推荐到首页后,又被博客园下了,原因内容太少,那我要写多点呢,还是就按照这种频率进行写呢?本身我的意图这个系列就是想已最简单最容易理解的方式进行,每篇内容也不要太多,这样初学者容 ...

  6. 【小白学C#】浅谈.NET中的IL代码

    一.前言 前几天群里有位水友提问:”C#中,当一个方法所传入的参数是一个静态字段的时候,程序是直接到静态字段拿数据还是从复制的函数栈中拿数据“.其实很明显,这和方法参数的传递方式有关,如果是引用传递的 ...

  7. 一步一步学EF系列【5、升级篇 实体与数据库的映射】live writer真坑,第4次补发

    前言 之前的几篇文章,被推荐到首页后,又被博客园下了,原因内容太少,那我要写多点呢,还是就按照这种频率进行写呢?本身我的意图这个系列就是想已最简单最容易理解的方式进行,每篇内容也不要太多,这样初学者容 ...

  8. 阿里云学生机——Mysql配置---教小白入门篇

    首先,我的学生机默认配置为:CentOS 7.2 64位 + Tomcat 8 + Jdk8 + MySQL5.7.16 扩展:Linux 如何查看 MySQL 版本号----使用命令 mysql - ...

  9. Flutter 即学即用系列博客总结篇

    前言 迟到的总结篇,其实大家看我之前发的系列博客最后一篇,发文时间是 3 月 29 日.距离现在快两个月了. 主要是因为有很多事情在忙,所以这篇就耽搁了. 今天终于可以跟大家会面了. 系列博客背景 F ...

随机推荐

  1. [Objective-C语言教程]数字(13)

    在Objective-C编程语言中,要以对象形式保存基本数据类型,如:int,float,bool.Objective-C提供了一系列与NSNumber一起使用的方法,一些常用重要的方法列在下表中. ...

  2. Azure自定义角色实现RBAC

    简要说明: 当前Azure Portal上只能针对订阅或具体某一资源,实现访问控制,也就是对某一具体资源实现访问/使用/删除,但无法实现创建.例如:当前的需求为,新添加用户只具有对CDN服务的管理使用 ...

  3. 关于在iOS应用中跳转到AppStore

    1.获取app 在AppStore上的网址 eg: NSString * appURLStr = @"https://itunes.apple.com/cn/app/shi-ke-zu-qi ...

  4. java使用freemarker导出复杂的excel表格

    正常导出excel表格使用的poi,但是导出复杂的excel有点困难,但是可以使用freemaker模板来导出复杂的excel. 1.都是先生成一个Excel表格的模板,最好是增加一行数据.具体看图里 ...

  5. 读《3M 利率分析新框架》

    目录 读<3M 利率分析新框架> 前言 传统的利率研究框架 3M 利率研究新框架 Macro Monetary Macro Prudence 总结 参考文献 <3M 利率分析新框架& ...

  6. postgres常用命令

    1.登录 psql -U pname -d database  // pname 表示postgres的登录用户名,database 则表示要访问的数据库 2.查看所有的数据库 \l 3.查看所有的表 ...

  7. 动手玩转Docker(一)

    在学习docker之前,先了解一下什么是docker,以及docker技术存在的意义. Docker是PaaS供应商dotCloud开源的一个基于LXC 的高级容器引擎,源代码托管在 GitHub 上 ...

  8. iptables开放所有端口

    iptables -P INPUT ACCEPT iptables -P OUTPUT ACCEPT

  9. requests库的使用

     requests库的使用 pip快速安装 pip install requests 请求方法 每一个请求方法都有一个对应的API,比如GET请求就可以使用get()方法: import reques ...

  10. Git服务器搭建笔记

    前言:最近公司要使用git服务器对Android4.4的源码进行版本控制,所以花了些时间在Ubuntu14.04上搭建了git服务器,正好前段时间也学习了下git的使用哈哈 ------------- ...