谷歌在线appspot平台教你学Hacker(由浅如深)-XSS篇
练习链接
- 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代码即可 然后上传
上传一个html 里面包含
<script>alert(document.cookie)</script>
上传后地址是
https://google-gruyere.appspot.com/618797293401537791985845103200180401152/admin/test.html

然后访问成功弹出

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篇的更多相关文章
- jQuery Text-to-Speech 谷歌在线语音
<!DOCTYPE html> <html> <head> <meta content="text/html; charset=utf-8" ...
- python解析谷歌在线表格链接,转化为数组形式,图片转化为链接
在线表格已成为趋势,传统的表格导入导出已经不能满足现在企业的发展. 必须支持在线表格的导入,只需要输入在线表格的链接,就能将数据读取出来. 而且相比相传表格,能够将图片信息一块读取.在线表格中的图片也 ...
- 小白学数据分析--聚类分析理论之K-means理论篇
小白学数据分析--聚类分析理论之K-means理论篇 聚类分析是一类广泛被应用的分析方法,其算法众多,目前像SAS.Splus.SPSS.SPSS Modeler等分析工具均以支持聚类分析,但是如何使 ...
- 跟我一起学.NetCore之MVC过滤器,这篇看完走路可以仰着头走
前言 MVC过滤器在之前Asp.Net的时候就已经广泛使用啦,不管是面试还是工作,总有一个考点或是需求涉及到,可以毫不疑问的说,这个技术点是非常重要的: 在之前参与的面试中,得知很多小伙伴只知道有一两 ...
- 一步一步学EF系列【4、升级篇 实体与数据库的映射】live writer真坑,第4次补发
前言 之前的几篇文章,被推荐到首页后,又被博客园下了,原因内容太少,那我要写多点呢,还是就按照这种频率进行写呢?本身我的意图这个系列就是想已最简单最容易理解的方式进行,每篇内容也不要太多,这样初学者容 ...
- 【小白学C#】浅谈.NET中的IL代码
一.前言 前几天群里有位水友提问:”C#中,当一个方法所传入的参数是一个静态字段的时候,程序是直接到静态字段拿数据还是从复制的函数栈中拿数据“.其实很明显,这和方法参数的传递方式有关,如果是引用传递的 ...
- 一步一步学EF系列【5、升级篇 实体与数据库的映射】live writer真坑,第4次补发
前言 之前的几篇文章,被推荐到首页后,又被博客园下了,原因内容太少,那我要写多点呢,还是就按照这种频率进行写呢?本身我的意图这个系列就是想已最简单最容易理解的方式进行,每篇内容也不要太多,这样初学者容 ...
- 阿里云学生机——Mysql配置---教小白入门篇
首先,我的学生机默认配置为:CentOS 7.2 64位 + Tomcat 8 + Jdk8 + MySQL5.7.16 扩展:Linux 如何查看 MySQL 版本号----使用命令 mysql - ...
- Flutter 即学即用系列博客总结篇
前言 迟到的总结篇,其实大家看我之前发的系列博客最后一篇,发文时间是 3 月 29 日.距离现在快两个月了. 主要是因为有很多事情在忙,所以这篇就耽搁了. 今天终于可以跟大家会面了. 系列博客背景 F ...
随机推荐
- OCP换考题了,052新考题及答案整理-第17题
17.Which two statements are true about tablespaces? A) A database can contain multiple undo tablespa ...
- “全栈2019”Java第六十六章:抽象类与接口详细对比
难度 初级 学习时间 10分钟 适合人群 零基础 开发语言 Java 开发环境 JDK v11 IntelliJ IDEA v2018.3 文章原文链接 "全栈2019"Java第 ...
- 动手玩转Docker(一)
在学习docker之前,先了解一下什么是docker,以及docker技术存在的意义. Docker是PaaS供应商dotCloud开源的一个基于LXC 的高级容器引擎,源代码托管在 GitHub 上 ...
- MySQL:管理MySQL、事务(三)
干货: 命令行程序mysql实际上是MySQL客户端,真正的MySQL服务器程序是mysqld,在后台运行. 数据库事务具有ACID特性,用来保证多条SQL的全部执行. 五.MySQL 通过mysql ...
- angular5新增全局的模块
比如新增一个全局的swiper,需要在webpack中配置: 之后在代码中就可以用了
- 使用python requests库写接口自动化测试--记录学习过程中遇到的坑(1)
一直听说python requests库对于接口自动化测试特别合适,但由于自身代码基础薄弱,一直没有实践: 这次赶上公司项目需要,同事小伙伴们一起学习写接口自动化脚本,听起来特别给力,赶紧实践一把: ...
- git遇到的常见错误整理
远程仓库与本地代码不一致 解决: git pull --rebase git@gitee.com:l544402029/MUTAO.git 将仓库里的代码pull下来 ,然后重新进行git add ...
- pandas中获取数据框的行、列数
获取数据框的行.列数 # 获取行数 df.shape[0] # 获取行数 len(df) # 获取列数 df.shape[1]
- FastDFS安装、配置、部署(一)-安装和部署 (转)
FastDFS是一个开源的,高性能的的分布式文件系统,他主要的功能包括:文件存储,同步和访问,设计基于高可用和负载均衡,FastDFS非常适用于基于文件服务的站点,例如图片分享和视频分享网站 Fast ...
- PHP设置时区
<?php//设置默认的时区date_default_timezone_set('Asia/Shanghai');//输出1396193923对应的日期echo date("Y-m-d ...