pikachu的xss攻击

一.反射型xss(get)

1.  我们先输入“ ‘"<>6666 ” 用于测试我们的输入会不会被过滤掉,因为有特殊字符

pikachu的xss攻击

 2.输入一下<script>alert("xss")</script>,看是否被过滤,但是前端对长度有限制,修改后提交

pikachu的xss攻击

执行成功

二、反射型xss(post)

1.我们登录一下,默认账号密码是admin 123456

 pikachu的xss攻击

 pikachu的xss攻击

这里是以POST的方式提交的,参数内容不会出现在URL中

这时候我们不能直接把我们的恶意代码嵌入到URL中 

2.我们需要自己搭一个恶意站点,然后在网站上放一个post表单将存放POST表单的链接发送给受害者,

诱导受害者点击这个POST表单会自动向漏洞服务器提交一个POST请求

实现受害者帮我们提交POST请求的目的

我们需要修改里面 漏洞服务器 和 攻击者 的服务器地址

pikachu的xss攻击

 post.html页面的作用是:当用户访问这个页面时,会自动向漏洞服务器发送POST请求,然后重定向到漏洞服务器的index页面

我们只需要诱导受害者点击上面的链接就能窃取用户的Cookie

3.获取结果

pikachu的xss攻击

 三、储存型xss

1.

我们试着在皮卡丘平台上的XSS上留言,看看是否有什么过滤机制

pikachu的xss攻击

    我们发现我们的留言会一直存在,而且从表现上我们输入的内容直接输出了

2.构造html语句

<script>alert("xss")</script>

pikachu的xss攻击

成功

四、DOM型xss

1. 

下面我们在皮卡丘平台上的DOM型XSS上测试一下

pikachu的xss攻击    

输入图中的内容,观察到如下输出,发现和输入的内容有区别

pikachu的xss攻击

2.

下面通过观察页面源码

pikachu的xss攻击

    这里有段JS代码,它通过 getElementById 获取到了标签 Id 为 text的内容赋值给str

    然后又把 str 的内容通过字符串拼接的方式写到了 a 标签的 href 属性中,a标签会写到 Id 为 dom的 div 标签中

3.构造payload

#‘ onclick=alert("xss")>

pikachu的xss攻击

 成功弹窗

五、xss-x

1.观察源码

pikachu的xss攻击

 2.根据提示构造一下

pikachu的xss攻击

成功弹窗