Web For Pentester靶场搭建 - XSS
Web For Pentester
是集成了一些简单的Web
常见漏洞的靶场,其中有常见的XSS 文件上传 SQL注入 文件包含
等常见漏洞,类似于DVWA
Web For Pentester搭建
Web For Pentester官方直接提供了一个ISO
的镜像文件
下载地址:https://www.pentesterlab.com/exercises/web_for_pentester/attachments
直接安装在VMware
即可使用
占用空间很小,改为桥接模式,给2G
空间,内存512MB
就可以,当然也可以更小
完成后进入虚拟机,直接输入ip a
,查看靶机IP地址为172.16.1.103
使用物理机浏览器访问靶机http://172.16.1.103
搭建完成
XSS Example 1
这里并没有显示源码,就是黑盒测试
,可以看到将name传参的内容使用hello + 传参内容
拼接输出到了页面
这使用<script>alert('xss')</script>
,进行弹窗测试
payload:http://172.16.1.103/xss/example1.php?name=<script>alert('xss')</script>
弹窗成功
XSS Example 2
直接使用<script>alert('xss')</script>
弹窗失败
由于看不到源码,猜测可能是将<script>
标签进行了过滤,尝试双写绕过<sc<script>ript>alert('xss')</sc</script>ript>
弹窗成功,也有可能只过滤了小写的script
标签,所以也可以进行大小写绕过
<SCRIPT>alert('xss')</SCRIPT>
弹窗成功
XSS Example 3
直接进行<sc<script>ript>alert('xss')</sc</script>ript>
双写绕过
弹窗成功
XSS Example 4
尝试<script>alert('xss')</script>
弹窗,发现返回error
猜测可能是黑名单,使用<script>和</script>
测试
很明显这里对<script>
标签进行了黑名单检测,使用<img>
标签进行测试
payload:<img src=1 onerror=alert('xss') />
使用img标签自动加载特性,请求1,由于加载错误,使用onerror
当错误时事情属性,执行alert弹窗
XSS Example 5
经过测试发现,将alert
进行了黑名单,但是并没有对<script>
进行黑名单
prompt绕过
使用prompt
进行弹窗
payload:<script>prompt('xss')</script>
弹窗成功
comfirm绕过
也可以使用comfirm
进行弹窗
payload:<script>confirm</script>
弹窗成功
String.fromCharCode Unicode编码绕过
也可以使用Unicode
编码进行绕过
javascrpt
中String.fromCharCode
方法可以将Unicode
转换为字符串
使用在线工具计算alert('xss')
的Unicode值,为97,108,101,114,116,40,39,120,115,115,39,41
payload:<script>eval(String.fromCharCode(97,108,101,114,116,40,39,120,115,115,39,41))</script>
弹窗成功
XSS Example 6
传入test进行测试
发现传参直接在<script>
中,所以我们需要响闭合SQL注入
语句一样闭合js
代码
payload:";alert('xss')//
,//
在js中是注释,;
代表js中一句代码的结束
弹窗成功
XSS Example 7
直接传入hacker
进行测试
所以与Example 6
关卡一样,不过是将"
改为了'
闭合的方式
payload:';alert('xss')//
弹窗成功
XSS Example 8
设置了一个输入框,直接进行弹窗测试
没有将<script>
标签进行解析为js,这里应该是将我们的标签进行了实例化
通过观察,action
为提交体质,method
为提交方式POST
action会从获取url
中的提交地址,那么我们直接在url中输入/">
就可以闭合form
标签
其中/
代表文件结束,"
闭合action
属性值,>
闭合form
标签
在后面紧跟<script>alert('xss')</script>
就可以执行弹窗
拼接payload:/"><select>alert('xss')</select>
观察源代码
弹窗成功
XSS Example 9
检查源代码进行分析
通过location.hash
直接获取url中#号
后面的内容,并且直接写入到了页面
所以直接传入<script>alert('xss')</script>
就可以弹窗
这里乱码,在网上查找大佬的教程,这里Chrome
和Firefox
都会对<>
进行编码,所以没有执行成功
在IE浏览器中测试成功
Web For Pentester靶场搭建 - XSS的更多相关文章
- Web For Pentester靶场(xss部分)
配置 官网:https://pentesterlab.com/ 下载地址:https://isos.pentesterlab.com/web_for_pentester_i386.iso 安装方法:虚 ...
- Web For Pentester 学习笔记 - XSS篇
XSS学习还是比较抽象,主要最近授权测的某基金里OA的XSS真的实在是太多了,感觉都可以做一个大合集了,加上最近看到大佬的博客,所以这里我也写一个简单的小靶场手册,顺带着也帮助自己把所有XSS的方式给 ...
- 【web安全】第三弹:web攻防平台pentester安装及XSS部分答案解析
web for pentester是国外安全研究者开发的的一款渗透测试平台,通过该平台你可以了解到常见的Web漏洞检测技术. 下载链接及文档说明: http://pentesterlab.com/ex ...
- 搭建DVWA Web渗透测试靶场
文章更新于:2020-04-13 按照惯例,需要的文件附上链接放在文首. 文件名:DVWA-1.9-2020.zip 文件大小:1.3 M 文件说明:这个是新版 v1.9 (其实是 v1.10开发版) ...
- Pentester中的XSS详解
本次做的是Web For Pentester靶机里面的XSS题目,一共有9道题目. 关于靶机搭建参考这篇文章:渗透测试靶机的搭建 第1题(无过滤措施) 首先在后面输入xss: http://10.21 ...
- web渗透漏洞靶场收集
最近将自己遇到过或者知道的web靶场链接奉上 0X01 DVWA 推荐新手首选靶场,配置简单,需下载phpstudy和靶场文件包,简单部署之后即可访问. 包含了常见的web漏洞(php的),每个漏洞分 ...
- 搭建XSS测试平台
XSS测试平台是测试XSS漏洞获取cookie并接收web页面的平台,XSS可以做js能做的所有事情,包括但不限于窃取cookie,后台增删文章.钓鱼.利用xss漏洞进行传播.修改网页代码.网站重定向 ...
- 搭建漏洞环境及实战——搭建XSS测试平台
XSS测试平台是测试XSS漏洞获取cookie并接收Web页面的平台,XSS可以做成JS能做的所有事,包括但不限于窃取cookie.后台增删文章.钓鱼.利用CSS漏洞进行传播.修改网页代码.网站重定向 ...
- 【渗透测试学习平台】 web for pentester -2.SQL注入
Example 1 字符类型的注入,无过滤 http://192.168.91.139/sqli/example1.php?name=root http://192.168.91.139/sqli/e ...
- 【渗透测试学习平台】 web for pentester -1.介绍与安装
web for pentester是国外安全研究者开发的的一款渗透测试平台,通过该平台你可以了解到常见的Web漏洞检测技术. 官网:https://www.pentesterlab.com 下载地址: ...
随机推荐
- Unity 复杂Json 解析
最近项目需要, 搞了一串嵌套非常多的Json 用LitJson读取体验不太好,上网查了一下发现NetwtonsoftJson ,十分好用 一句代码就可以了 JObject data = JsonCon ...
- 【批处理】启动 VMware 服务的简单批处理脚本
早些时候编写的一个启动VMware服务的简单批处理脚本. 主要是记录一下自动提升运行权限的命令,不用再右键"以管理员身份运行". @echo off mode con cols=9 ...
- Drone自动部署配置文件
.drone.yml 点击查看代码 kind: pipeline # 定义对象类型,还有secret和signature两种类型 type: docker # 定义流水线类型,还有kubernetes ...
- 转载--文章(感谢陈晨博主分享) 关于 Json.net
本文出自地址: http://www.cnblogs.com/freshman0216/p/4161800.html#undefined Newtonsoft.Json,一款.NET中开源的Json序 ...
- 启动anaconda的报错:There is an instance of anaconda navigator already running error
首先调出控制台(win+r,输入cmd),然后在控制台输入 tasklist | findstr "pythonw" 在显示出pythonw.exe后,找到其后面的pid(数字), ...
- Flink监控信息写入到PushGateway出现 java.io.IOException: Response code from http xx was 200问题
最近在将Flink的Metrics存储由InfluxDB迁移到Prometheus的时候,由于使用的版本问题,导致一直出现下面的WARN日志 2020-05-16 12:36:57.794 [Flin ...
- Luogu P3374 【模板】树状数组 1 [单点修改-区间查询]
P3374 [模板]树状数组 1 题目描述 如题,已知一个数列,你需要进行下面两种操作: 1.将某一个数加上x 2.求出某区间每一个数的和 输入输出格式 输入格式: 第一行包含两个整数N.M,分别表示 ...
- JDBC——连接SQL Server环境配置
JDBC:使用JAVA语言操作关系型数据库的API.是一套标准的接口. 步骤 1.创建工程,导入驱动jar包 2.注册驱动:Class.forName("com.mysql.jdbc.Dri ...
- Vue.js + TypeScript 项目构建
一:全局安装vue/cli npm install -g @vue/cli安装完成后检查版本vue --version 二:构建项目创建文件 vue create projectName 有的刚开始 ...
- #硬件 #资讯 #科普 #短报 SSD价格跳水根本停不下来!不断刷出新低
一份来自日本的统计显示,10~12月的初步统计显示,PC市场的指标产品中,256GB TLC颗粒SSD价格再次下跌2美元,现在只有29.5美元.这已经是该指标产品连续5个季度下跌,创下史上心底记录,同 ...