XSS基础

目录

XSS

1、简介

2、原理

3、分类

1、反射型(非持久型)

2、存储型(持久型)

3、DOM型(非持久型)

4、漏洞的危害

5、漏洞防御

1、对输入和URL参数进行过滤(白名单和黑名单)

2、HTML实体编码

3、对输出内容进行编码


XSS

1、简介

XSS全称:跨站脚本(Cross Site Scripting) ,为了不和层叠样式表(Cascading Style Sheets)的缩写CSS混合,所以改名为XSS;攻击者会向web页面(input表单、URL、留言版等位置)插入恶意JavaScript代码,导致管理员/用户访问时触发,从而达到攻击者的目的

2、原理

服务器对用户提交的数据过滤不严,导致浏览器把用户的输入当成了JS代码并直接返回给客户端执行,从而实现对客户端的攻击目的。

3、分类
1、反射型(非持久型)

反射型XSS,又称非持久型XSS,攻击相对于受害者而言是一次性的,具体表现在受害者点击了含有的恶意JavaScript脚本的url,恶意代码并没有保存在目标网站,而Web应用程序只是不加处理的把该恶意脚本"反射"回受害者的浏览器而使受害者的浏览器执行相应的脚本。

2、存储型(持久型)

存储型XSS是指应用程序通过Web请求获取不可信赖的数据,在未检验数据是否存在XSS代码的情况下,便将其存入数据库。当下一次从数据库中获取该数据时程序也未对其进行过滤,页面再次执行XSS代码持续攻击用户。存储型XSS漏洞大多出现在留言板、评论区,用户提交了包含XSS代码的留言到数据库,当目标用户查询留言时,那些留言的内容会从服务器解析之后加载出来。

3、DOM型(非持久型)

DOM,全称Document Object Model,是一个平台和语言都中立的接口,可以使程序和脚本能够动态访问和更新文档的内容、结构以及样式,DOM-XSS简单理解就是不与后台服务器产生数据交互,是一种通过DOM操作前端代码输出的时候产生的问题。

4、漏洞的危害

1.窃取用户Cookie 2.后台增删改文章 3.XSS钓鱼攻击 4.利用XSS漏洞进行传播和修改网页代码 5.XSS蠕虫攻击 6.网站重定向 7.获取键盘记录 8.获取用户信息等

5、漏洞防御
1、对输入和URL参数进行过滤(白名单和黑名单)

检查用户输入的数据中是否包含一些特殊字符,如<、>、'、"等,发现存在特殊字符,将这些特殊字符过滤或者编码。

2、HTML实体编码

字符串js编码转换成实体html编码的方法(防范XSS攻击)

复制代码
 https://www.cnblogs.com/dearxinli/p/5466286.html
3、对输出内容进行编码

在变量输出到HTML页面时,可以使用编码或转义的方式来防御XSS攻击。

相关推荐
不庸.15 小时前
WPScan 实战入门:从 Docker 靶场到弱密码爆破
运维·安全·web安全·docker·容器·安全性测试·wpscan
不庸.3 天前
theHarvester 入门教程:从装好到看懂输出
安全·web安全·网络安全·开源·安全性测试
FungLeo4 天前
成为全栈·基础补充·Web 安全基础:XSS、CSRF 与 SQL 注入
web安全·网络安全·xss·csrf·sql注入·成为全栈
0xBADCODE5 天前
2026 强网杯 Web 题 cwp · 全链路复盘
前端·安全·web安全·网络安全·系统安全·ctf
迪康Defender6 天前
终端供应链安全:应用白名单与软件正版化检测落地|终端安全治理实践
运维·服务器·网络·安全·web安全·自动化·运维开发
科技小登6 天前
出海高防CDN怎么选?CDN加速、边缘清洗与跨境回源POC指南
tcp/ip·web安全·ddos
是真的小外套7 天前
网络安全实战第21期:一次完整的注入风险验证与记录
安全·web安全
kingx37 天前
Bugku WEB 题解总集:文件包含 / SQLi / 反序列化 / SSTI / 反爬 / 组件漏洞
web安全·网络安全·ctf·bugku
CCIE-Yasuo8 天前
网络安全-Javascript基础
javascript·安全·web安全
是真的小外套8 天前
网络安全实战第17期:自动化检测误报漏报真相
安全·web安全·自动化