重庆分公司,新征程启航
为企业提供网站建设、域名注册、服务器等服务
1、什么是XSS
创新互联公司专业为企业提供潜山网站建设、潜山做网站、潜山网站设计、潜山网站制作等企业网站建设、网页设计与制作、潜山企业网站模板建站服务,十载潜山做网站经验,不只是建网站,更提供有价值的思路和整体网络服务。
XSS***全称跨站脚本***,XSS是一种在web应用中的计算机安全漏洞,它允许恶意web用户将代码植入到提供给其它用户使用的页面中。
XSS***分成两类:
(1)、一类是来自内部的***,主要指的是利用程序自身的漏洞,构造跨站语句。
(2)、另一类则是来自外部的***,主要指的自己构造XSS跨站漏洞网页或者寻找非目标机以外的有跨站漏洞的网页。
如当我们要***一个站点,我们自己构造一个有跨站漏洞的网页,然后构造跨站语句,通过结合其它技术,如社会工程学等,欺骗目标服务器的管理员打开。
XSS分为:存储型和反射型
存储型XSS:存储型XSS,持久化,代码是存储在服务器中的,如在个人信息或发表文章等地方,加入代码,如果没有过滤或过滤不严,那么这些代码将储存到服务器中。这种XSS比较危险,容易造成蠕虫,盗窃cookie(虽然还有种DOM型XSS 但是也还是包括在存储型XSS内)
反射型XSS:非持久化,需要欺骗用户自己去点击链接才能触发XSS代码(服务器中没有这样的页面和内容) 一般容易出现在搜索页面
开始我们的实验
Low级别
1、构造我们常用的payload:
获得弹框。不仅仅要做到***,分析一下原理
2、这里可以直接查看源码,点击右下角的view source。查看源码
源码里存在一个判断语句,arrary_key_exists()函数判断$_GET的值中是否存在“name”键名。并且$_GET[‘name’]的值是不是不为空,满足这些条件,直接输出下面的输出语句。
这串源码没有特别的地方,不存在其他处理函数,典型的xss可***源码。所以可以直接用我们的payload***
Medium级别
1、尝试用第一种方法,看看有什么不同
发现我们输入进去的标签被过滤掉了,猜测利用了什么过滤函数。既然它能够将这个标签过滤,我们就构造一个不用这个标签的payload试一试。
2、构造payload:。
解释:标签是添加一个图片,src,指定图片的url,onerror是指定加载图片时如果出现错误则要执行的事件
这里我们的图片url肯定是错误的,这个弹框事件也必定会执行
使用我们的payload***一下试一试。
发生了弹框,可以看出,后台处理的时候应该只过滤了
一样可以弹框,当然绕过的还有很多方式。
处理这样的paylaod的时候最好再在前面加一个strtolower()函数,将传递的name值得字符统统改为小写。这样就可以不管大小写都能逃不出去。(只针对这一个payload)
High级别
1、当我们输入带有