• 练习链接

  • 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. shell中tr的用法

    转自http://blog.csdn.net/zhuying_linux/article/details/6825568 tr(translate缩写)主要用于删除文件中的控制字符,或进行字符转换.语 ...

  2. linux 内核知识参考

    内存映像 kcore:http://blog.csdn.net/dog250/article/details/5303663 elf文件 :http://www.cnblogs.com/xmphoen ...

  3. TX2 内核编译

    准备工作 版本:jetpack3.1,R28.1,TX2 虚拟机:ubuntu14.04 参考文档.编译工具链.源码下载 编译 主要步骤记载如下: export CROSS_COMPILE=<c ...

  4. JAVA数据结构--哈希表的实现(分离链接法)

    哈希表(散列)的定义 散列表(Hash table,也叫哈希表),是根据关键码值(Key value)而直接进行访问的数据结构.也就是说,它通过把关键码值映射到表中一个位置来访问记录,以加快查找的速度 ...

  5. 论文阅读 | FCOS: Fully Convolutional One-Stage Object Detection

    论文阅读——FCOS: Fully Convolutional One-Stage Object Detection 概述 目前anchor-free大热,从DenseBoxes到CornerNet. ...

  6. 本地DataGrip连接阿里云MySQL

    1.阿里云上开通MySQL端口 2.MySQL上的设置 1⃣️mysql -uroot -p2⃣️create user 'usrabc'@'%' identified by 'usrabc'; 3. ...

  7. AMPQ 0-9-1学习笔记

    AMQP 0-9-1学习笔记 AMQP(Advanced Message Queuing Protocol)高级消息队列协议:是一个进程间传递异步消息的网络协议 2. AMQP的基本模型: Publi ...

  8. c# 线程,同步,锁

    最近在阅读<c#高级编程> 这本书.记录一下关于锁的使用 大致分为三种方法: 方法1:使用 lock 方法2:使用 Interlocked 方法3:使用 Monitor using Sys ...

  9. redis中算法之——MurmurHash2算法

    MurmurHash算法由Austin Appleby发明于2008年,是一种非加密hash算法,适用于基于hash查找的场景.murmurhash最新版本是MurMurHash3,支持32位,64位 ...

  10. Js写九宫格抽奖

    国庆出去转了一圈,回来及时把以前写的一些有用的在这儿记录一下 --------------------------------------------我是分割线-------------------- ...