XSS漏洞

目录

一.XSS漏洞概述

1.原理

2.分类

3.危害

 二.pikachu靶场练习

1.反射型XSS

2.存储型XSS

3.DOM型XSS

三.XSS测试网站

Ma Spaghet!

Jefff

Ugandan Knuckles

Ricardo Milos

Ah That's Hawt

Ligma

Mafia

Ok, Boomer


一.XSS漏洞概述

XSS漏洞,全称跨站脚本(Cross Site Scripting),是一种常见的Web应用程序安全漏洞。它允许攻击者在受害者的浏览器中注入恶意脚本,当受害者访问包含这些恶意脚本的网页时,攻击者就可以利用这些脚本执行任意代码,从而进行恶意活动。

1.原理

XSS漏洞的形成主要原因是服务器对用户提交的数据过滤不严,导致浏览器将用户的输入当作javascript代码直接执行。攻击者通过向Web页面插入恶意代码,当管理员或用户访问时,恶意脚本会触发并执行,从而达到攻击者的目的。

2.分类

(1)反射型XSS(中低危):这种攻击方式往往具有一次性,攻击者通常通过电子邮件等方式将包含XSS代码的恶意链接发送给目标用户。
(2)存储型XSS(高危):常见于论坛,留言等交互性强的功能中,恶意脚本被永久的保存在服务器端的数据库或文件中,可以被多次执行,对多个用户造成威胁。
(3)DOM型XSS(中低危):攻击者通过修改网页的DOM结构来注入恶意脚本

3.危害
  • 盗取各种用户账号
  • 窃取用户资料,比如劫持用户cookie,冒充用户身份进入网站
  • 执行弹窗广告
  • 传播蠕虫病毒
  • 挂马(水坑攻击)
  • 有局限性的键盘记录

 二.pikachu靶场练习

1.反射型XSS

在输入框中输入zhangsan,得到下图

然后根据源代码提示输入kobe

输入弹窗的代码来测试是否存在XSS漏洞
(要修改input的长度限制)
点击提交就会出现弹窗

因此就存在XSS漏洞;当再次刷新界面时,将不会有弹窗,是因为反射型XSS只会执行一次。

2.存储型XSS


同理,在输入框中输入弹窗代码,会显示弹窗

当再次刷新界面时,仍然会出现弹窗

3.DOM型XSS

继续输入弹窗代码,发现输入的内容被放到a标签的href属性中

根据SQL注入的思想,将a标签闭合

'</a><script>alert(1)</script><a>

三.XSS测试网站

XSS Game - Learning XSS Made Simple! | Created by PwnFunction

Ma Spaghet!


innerHTML禁用了<script>alert()</script>标签,因此使用img

Jefff

给jeff一个值,将值传递给ma


闭合ma 即可

Ugandan Knuckles

这里过滤了尖括号,也就不能使用script标签,使用onfocus和autofocus通过获取焦点再自动获取焦点,触发代码

Ricardo Milos


传给ricardo一个值,通过submit提交,经过2s把传入的值传给ricardo,其中action是伪协议

Ah That's Hawt


这里将() \ 等符号进行了过滤,对符号进行了编码,因此使用location转为字符串即可

Ligma

这里过滤大小写和数字,解法为编码,使用jsfuck工具

再进行url编码后传给balls即可

Mafia

限制了传参的最大长度以及过滤一些符号,函数;可以使用构造函数

Function构造了ALERT(1337)的函数,使用source调用函数的源码,对ALERT(1337)进行转换小写的操作即可绕过限制条件

Ok, Boomer

这里有过滤框架DOMPurify,会把危险属性过滤掉,但是在定时函数中的ok,源码中没有关于ok的定义,因此可以使用DOM破坏

这里经过源码处理后,把href中的内容作为字符串传递给ok,输入后发现没有弹出1337,是因为javascript是DOMPurify框架的黑名单,把javascript换为白名单即可

  • 16
    点赞
  • 15
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值